Samsung TV's модернизация ПО/Прошивки, SamyGO, сборник мануалов
(Продолжение темы здесь)

Версия для печати (дайджест по поиску " ratti")

Конференция: Конференция iXBT.com (http://forum.ixbt.com/)
Форум: Домашний кинотеатр: ТV и проекторы (http://forum.ixbt.com/?id=62)
URL: http://forum.ixbt.com/topic.cgi?id=62:16777



3324. ratti, 22.04.2010 11:01
цитата:
andy127:
Захотелось настроить IPTV. Сделал tvBookmark.xml - немного показывает, качество среднее. У меня провайдер в тесте пустил IPTV multicast(качество как со спутника). Смотрю на компе через VLC- адрес ввожу в формате "udp://@233.166.172.65:1234" или через IPTV UDP proxy
"http://192.168.2.1:5050/udp/233.166.172.65:1234". Как мне это скормить 46b7020, в каком формате? Оба варианта не проходят. И поддерживает ли Samsung такое IPTV?

Попробуйте добавить в конце .../1.mpg(.ts/.avi/.wmv ...) в зависимости от свойств потока.
Напрямую по UDP наверное совсем не пойдет( только через UDP-прокси)
или попробуйте проключить телек как STB на роутере (нужен 2-й IP для провайдера??? ) если ПО в самсунге 7020 поддерживает multicast (Вопрос к тем кто копался в сборке?)

3327. ratti, 22.04.2010 13:44
цитата:
andy127:
цитата:
ratti:
цитата:
andy127:
Захотелось настроить IPTV. Сделал tvBookmark.xml - немного показывает, качество среднее. У меня провайдер в тесте пустил IPTV multicast(качество как со спутника). Смотрю на компе через VLC- адрес ввожу в формате "udp://@233.166.172.65:1234" или через IPTV UDP proxy
"http://192.168.2.1:5050/udp/233.166.172.65:1234". Как мне это скормить 46b7020, в каком формате? Оба варианта не проходят. И поддерживает ли Samsung такое IPTV?
Попробуйте добавить в конце .../1.mpg(.ts/.avi/.wmv ...) в зависимости от свойств потока.
Напрямую по UDP наверное совсем не пойдет( только через UDP-прокси)
или попробуйте проключить телек как STB на роутере (нужен 2-й IP для провайдера??? ) если ПО в самсунге 7020 поддерживает multicast (Вопрос к тем кто копался в сборке?)
Спасибо, вечером попробую. А как узнать свойства потока? А если подключить как STB, будет телек виден через телнети FTP?
В идеале, прикрутить бы к телеку плеер типа VLC!

при просмотре через VLC нажмите медиа/кодек информация
Насчет телнета; если попробуете, то и расскажите ...
Да VLC бы хорошо - эх, мечты-мечты

3329. ratti, 22.04.2010 14:09
цитата:
krapivchenko:
Ребята а что есть этот тулчейн и с чем его едят?
http://sourceforge.net/apps/phpbb/samygo/viewtopic.php?f=5&t=34

Тут что то говорилось в третьем посте о том что нашли, возможность подключать спутник к ТВ (ДВБ карту) или я не то что то понял ?
http://sourceforge.net/apps/phpbb/samygo/viewtopic.php?f=5&t=204

1-й - это чтобы компилить ARM exe-шники на Линуксе, я так думау...

5060. ratti, 01.07.2010 11:43
цитата:
gao_atc:
Perforator
Вас не дождался. Терпения не хватило!
Можете меня "поздравить". В полку любителей "черных квадратов" стало на одного больше.
Моргает красным глазом и все. Через source не прошивается.
Думал через ex-link откатиться - не вышло. После нажатия на кнопочку внутри ТВ, вылезает это:
код:

>> ONBOOT :: 0x59a50219 0x12821282
[SERIAL INPUT MANAGE] Managed tty_struct(.name:ttyS1) Setup!!!
[SERIAL INPUT MANAGE] disable_serial : ~~bye(len:5)
[SERIAL INPUT MANAGE] enable_serial : debug(len: 5)

[28_64_512] Linux version 2.6.18_SELP-ARM (ksh921@sp) (gcc version 4.2.0 20070514 (GPL2) (SELP 4.2.0-3.0.5.custom 2007-10-31(14:53))) #81 PREEMPT Mon Jun 22 10:10:31 KST 2009
================================================================================
SAMSUNG: v2.6.18_SELP_3.X_GA_bayhill+/A1(P24)
(Detailed Information: /sys/selp/vd/lspinfo/summary)
================================================================================
[SERIAL INPUT MANAGE] Managed tty_struct(.name:ttyS1) is freed !!!
[SERIAL INPUT MANAGE] Managed tty_struct(.name:ttyS1) Setup!!!
[SERIAL INPUT MANAGE] disable_serial : ~~bye(len:5)
[SERIAL INPUT MANAGE] enable_serial : debug(len: 5)

[SERIAL INPUT MANAGE] Managed tty_struct(.name:ttyS1) is freed !!!
[SERIAL INPUT MANAGE] Managed tty_struct(.name:ttyS1) Setup!!!
[SERIAL INPUT MANAGE] disable_serial : ~~bye(len:5)
[SERIAL INPUT MANAGE] enable_serial : debug(len: 5)

init started: SELP-BusyBox(GPL2) v1.2.2-Samsung.Common.Linux (2009.12.17-02:04+0000) multi-call binary
Starting pid 24, console /dev/ttyS1: '/etc/rcS'
/etc/rc.local start!!!!
boot script rc.local start!!!
=====================================================
ROOTFS VERSION : 28_64_512-30 T-CHL7DEUC
BOOT VERSION : 28_64_512-38
=====================================================
/mtd_rwarea/PartitionSwitch_1_0 is detected...
2nd Partition is selected...

----------- Kernel Loading End---------RFS-fs error: fill_inode[391] dir entry(0, 15) has corrupted start_clu(68747744)
---

Application is started..
Starting pid 45, console /dev/ttyS1: '/bin/sh'
-sh: id: not found
#

и все! На команды не реагирует. Вернее реагирует, но в виде непонятных символов на экране моего компьютера. Видимо с СЦ не разминуться.
==============================================================================
1) get yourself an Ex-Link serial cable to your TV

2) Go into the Service Menu ( quickly push [INFO] [MENU] [MUTE] [POWER] on your remote control )

3) Change setting for your RS232C interface to "debug" ( Control -> Sub Option -> RS-232 Jack -> [ Debug | UART | Logic ] )

4) use following connection parameters with your client ( e.g. Hyper Therminal or ZOC Terminal )
115200,8,n,1,off

5) Enter "debug" at the invsible prompt ... you should see something like below with each keystroke
[SERIAL INPUT MANAGE] 1-th ENABLE Magic serial input match!
...
[SERIAL INPUT MANAGE] 5-th ENABLE Magic serial input match!
[SERIAL INPUT MANAGE] serial input ENABLE!!!!!


6) Now you need to be fast ...
a) hit CTRL-C, which stops the exeDSP binary
b) immediately after that enter ( you have ca. 3 seconds ... I suggest you cut&paste this command )
/mtd_boot/MicomCtrl 23
This now prevents your LED/LCD to stop

7) enjoy your serial console

This will now also allow to enable telnet access on those devices, where we were not able to hack the FW due to it being OpenSSL encrypted.

5078. ratti, 01.07.2010 14:02
цитата:
gao_atc:
ratti
Благодарю за ответ!

Извините за мой "английский", но п.2 Вашей инструкции мой ТВ выполнить не в состоянии. Он просто не включается. А все, что он может делать в своем текущем состоянии я привел в предыдущем посте.
Как я этого от него добился:
1. Сделал кабель Ex-Link
2. Открыл корпус, впаял кнопку "debug". Самсунг, жадина, ее не поставил.
3. Запустил Hyper Therminal.
4. Нажал на кнопку "debug" и ТВ сказал все, что он обо мне думает.
5. Увидев в конце его речи заветную #, я ломанулся было оправдываться перед ним, но не тут-то было. Вместо моих команд на экране вылезали какие угодно символы, кроме тех, которые я изначально набирал.
6. Жму на "debug" еще пару раз, просто чтобы дать ему, это ТВ, выговориться, и себе развлечься, а он заладил одно и то же (Вы видели этот текст выше). Вот я его и выключил.


Постойте! Вы хотите сказать, что если я, после нажатия на кнопку "debug", за 1 секунду успею набрать на CTRL-C и, тут же, в течение 3 секунд введу /mtd_boot/MicomCtrl 23, то мы с Perforator можем безболезненно, для меня, еще пару раз грохнуть мой ТВ ради науки побеждать жадный Самсунг?
Благодарю за помощь, буду пробовать!

Эх, надо было спортом заниматься и английский в школе учить. Делайте ставки, господа, на то, с какого раза у меня это получится набрать. Шутка!


============================
наверное, основное добиться этого:

5) Enter "debug" at the invsible prompt ... you should see something like below with each keystroke
[SERIAL INPUT MANAGE] 1-th ENABLE Magic serial input match! <===== это ответ на каждую нажатую букву слова "debug" 5-символов - 5 откликов
...
[SERIAL INPUT MANAGE] 5-th ENABLE Magic serial input match!
[SERIAL INPUT MANAGE] serial input ENABLE!!!!!

5080. ratti, 01.07.2010 14:06
цитата:
Ovden:
gao_atc
Я пробовал этот алгоритм входа на своем LE40B750 . Ничего не вышло.
Сейчас курю исходники, так как все что можно встретить в инете не работает.
Начинаю всерьез посматривать в сторону JTAG.

Ждемс результатов Ваших экспериментов.

Вы опознали пины под JTAG на плате?

5104. ratti, 02.07.2010 11:21
цитата:
Perforator:
Я тут исходники кручу и прошивку сравниваю...
Оказывается uBoot может брать по tftp и nfs имаги и маунтить их.
В исходниках uboot с сайта самсунга
код:
ipaddress = 192.168.1.253
serverip = 192.168.1.1
rootpath = /nfsroot

а, если открыть HEX эдитором uBoot из прошивки к C550 - там проскакивает
код:
nfsroot=192.168.252.1:/tftpboot/rfs_selp_trident

Если учесть, что uBoot грузится до основной системы - и fail'ы всех обладателей чёрныйх квадратов - должно помочь всем, только надо раскопать информацию более подробную про этот процесс.
Вдруг, получится лечить телек по сети...
Но одного меня не хватит на эти раскопки, need help!

P.S.
Ovden, как у вас с JTAG ??



Добавление от 02.07.2010 02:23:

В подтверждение своим словам - нашёл тему по воскрешению на форуме SamyGO (http://sourceforge.net/apps/phpbb/samygo/viewtopic.php?f=1&t=277&start=30&hilit=tftp)



Добавление от 02.07.2010 02:41:

и вот, на WiKi SamyGO (http://sourceforge.net/apps/mediawiki/samygo/index.php?title=Getting_access_to_uBoot_/_bootloader) ...
Короче, пробуйте попасть в bootloader uBoot



Добавление от 02.07.2010 02:45:

В исходниках uboot это меню находится в /lib_arm/board.c



Добавление от 02.07.2010 02:58:

А здесь /common/main.c описывается поведение uBoot при запуске.
очень рекомендую к изучению (как к отправной точке по восстановлению телевизора)
....

====================

В u-boot определна константа
BOOTMODE_MAGIC 0xDEAD0000

и проверка на нее

if (post_hotkeys_pressed() && !(bootmode & POST_POWERTEST)) {
newword = BOOTMODE_MAGIC | POST_SLOWTEST;
} else if (bootmode == 0) {
newword = BOOTMODE_MAGIC | POST_POWERON;
} else if (bootmode == POST_POWERON || bootmode == POST_SLOWTEST) {
newword = BOOTMODE_MAGIC | POST_NORMAL;
} else {
/* Use old value */
newword = post_word_load () & ~POST_COLDBOOT;
}

if (bootmode == 0)
{
/* We are booting after power-on */
newword |= POST_COLDBOOT;
}

post_word_store (newword);

может ее как-то можно воспроизвести с клавы

Добавление от 02.07.2010 11:25:

post_hotkeys_pressed(gd_t *gd)

This routine will scan the keyboard to detect if a magic key
combination has been pressed, or otherwise detect if the
power-on long-running tests shall be executed or not ("normal"
versus "slow" test mode).

Но сорса самой процедуры что-то найти не могу

5110. ratti, 02.07.2010 13:31
цитата:
Ovden:
Perforator
JTAG для меня слишком кардинальное решение, поэтому я пока только читаю про него и не больше.


ratti
Я думаю, что этот волшебный ключ хранится в файле и может обновляться из прошивки когда мы прошиваемся стандартным образом. Иначе как объяснить что раньше то что описано в этом файле FIRMWARE_UPGRADE_WITH_UBOOT.txt работало, а сейчас нет.
4. In the status of unpluged power cable, push 'Shift' key and '~'key at the same time, then plug in power cable.
After 2 seconds later, press enter key. You can find uboot menu in serial message.

Считаю что надо искать файл. Исходники, которые мы изучаем, явно обрезаны. Отсутствие сорца post_hotkeys_pressed это подтверждает.

Я имею ввиду конфигурационный файл с параметрами который читается загрузчиком.
=====================================
На SamyGo пишут что надо держать '~' без шифта

Prior to boot-process

* Enter Service Menu ( quickly push [INFO] [MENU] [MUTE] [POWER] on your remote control )
* Change setting for your RS232C interface to "debug" ( Control -> Sub Option -> RS-232 Jack -> [ Debug | UART | Logic ] )
* Change setting for Watchdog to "off", so that the device doesn't reboot while you are in uBoot menu ( Control -> Sub Option -> Watchdog -> [ on | off ] ) <<<<<<<<<<<<<=======

During the boot-process

* Press and hold "~" <<<<<<<<<<<<<=======
* once you see "Hit any key to stop autoboot: ..." hit ENTER ( by default there is a booting delay of 2 seconds )

Now you should have a boot prompt as show below.

5113. ratti, 02.07.2010 13:51
OVDEN

Нашел в последней версии u-boot , подозрения оправдались : величина хот-кея зависит от типа борда
(т.е. может быть для разных самсунговских теликов разная)
/*
* Supply a default implementation for post_hotkeys_pressed() for boards
* without hotkey support. We always return 0 here, so that the
* long-running tests won't be started.
*
* Boards with hotkey support can override this weak default function
* by defining one in their board specific code.

*/
int __post_hotkeys_pressed(void)
{
return 0; /* No hotkeys supported */
}
int post_hotkeys_pressed(void)
__attribute__((weak, alias("__post_hotkeys_pressed")));


void post_bootmode_init (void)
{
int bootmode = post_bootmode_get (0);
int newword;

if (post_hotkeys_pressed() && !(bootmode & POST_POWERTEST)) {
newword = BOOTMODE_MAGIC | POST_SLOWTEST;
} else if (bootmode == 0) {
newword = BOOTMODE_MAGIC | POST_POWERON;
} else if (bootmode == POST_POWERON || bootmode == POST_SLOWTEST) {
newword = BOOTMODE_MAGIC | POST_NORMAL;
} else {
/* Use old value */
newword = post_word_load () & ~POST_COLDBOOT;
}



URL: http://forum.ixbt.com/topic.cgi?id=62:16777