Я готовлюсь к кругосветке на яхте.
Сегодня ухожу на катамаране через средиземное море.
Отчет, как всегда будет размещен на топе моего блога.
Увидимся через неделю.
пятница, 15 октября 2010 г.
HDX BD-1. Новая версия прошивки 4.22 rc3
Вчера появилась новая версия прошивки. Это еще release cadidate, поэтому некоторая функциональность, в основном связанная с локализацией, не работает.
Но то, что сделано уже очень даже неплохо.
А именно:
Улучшен вид главного экрана за счет повышения контраста иконок и надписей.
Внешняя USB или BT клавиатура работает во всех режимах: и в браузере, и в окне.
В разделе Internet появились новые пункты меню:
Скорость проводного интерфейса пока без изменений.
На скриншоте midnight commander, установленный в BD-1 копирует с ReadyNas Duo.
Я поставил, мне нравится
Как установить firmware
А именно:
Улучшен вид главного экрана за счет повышения контраста иконок и надписей.
Внешняя USB или BT клавиатура работает во всех режимах: и в браузере, и в окне.
В разделе Internet появились новые пункты меню:
- Online video - можно смотреть клипы Youtube
- Online music - пока заглушка в виде браузера уходящего на китайский сайт
Скорость проводного интерфейса пока без изменений.
На скриншоте midnight commander, установленный в BD-1 копирует с ReadyNas Duo.
Я поставил, мне нравится
Как установить firmware
Midnight Commander v 4.7.4-54 для HDX BD-1.
Эта статья устарела. Для установки используйте ipkg.
Собрал текущую версию Midnight Commander. Архив качать отсюда: mc-4.7.4-bd1.tar.gz
Инструкции по самостоятельной сборке здесь.
Устанавливать так:
sh-3.00# mv /opt /opt_org
sh-3.00# mkdir -p /HD_Media/hda3/.opt/opt
sh-3.00# ln -s /HD_Media/hda3/.opt/opt /
sh-3.00# ln -s /HD_Media/hda3/sybhttpd /opt
sh-3.00# cd /
sh-3.00# tar -xzvf /path-to-archive/mc-4.7.4-bd1.tar.gz
sh-3.00# cat >> "/persistfs/senv.sh" <<\EOF
> #!/bin/sh
>
> if [ ! -d /opt_org ]
> then
> mv /opt /opt_org
> ln -s /HD_Media/hda3/.opt/opt /
> fi
>
> export PATH=/opt/bin:$PATH
> export LD_LIBRARY_PATH=/opt/lib:$LD_LIBRARY_PATH
> alias mc="mc -c"
> EOF
sh-3.00# chmod +x /persistfs/senv.sh
sh-3.00#
Запускать так:
sh-3.00# source /persistfs/senv.sh
sh-3.00# mc
Собрал текущую версию Midnight Commander. Архив качать отсюда: mc-4.7.4-bd1.tar.gz
Инструкции по самостоятельной сборке здесь.
Устанавливать так:
Запускать так:
среда, 13 октября 2010 г.
HDX BD-1. Hack. порядок загрузки.
Все это еще находится на стадии исследования и отладки!
На диаграмме показан порядок запуска скриптов при старте HDX BD-1.
Все проверки на условия запуска для простоты опущены.
Идеологически правильно будет вставлять код запуска OptWare в скрипт run_mbox непосредственно перед вызовом /flash/netapp/run_netapp.sh &. Потому как установка окружения OptWare это более низкий уровень, нежели запуск приложений.
Но жесткий диск успевает смонтироваться только к концу скрипта
Скрипт run_mbox. Добавленный код окрашен коричневым цветом.
#!/bin/bash ulimit -s 2048 export LD_LIBRARY_PATH=/flash/lib:/flash/bdj/jvm/lib:/flash/bdj/bdj/lib:/flash/bdj:$LD_LIBRARY_PATH:/opt/lib export PATH=/flash/bdj/jvm/bin:/flash/bin:$PATH:/opt/bin export DFB_CONFIG_DIR=/flash/sample_config export CDROM_DEVICE_NAME="/dev/srsata0" export CDROM_MOUNT_POINT="/cdrom" export APPSTOREFS="/persistfs" export PERSISTFS="/persistfs" export BDJ_PROVIDER_DIR="/flash/bdj" export DCCHD_LOG_CFG="/flash/bdj/dcchdlog.cfg" export QT_INSTALL_DIR=/flash/qt cd /flash/bdj source bdj.env cd /flash export LLAD_PARAMS='max_dmapool_memory_size=0x800000 max_dmabuffer_log2_size=19' source run.env ./unload_imat.bash fw_reload_t3.bash cd /flash/qt source qt.env mkdir -p /home/iso/ #mkdir -p /home/robin/sigma/8643/sdk371/qt_SMP86xx_src_4.5.0-1.2/ #ln -s /flash/qt /home/robin/sigma/8643/sdk371/qt_SMP86xx_src_4.5.0-1.2/install mkdir -p /home/robin/sigma/8643/SMP8642-BDSDK-20100430/qt_SMP86xx_src_4.5.2-1.1/ ln -s /flash/qt /home/robin/sigma/8643/SMP8642-BDSDK-20100430/qt_SMP86xx_src_4.5.2-1.1/install ln -s /flash/qt/arora/Settings /Settings export QTWEBKIT_PLUGIN_PATH=/flash/qt/arora/plugins cd /flash/lib #mkdir /dev/usb #mknod /dev/usb/lmedev_usb c 180 201 #insmod lydev.ko insmod zhd_hdp.ko mknod /dev/zhd-hdp c 223 0 insmod zhdi2c_drv.ko mknod /dev/zhd_i2c c 221 0 mknod /dev/ir c 254 0 mknod /dev/fip c 253 0 mknod /dev/fipkernel c 250 0 insmod fipkernelzhd.ko mkdir -p /dev/mapper mknod /dev/mapper/loop0 b 254 0 insmod zhdbus.ko insmod dvb-core.ko insmod lgs8g52.ko insmod zhdsoftdvb.ko mkdir -p /dev/dvb/adapter0 mknod /dev/dvb/adapter0/demux0 c 212 0 mknod /dev/dvb/adapter0/dvr0 c 212 1 mknod /dev/dvb/adapter0/frontend0 c 212 3 mknod /dev/dvb/adapter0/net0 c 212 2 #/flash/bin/osdbuf_control -Ftc:32bpp -0 0 -1 255 -a 1 -cs rgb_0_255 -c1280x720 -no_disp #insmod em8xxxfb.ko videomemory=0x8ef72bac videomemorysize=3686400 palette=0x79000 mode=1280:720:32 mkdir /DVD_Media mkdir -p /NETPLAY_Media/UPNP/ mkdir -p /Web_Media/My_Browser mkdir -p /Web_Media/My_Music mkdir -p /Web_Media/My_Movie mkdir -p /Web_Media/My_Photo mkdir -p /Hdtv_Media/My_Hdtv cd /flash/bin ./irserver ./key_rc.conf ./fip.conf ./fip_gpio_lme.conf ./zhd_driver.conf & export HD_PATH=/HD_Media/ export ROM_PATH=/DVD_Media/ export WEB_PATH=/Web_Media/ export USB_PATH=/USB_Media/ export NETPLAY_PATH=/NETPLAY_Media/ fsck.ext3 -p /dev/sigmablock8;mount -t ext3 -o noatime /dev/sigmablock8 /mnt/ || (mkfs.ext3 -b 2048 /dev/sigmablock8; tar xjvf /flash/sigma.bin.tar -C /tmp/; dd of=/dev/sigmablock8 if=/tmp/sigma.bin; sync; mount -t ext3 -o noatime /dev/sigmablock8 /mnt/; rm -f /tmp/sigma.bin ) fsck.ext3 -p /dev/sigmablock9;mount -t ext3 -o noatime /dev/sigmablock9 /zhddata/ || (mkfs.ext3 -b 2048 /dev/sigmablock9; sync; mount -t ext3 -o noatime /dev/sigmablock9 /zhddata/; cp /flash/setting.cfg_org /zhddata/setting.cfg; sync ) mkdir -p /persistfs mount -o noatime /dev/sigmablock17 /persistfs mkdir -p /persistfs/bdj/buda mkdir -p /persistfs/bdj/ada ./httpdownload & ./frontpanel & #./set_outports -analog -asp 16 9 -f NTSC_M -component -f 720p59 -asp 16 9 -digital -f HDMI_720p59 -asp 16 9 -audio_engine 0 ./av_shell.sh & /flash/netapp/run_netapp.sh & sleep 5 for i in $( ps | grep av_shell | grep -v grep | cut -f 1 -d 'r' ); do /flash/bdj/mychpr -pid $i -prio 1 -sched 2; done ######################################################## # Setting /opt for OptWare if [ -e /HD_Media/hda3/.opt/opt/bin/optware_start.sh ] then /HD_Media/hda3/.opt/opt/bin/optware_start.sh fi ########################################################
В терминале создать на диске структуру каталогов /opt
#!/bin/bash # This for setup opt directory. Not needed for starting mkdir -p /HD_Media/hda3/.opt/opt mkdir -p /HD_Media/hda3/.opt/opt/bin mkdir -p /HD_Media/hda3/.opt/opt/libВ /HD_Media/hda3/.opt/opt/bin создать файл optware_start.sh с таким содержимым:
#!/bin/bash mv /opt /opt_org ln -s /HD_Media/hda3/.opt/opt /Теперь после загрузки BD-1 жесткий диск будет смонтирован в /opt и будут установлены соответствующие пути.
По результатам обновил OptWare project timeline
Полезные ссылки:
понедельник, 11 октября 2010 г.
HDX BD-1. OptWare project
В процессе работы мое понимание будет меняться. Данная статья тоже будет обновляться. На данном этапе мне видится так:
Если Вы хотите поучавствовать - всегда добро пожаловать.
Полезные ссылки:
Upd 13/10/10. обновлена timeline, поставлена отметка о начале портирования репо
Upd 15/10/10. Выполнена работа по созданию локального репозитория
Upd 24/10/10. Написан скрипт установки ipkg и инструкция по его использованию.
Upd 26/10/10. Произведена ревизия работ.
Спроектировать файловую систему
Громко сказано, для этого нужно всего-навсего- определить место на диске для хранения портированных программ, файлов конфигурации, библиотек и т.п.
- определить скрипты, в которые нужно внести изменения для запуска конфигурации файловой системы при старте устройства
- написать процедуры по
(автоматическому) изменению файла "HDX BD1 Firmware X.XX.zip"установке optware и ipkg на HDX BD-1
Проверить работу существующего репозитория для Asus WL500gP- http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/Packages
На Dune используют репозиторий, скомпилированный под роутер Asus WL500gP
И Asus, и Dune и HDX BD-1 сделаны на процессорах MIPSel.
В Asus установлен процессор BCM4704, в Dune 1 и Dune 2 - SMP8634 (MIPS32 version 1), а в HDX BD-1 и Dune 3 - SMP8642 (MIPS32 rel2 version 1).
В свое время я пытался запускать программы из репозитория WL500gP на HDX1000 (SMP8634). Некоторые запускались, некоторые давали ошибку типа "... overflow".
Полагаю, что на Dune 3 и HDX BD-1 репозиторий от Asus работать не будет. Нужно проверять.
Александр Александров (AVATARA) ответил, что для Dune 3 (8642) он использовал "костыль"в виде библиотеки загрузчика ld-uClibc.so.0
Для совместимости он установил пакет из репозитория WL500gP uclibc-opt_0.9.28-13_mipsel.ipk.
Поизучав немного, что сделал AVATARA меня терзают смутные сомнения в необходимости переходить к следующему пункту.
Оказалось, что портирование программ и библиотек не такой уж сложный процесс. Я за 3 дня упорной работы успешно спортировал два десятка программ. Если кто проявит желание установить и отладить uclibc - велкам. А я двинусь в сторону собственного репозитория.
- http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/Packages
Собрать систему установки дистрибутивов ipkg.
Во многих устройствах подобного класса применятся система управления дистрибутивами ipkg. Думаю, не стоит выдумывать ничего лишнего и нового. Она проверена и работает: В зависмости от результатов проверки возможности работы репозитория на HDX BD-1
потребуется пересобрать ipkg или использовать существующую.Написать инструкцию по сборке и установке пакетов.
Инструкции уже написаны:
Возможно их нужно будет адаптировать под этот проект. Спортировать репозиторий optware для mipsel r2, Sigma 864x
Определиться с местом хранения репозитория.
В зависмости от результатов проверки возможности работы репозитория на HDX BD-1
потребуется собирать новый репозиторий.
Нужно двигаться эволюционно:- Обеспечить совместимость с репозиторием от Asus WL500gP
- Начать портирование в репозиторий под Mipsel V2 Sigma 864x/865x
- Создать локальный репозиторий
- Разместить репозиторий на публичном хостинге
Если Вы хотите поучавствовать - всегда добро пожаловать.
Полезные ссылки:
- http://www.nslu2-linux.org/wiki/Optware/HomePage
- http://www.nslu2-linux.org/wiki/Optware/AddAPackageToOptware - Как добавиь свой пакет в optware
Похожие проекты
- http://forum.hdtv.ru - Dune: Установка Optware, а так же Midnight Commander, OpenSSH, Transmission...
- http://playonhd.ucoz.ru/ - Проект podware для медиаплееров на базе Realteck, предполагающий нативную компиляцию на плеере.
- http://www.azbox-enigma.eu/ - Enigma 2 - проект создания открытой прошивки для AzBox
- http://www.opentvix.com/ - OpenTViX is a community which aims on building a free environment for the tvix mediaplayer
- http://nmt200.ru/ - Оригинальный сайт поддержки оборудования Networked Media Tank. Автором разработана своя модификация прошивки, включающая в себя некоторое количество популярных linux программ.
Разное
- http://forum.ixbt.com/topic.cgi?id=62:16871-122 - сюда стоит смотреть только из любопытства, инструкции изобилуют ошибками, ну и срач по поводу авторства присутствует.
- http://www.dietpc.org/build.html - DIET-PC Component Compilation Notes. Замечания по компиляции программ для бездисковых станций
Upd 13/10/10. обновлена timeline, поставлена отметка о начале портирования репо
Upd 15/10/10. Выполнена работа по созданию локального репозитория
Upd 24/10/10. Написан скрипт установки ipkg и инструкция по его использованию.
Upd 26/10/10. Произведена ревизия работ.
Подписаться на:
Сообщения (Atom)