31 октября вышел очередной релиз проекта MediaDeb — сборки Debian для телефонов на базе СнК mediatek.
MediaDeb позволяет быстро собрать и запустить прошивку на базе Debian на старых телефонах, таким образом давая вторую жизнь старому аппарату в виде одноплатного компьютера/небольшого сервера, зачастую превосходящего по характеристикам Raspberry Pi.
Вышла первая версия MediaDeb — проекта по запуску Debian GNU/Linux на телефонах на базе СнК от Mediatek (без chroot, честная прошивка с Debian).
MediaDeb — это мой небольшой хобби-проект для «оживления» старых аппаратов, не получающих более апдейтов от производителя и пылившихся на полках все это время.
SkyForge — простой инструмент-обертка над multistrap, который позволяет быстро подготовить базовую корневую ФС Debian/Ubuntu. Может использоваться при подготовке прошивки для одноплатных компьютеров, создания базовых образов для контейнеров Docker, а также sysroot для кросс-компиляции.
Отличительная черта — поддержка снапшотов. SkyForge создает снапшот корневой фс на каждый шаг, описанный в конфигурационном файле. В случае изменения конфигурационного файла и последующей пересборки происходит откат и пересборка только тех шагов, которые затронуло внесенное изменение.
Для создания снапшотов используется файловая система OverlayFS или архивы tar.
P. S. Этот инструмент не является полноценной заменой puppet/chef: его можно использовать только для подготовки базового образа корневой фс на ранних этапах.
rf24boot — универсальный загрузчик кода в микроконтроллеры посредством беспроводного интерфейса nrf24l01.
В этой версии:
USB-стик для программирования:
Новый дизайн референсного железа (mega8, 16M кварц).
Сверхдешевый однослойный 5х5см дизайн.
Реализована аппаратная буферизация пакетов на отправку, прием/передача и передача теперь работают асинхронно
(т.е. теперь шьется быстрее, намного быстрее. Загрузка и верификация 28кб кода (цель: atmega328p + 8M RC clock) теперь занимает 23с вместо двух минут. Узкое место теперь скорость записи флеш памяти и скорость работы целевого устройства.)
rf24tool:
Вычищены все предупреждения компилятора.
Проведен рефакторинг. Теперь код выглядит почти читаемым!
Теперь можно реализовать несколько адаптеров (Пока только vusb, планируется так же spidev)
Улучшена производительность
Улучшения стабильности работы с далеко находящимися узлами
Теперь для rf24tool и загрузчика есть набор тестов.
В комплект опубликованного в исходных кодах ПО входят:
Ядро Linux версии 3.10.
Отладочный инструмент edcltool.
Исходные коды загрузчика mboot.
Утилиты для работы с VDU.
Конфигурация для crosstool-ng.
Сценарии для генерации образов debian и raspbian.
Примеры программ для Neuromatrix DSP.
Набор инструментов для Neuromatrix DSP (компилятор С/С++, ассемблер, документация).
Дальнейшие обновления ПО будут размещаться по мере появления на github-аккаунте ЗАО НТЦ «Модуль», туда же можно написать об обнаруженных проблемах или прислать свои патчи.
Библиотеки для работы с аппаратным декодером видео будут доступны немного позже в этом месяце.
rf24boot — открытый (GPLv2) загрузчик для микроконтроллеров, который позволяет обновлять микропрограмму «по воздуху».
Основные функции:
Поддержка произвольного количества разделов, каждый из которых может быть загрузочным (если это поддерживается МК).
Простой протокол: основная машина состояния занимает меньше 200 строк.
Переносимость: сделан на базе antares, потому может быть легко перенесен на другие архитектуры МК, которые поддерживаются этой системой сборки.
Простота настройки: все возможные параметры настраиваются через kconfig.
Небольшой Большой размер: Влезает в 4096 байт на архитектуре avr*.
В этой версии пока поддерживаются только 8-битные микроконтроллеры Atmel AVR (в которых есть поддержка функции bootloader и существует возможность задать секцию boot размером хотя бы 4096 байт). Поддержка STM32 будет добавлена сразу как только у автора появится время и необходимость сделать железку с stm32 и nrf24l01.
В виде usb-программатора пока используется OpenHardware проект uISP. В планах есть создание более быстрого usb-донгла на основе stm32.
*) 4096 байт это минимум, сколько я смог получить без серьезных последствий для читаемости кода и не прибивая все гвоздями к архитектуре avr.
После двух лет тихой, незаметной и неторопливой (очень) разработки вышел первый релиз Antares.
Antares — это открытая и свободная (GPLv2) реализация системы сборки и набор библиотечного кода, ориентированные на разработку под «голое железо».