Anda di halaman 1dari 4

Chunk structure:

(1) chunk header (128 bytes)

(1.1) main head
Byte 0-3: chunk id:
4-7: chunk length: real chunk data length
+ chunk header
length(128 bytes)
- main head len
gth(16 bytes)
the crc would check data from 16 bytes(N
O checking main head)
to chunk data end, checking length is ju
st the chunk length.
8-11: chunk offset: the total length of the chunk(incl
ude chunk header, chunk data)
12-15: chunk crc
Byte 16-31 (16 bytes): chunk name.
Byte 32-47 (16 bytes): chunk version.
Byte 48-63 (16 bytes): chunk date(create, modify, etc)
Byte 64- : reserved.
(2) chunk data
Version 4.01(for M3328C/28F)
Bug: choose eRom->1,2,3..., then cancel the sync dialog, system crash.
Fixed: cancel sync dialog would wait for some thread flag, but the thread
has been terminated by exit action. so we should judge the thread if NUL
Version 4.00(for M3328C/28F)
1. 28 solution support eRom upgrade 2M,8M
2. update the flashwr, to fixed that 4 led panel, the last
led would show when display 3 charters.
Version 3.99(for M3328C/28F)
1. Bug: when select eRom 1->1 dump flash data, if DO not choose
the Bin file(firmware file), the dump data size will be large(50 - 60M bytes).
Root cause: if DO not choose the bin file, the slave STB can not get the config
file from bin file, so slave STB will be reboot and run from bootloader and
communicate with host PC, but the communicate protocal is not same with the
flash_wr, so host get the wrong information for slave.
Fix: it must choose the bin file in eRom 1->1 dump mode.
2. merge code with M3602 upgreade.
Version 3.98a(for M3328C)
Cancel the slave STB connect checking in eRom 1->1,2,3 mode
Version 3.98(for M3328C)
1.change the NEXT button enable status:
when the operate mode is DATA DUMP or SERIAL FLASH DETECT,
if the DUMP FILE has the file name, the NEXT button can be
enable; otherwise, it is disable.
2. Use the slave block information to get the slave flash size,
if the master firmware size is large than the slave flash size,
popup box to warning.
Version 3.97(for M3328C)
1.Re-support eRom 1->1 upgrade/dump
flashwr also open the communicated protocol to support eRom 1->1
2.Disnable eRom 1->mul data dump.
3.Get dump size when call cmd_version command.
4.If the firmware structure of master and slave are different,
only support upgrade all code.
Version 3.96
Support detect serial flash type by upgrade tool.

Version 3.95
Upgrade tool for m3328c(m3328f) also support download config data to
slave ACT in eRom upgrade mode.
Version 3.92
Improve eRom 1->multi upgrade: Compress firmware file after sync with STB.
Improve eRom 1->multi pseudo burning progress looking according the size of firm
ware file.
Version 3.91
add Command_dump() function to get flash size to replace getting
flash size by flash type
Version 3.9
support different flashwr.abs(flashwr_all.abs and flashwr_mini.abs) for M3327E c
Version 3.8
Support 2M flash upgrade for M3101.
Version 3.7
(1) support eRom 1->multi flash data dumping( define SUPPORT_EROM_ONE2MUL_DUMP).
(2) it can enable if supports eRom 1->1 upgrade (define ENABLE_EROM_1_TO_1).
Version 3.6
(1) support M3101 chipset.(Wing chen)
(2) support serial port enumeration.(Wing chen)
(3) re-check the host block when press next button to start download.
Version 3.5
(1)enable eROM 1->1 upgrade mode again.
(2)support upgrade empty/crashed slave STB in eROM 1->1 mode.
(3)support dump data from empty/crashed slave STB in eROM 1->1 mode.
Version 3.4
(1)disable eROM 1->1 upgrade mode temporary.
(2)add slave STB flash data checking for eROM 1->1 upgrade mode,
if the STB flash data is crashed, do not support eROM 1->1 upgrade.
Version 3.3
(1) add complete returning error code of communicated commands.
(2) add more conditions to check the slave STB.
(3) modify a little about the download address for eRom upgrade
Version 3.2
continue perfecting the user interface and user operation,
fix a few bugs about the interface, for example: in flash data
dump mode, the all button are disable if do not choose
saved file to dump.
Version 3.1
perfect the user interface and user operation, support eRom flash data
dumping, set serial port stop bit to 1 in normal upgrade mode(the stop
bit of STB UART driver is 1), set stop bit to 2 in eRom upgrade mode
(the stop bit of eRom is 2), otherwise when use SendMassData() in eRom
upgrade mode the slave STB can not received correct data.
Version 3.0
we should support the S3327E eRom upgrade, add two upgrade modes: 1 to 1
STB and 1 to multiple STBs for eRom. In 1 to multiple mode, we will download
firmware bin file and flashwr.abs file to memory of slave STBs, then run
flashwr.abs, the programe will burn firware bin file to the flash of the
slave STBS. In 1 to 1 mode, we will only download flashwr.abs to slave STB,
and run it, then the PC master will upgrade STB by communicate with
flashwr.abs(extract command from bootloader) just like the traditional
upgrade mode.
Version 2.4
the former version of upgrade tool is use WriteFile() function to
download data byte and byte, when use usb2com device, the WriteFile()
may spend time to search the usb2com device, and the download speed is
slow. now add a new serial function SendMassData() to call WriteFile()
to send more bytes one time(1K), and the download speed is faster.
Version 2.3
when use some usb2com device, the transfer speed and response time may
slow, so change some deley time to make it can communicate smoothly.
but this version also can not solve the problem: when upgrade some chunk
(default db) and in burning stage, sometime the master can not reveive
the burning size, but in fact the slave has finish burned and reboot!
may the deferent band rate(the baud rate of usb2com device is low) result
in this issue.
Version 2.2
(1)when upgrade all code by compress mode, the function discard move chunk
comand, only transfer all code to STB once.
(2)allow the user cancel download without exiting the program.
Version 2.11
delete temporary files when exit programe.
Version 2.1
Bug: when the new bin file add more one chunk(section), at the end of transfer,
it will be fail and the progress bar display 0%. But the older versio
n(no zip
compress) is OK.
Fixed: when transfer all bin to STB by zip compress and the chunk is more than t
host(local), it return at once when finish(exit the loop).
Support zip compress transfer, so it can shorten the download time.
remove the STB type selecting combo box.
now the PC upgrade tool can upgrade bootloader and firmware tho STB,
and also can dump all flash data from STB.