Page 1 of 1

Firmware Revert Tryout on B550

Posted: Fri Aug 13, 2010 12:13 pm
by frmys
I have a B550 tv with 2009 firmware. I have tried something strange and i want to share this with you all.

I have downloaded firmware 2010.1 and i have extracted it into an usb flash disk. I will call it USB2010.1
I also have firmware 2008 and i have also extracted the firmware into an other usb flash disk. I will call it USB2008

I have plugged USB2010.1 to tv and choosed Firmware Upgrade from menu. Tv has found the new firmware and asked " do you want to upgrade 2009 fimware to 2010.1 firmware? Ok - Cancel". In this state i have unplugged USB2010.1 and plugged USB2008 and pressed ok. Tv has started to upload the firmware upto 45% and give an error that it can not continue.

Exe.img= 12,8 mb, Appdata= 15,7 mb , tolat makes 28,5 and 12,8/28,5 makes 45%. I think tv has uploaded exe.img and executed a check routine and did not want to continue.

IMO this trick can be improved and used to upload 2008 firmware. Maybe a hybrid firmware of 2008 and 2010.1 based on 2008 which enables samygo and movie playback :idea:

Links to the firmwares :

2008: http://downloadcenter.samsung.com/conte ... L5DEUC.exe
2010: http://downloadcenter.samsung.com/conte ... L5DEUC.exe

Re: Firmware Revert Tryout on B550

Posted: Fri Aug 13, 2010 11:33 pm
by erdem_ua
Himm. It's really, really dangerous way to revert it back.
Do you have ExLink cable?
You might be check whats happening actually in the TV via debug output...

Re: Firmware Revert Tryout on B550

Posted: Mon Aug 16, 2010 12:01 pm
by frmys
I have prepared & used exlink cable as described in wiki page. This is the log file during upgrame process
After I swap USB2010.1 with USB2008 , I get this message

Code: Select all

MESSAGE_USB_CONNECTED  
&&&&&&&&&&&&&&&&& USB node ID = 0
==> Add Partition (0, 0, USB Flash Drive)
>>>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
The Size of USB Device List (App) = 1
        Device Type = MSC Device
        Device ID = 0
        Device model = USB Flash Drive
        Device vendor = USB 2.0
                Partition ID = 0
                Partition Path = /dtv/usb/sda1
                Partition FS = vfat
                Partition Serial = AA20000000000068
                Partition Devpath = 1
                Partition Lun = 0
                Capacity = [58880/2019428]
                Storage ID = 0x0
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@<<<


[umount /mtd_exe]
umount: Couldn't umount /mtd_exe: Device or resource busy
[ferase /dev/bml0/10]
All of the flash memory blocks have been erased successfully.
[ffdisk /dev/bml0/10]
STL-level formatting has been done successfully. 
After here the update is stopped at 45% ! Next is the error code that i receive.

Code: Select all

##### [CTaskManager::ActivateApplication][INFO] {callthread = 1712989328, from =
 46, app = 52 , cApp = 46, bActivateTVViewer = 0, pActiveData = 0x0, pDeactiveDa
ta = 0x0} ####

        >>[ERR:TDsChelseaScaler.cpp] SetMute():1226 [0]Not Connected...


~~[Sub System Error] SsWindowBase.cpp:t_HandleVideoMute():6671  - TD ERROR [0x80
000100] !!!



        >>[ERR:TDsChelseaScaler.cpp] SetMonitorOutMute():1288 [0]Not Connected..
.


~~[Sub System Error] SsWindowBase.cpp:t_HandleVideoMute():6672  - TD ERROR [0x80
000100] !!!



        >>[ERR:TDsChelseaScaler.cpp] SetBackground():1672 [0]Not Connected...


~~[Sub System Error] SsWindowBase.cpp:SetBackgroundColor():5774  - TD ERROR [0x8
0000100] !!!



        >>[ERR:TDsChelseaScaler.cpp] SetMute():1226 [0]Not Connected...


~~[Sub System Error] SsWindowBase.cpp:t_HandleVideoMute():6671  - TD ERROR [0x80
000100] !!!



        >>[ERR:TDsChelseaScaler.cpp] SetMonitorOutMute():1288 [0]Not Connected..
.


~~[Sub System Error] SsWindowBase.cpp:t_HandleVideoMute():6672  - TD ERROR [0x80
000100] !!!



        >>[ERR:TDsChelseaScaler.cpp] SetBackground():1672 [0]Not Connected...


~~[Sub System Error] SsWindowBase.cpp:SetBackgroundColor():5774  - TD ERROR [0x8
0000100] !!!



~~[Sub System Error] SsEventListBase.cpp:t_DeleteList():259 Not Found Event...


~~[Sub System Error] SsEventListBase.cpp:SetEvent():115 Event Control Error... H
al 2, Id 43, EventType 5, SourceHandle 0


        >>[ERR:MonThread.cpp] Destroy():91 Aleady Destroy...


~~[Sub System Error] ChannelLockMonitor.cpp:Destroy():81 M_Lock Async


        >>[ERR:MonThread.cpp] Destroy():91 Aleady Destroy...


        >>[ERR:TDiAnalogVideoProcessor.cpp] GetResolutionMonitorFilterTime():301
 Null Fuction Call !!!Must Check Implementation Code...

DP_CPU_BLACK_CONTROL OFF
m_bOSDDisplay:1, m_bDynamicControlStatus:0, m_bSignalActivity:0, iSourceMode:902
, ResInfo.IsPC:0

        >>[ERR:MonThread.cpp] Create():63 Aleady Create...


~~[Sub System Error] ScartTypeControlMonitor.cpp:Create():64 Is Not Scart 1 Sour
ce  current Source = SOURCE_TYPE_SCART2

Source : 2306  Window Type : 0  Back End Decoder Type : 4

        >>[ERR:TDsChelseaScaler.cpp] SetZorder():1418 It failed in setting z-ord
er(1)!!!


        >>[ERR:TDsChelseaAudioProcessor.cpp] t_ConvertSoundSystemTDToSDAL():1791
 Not Support TD Sound System Type !! Sound System Type : 0

SPI_ERROR[0xffb] = spISif_InitStd(m_hSif, &sSifConfig)
SPI_ASSERT<561> - spISif_InitStd(m_hSif, &sSifConfig)
        >>[ChelseaShare] t_GetExtInSourceToPort: Error Source To Port Set Contro
l Error    eSource = 0x101, Port = 3  !!!!!!!!!!!!!!!!!!!!!
[ERROR][SdVideo_Connect():455] Parameter Range Error !!

        >>[ERR:TDsChelseaScaler.cpp] Connect():498 1.It failed in connecting a s
caler with a input source(0x101)!!!


~~[Sub System Error] SourceControl.cpp:Connect():280  - TD ERROR [0x80000000] !!
!



        >>[ERR:TDiAnalogVideoProcessor.cpp] GetResolutionMonitorFilterTime():301
 Null Fuction Call !!!Must Check Implementation Code...

Source : 257  Window Type : 0  Back End Decoder Type : 4

        >>[ERR:TDsChelseaAudioProcessor.cpp] SetScartSound():674  - SDAL ERROR [
-1] !!!


~~[Sub System Error] SsWindowBase.cpp:Connect():397  - TD ERROR [0x80000000] !!!




~~[Sub System Error] SsWindowBase.cpp:GetConnectedWindow():936 not available sou
nd ID, so set to default to Speaker


~~[Sub System Error] SsEventListBase.cpp:SendEvent():150 Not Register Event, wha
tHal 2, id 36, eventType 12


~~[Sub System Error] ResolutionMonitor.cpp:t_SendColorSystemEvent():952 t_SendCo
lorSystemEvent...Error


        >>[ERR:TDsChelseaScaler.cpp] SetBackground():1680  - SDAL ERROR [-3] !!!



        >>[ERR:TDsChelseaScaler.cpp] SetBackground():1706 It failed in setting a
 video background color!!! (0, 0, 0)


~~[Sub System Error] SsWindowBase.cpp:SetBackgroundColor():5774  - TD ERROR [0x8
0000000] !!!


DP_CPU_BLACK_CONTROL OFF
m_bOSDDisplay:1, m_bDynamicControlStatus:0, m_bSignalActivity:0, iSourceMode:902
, ResInfo.IsPC:0
??????????????????t_MFI_VrateSet [0]??????????????????????????????

 SET 50 Hz m_VideoSetting.sScaleData.frameRate = 50000

        >>[ERR:TDiAnalogVideoProcessor.cpp] GetResolutionMonitorFilterTime():301
 Null Fuction Call !!!Must Check Implementation Code...


        >>[ERR:TDsChelseaScaler.cpp] SetBackground():1680  - SDAL ERROR [-3] !!!



        >>[ERR:TDsChelseaScaler.cpp] SetBackground():1706 It failed in setting a
 video background color!!! (0, 0, 0)


~~[Sub System Error] SsWindowBase.cpp:SetBackgroundColor():5774  - TD ERROR [0x8
0000000] !!!
Tv is now back to upgrade menu.

Re: Firmware Revert Tryout on B550

Posted: Tue Aug 17, 2010 12:29 am
by erdem_ua
I don't understand much from your debug log. There is too much errors :)
Anyway, you looking like CI device owner. I think you can flash your firmware by hand.
BUT I strongly advice you to update your u-boot partition. With it you can externally boot firmwares than on usb flash devices!
This will precious if you make some mistake on flashing process.
I think u-boot for B550 has some problems due there is no PCI port in it and also ethernet. It needed to be changed little bit. But you can find information on forum. I don't know if you can compile u-boot for your device from SamyGO open embedded svn that created by aquadran...
You can also update your device by hand without u-boot code. But it's little risky and you know what happens if anything goes wrong (like power failure while you upgrading flash might have catastrophic results on your TV )

Re: Firmware Revert Tryout on B550

Posted: Tue Aug 17, 2010 10:32 pm
by frmys
Yes , correct. I have CI device with T-CHL5DEUC firmware. I have UPS and i can use it for uninterrupted firmware upgrade against power failure. Is there other ways that i should try? All kind of advice is highly appreciated. I think that the debug code is not valid or disabled by 2009 firmware. Do you know the new numbers for 1198282? Can this number be accessed from the exe.img by means of "software debugging" by a linux software cracker?

For B550 owners can it be possible to make a wiki for usb booting and firmware revert process ? There is a wiki but for B7000 series and too much complicated for ordinary users.

P.S. : Some linux releases have a small bootmaker.exe and an image file . You just insert the media , in old times it was floppy disk now harddisk or usb flash disk and the bootmaker.exe makes partitions and copies necessery files and makes the boot sector and a bootable media is ready. The tv can be booted with this usb flash disc easly. This whole operation can be completed by with little to normal computer skills.

Could it be possible that you or Aquadran prepare such an easy and great tool? For overcoming copyright problems there can only be a bootmaker.exe and a script or autobat batch etc in a zip file that is distributed by you and the users can only put their firmware exe.img or appdata.img in the same folder and start the bootable usb preperation.

Re: Firmware Revert Tryout on B550

Posted: Wed Aug 18, 2010 2:36 am
by erdem_ua
Firstly I don't know if there is new numbers for 1198282... I think it's not possible because samsung removed whole debug menu as I remember...

I think it's same for B550 devices too. But B550's needed to have patched uboot code to externally booting. Users know the whole story, I wish they will put comments for wiki page soon.

For bootloader.exe like utilities,
They don't work on this TV, because in PC, the bios support booting from CDROM or USB device automatically...
But this TV's bootloader (AFAIK) doesn't support such a thing. You needed to boot with hand if you want it.
You could also change bootloader parameters to boot externally every time, or you needed to implement that feature you wanted to have :)