Все файлы, кроме инструментария, можно найти в разделе
Для создания модифицированных прошивок в OpenWRT предусмотрен механизм профилей. В профиле можно указать, какие модули и какие дополнительные файлы включить в сборку. Профайл находится в каталоге OpenWrt-ImageBuilder-brcm47xx-for-Linux-i686/target/linux/brcm47xx/profiles. Для сборки прошивки он должен быть положен в аналогичное место внутри дерева файлов OpenWRT Image Builder.
Профайл содержит в себе программу опроса джойстиков (input-multiple-events), простейшую конфигурацию сети, несколько утилит.
Так же архив проекта содержит пропатченное ядро. В нем бинарным редактором переставлено направление консоли console=null, а не в console=ttyS0, чтобы системе не передавала консольный вывод в UART.
На основе программы input-events написана программа input-multiple-events. В качестве аргументов она принимает номера устройств /dev/eventN, где N=0...9. Программа опрашивает все указанные устройства и на каждое событие выводит в stdout строку в формате
NXXYYZZTTBB\n
где N - номер устройства (0..9),
XX, YY, ZZ - координаты по осям в шестнадцатиричном формате (00...FF)
TT - газ (throttle) шестнадцатиричном формате (00...FF)
BB - битовая карта для 8 кнопок джойстика в шестнадцатиричном формате (01 - TRIGGER, 02-THUMB и т.д.)
Исходный код программы находится в архиве cyberzone-multijoystic-src-0.1.tar.bz2
Прошивка содержит следующую конфигурацию:
- /etc/inittab - файл конфигурации консолей. Согласно нему, /dev/ttyS0 и /dev/ttyS1 (1й и 2й UART) не считаются консольными устройствами, ОС игнорирует приходящие оттуда данные
- /etc/config/network - wifi выключен, все LAN порты объединены, имеют статический IP адрес 192.168.0.1/255.255.255.0
- /etc/passwd, /etc/shadow - пароль root - 123
- /etc/rc.local - на порту /dev/ttyS0 выставляется скорость 115200 бит/с; запускается программа input-multiple-events для устройств 0, 1 и 2;
Описана здесь:
http://wiki.openwrt.org/doc/howto/obtain.firmware.generate