Глубокость колена во светодиодах: хакеры получают акцию бежать на смарт-ламп Ikea

Глубокость колена во светодиодах: хакеры получают акцию бежать на смарт-ламп Ikea

Группа хакеров взялась на обречении и работает на необычной платформе: смарт-лампочка IKEA. Группа записала свой проект по следующему взлому и поделилась деталям реализации.

Эта группа решила воспользоваться DOOM, бегающим на нижней платформе и установила конкретные правила для себя в том, что бы и не было бы приемлемым. Устройство должно иметь разумную вычислительную мощность относительно оригинальных требований DOOM. Команда ссылается на 486-33, хотя я могу сказать вам от личного опыта, вы можете сыграть его с скромным просмотром Frustum на оборудовании, так и слабым, как 80386SX-16. Только микроконтроллер внутри выбранного устройства можно использовать для запуска игры. Добавление небольшого цветного дисплея и дополнительная флэш-память для хранения файлов была приемлемой. Минимальная цель состояла в том, чтобы воспроизвести E1M1, иначе известный как первый уровень «колена в мертве».

Команда изначально планировала развернуть лампу Ikea Trådefri. Хотя скромный 40 МГц Cortex M4 был достаточно мощным, чип только имел 32 КБ оперативной памяти. Это было считалось невозможным. Затем, через несколько месяцев IKEA обновился с новой моделью. Эти новые лампы показали 80 МГц Cortex-M33 и 108KB RAM в общей сложности с 1 МБ NAND Flash. Команда также прикрепила дополнительную 8 МБ NAND Flash.

Развитие было обработано на сравнительно мощной Cortex-M7. STM-чип, который они использовали, STM32H743, имеет память спущенной памятью QSPI (Quad Serial Parallel Interface) Nand Flash Chip, позволяя команде относиться к нему в качестве вспышки памяти.

Команда шаги по оптимизации, которые она сделала, чтобы воспользоваться DOOM, запущенной под 108 кБ ОЗУ, в отличие от 160 КБ +, они оценивают, это требует по умолчанию. Они сохранили значительное количество памяти, преобразуя типы данных - Doom используют 32-битные целые числа в некоторых случаях, где требовались только 8 или 16 битов. В нескольких случаях они взяли данные, которые были первоначально хранятся в ОЗУ и переместили его в Nand Flash, чтобы освободить достаточно емкости, чтобы впустить игру в первую очередь. Они даже оптимизировали буфер памяти для экономии 5КБ ОЗУ. Одно интересное, что их тестирование показало: производительность, даже на умной лампочке, определяется больше скоростью доступа к памяти флэш-памяти, чем по скорости CPU.

Но даже после всего этого команда возникла проблема: скорости передачи данных на STM32H743 были достаточно быстрыми, но EFR32MG21 они работали с внутренней частью Smart Smart Pulb, не поддерживали одинаковый высокоскоростной (относительно) интерфейс. Их начальная пропускная способность хранения была ограничена 2,5 Мбит / с, пока они не разогнали чип до 80 МГц. Что улучшена пропускная способность до 5 МБ / с. Я позволю им объяснить, как они снова удвоили это:

EFR32MG21 имеет три USAPTS. Один O TEM используется для печати сообщений отладки и загрузка файла WAD на внешнюю вспышку. У нас осталось два усарта ... и периферическая рефлекторная система! С этими двумя мы можем синхронизировать два USAPTS (работающих в режиме SPI), чтобы они одновременно читали данные, на самом деле создающие двойные SPI (DSPI). К счастью, память QSPI также поддерживает двойную прочитанную, и таким образом, мы можем достичь 10 МБ / с!

История продолжается, чтобы описать, как они сохраняли два SPIS синхронизированных и дополнительную работу, которую команда сделала, чтобы получить звук, работающую и играющую в игру ультра насилия, не выходя из оперативной памяти. Есть также пошаговые инструкции для создания устройства. Общая производительность и качество изображения лучше, чем версия GBA. Группа указывает на то, что 16,7 МГц ARM7TDMI GBA был способен только 0,9 DMIPS / MHZ, а CM33 достигает ~ 1.5DMIPS / MHZ и работает на 80 МГц. Команда не выполнена оптимизированной гибелью для их уменьшенной платформы, и они планируют улучшить работу, так и использование RAM в ближайшие дни.

Читать далее

Как работает USB зарядки или как избежать взрыва вашего телефона
Как работает USB зарядки или как избежать взрыва вашего телефона

Если вы берете телефон, пришел с настенным зарядным устройством 900 мА и подключите его в зарядное устройство для iPad 2100ma, он взорвется?

Spacex, знак НАСА знак, чтобы избежать космических столкновений
Spacex, знак НАСА знак, чтобы избежать космических столкновений

SpaceX Noe имеет более 1000 узлов Starlink вокруг Земли, и NASA объявила о договоренности, которое гарантирует, что эти спутники не получают никакой из его миссий.

Raptor raptor raptor raptor озеро Raptor Raptor по слухам, чтобы бежать в 5,8 ГГц
Raptor raptor raptor raptor озеро Raptor Raptor по слухам, чтобы бежать в 5,8 ГГц

По слухам, по слухам, делать то, что Intel лучше всего наилучшим образом с озером Raptor: Chranking Clock Speeds на Луну.

Еще одна звезда может избежать солнечной системы 70 000 лет назад
Еще одна звезда может избежать солнечной системы 70 000 лет назад

Наша солнечная система имеет только одну звезду, но теперь у астрономов есть все основания думать, что вторая звезда посетила нас около 70 000 лет назад.