Products > Test Equipment
Siglent .ads firmware file format
janekivi:
I can make the same trick here like when I was uploading LeCroy in to SDG1025
but who can try this and there may be the same check routine and instrument
will say "Not supported firmware, please reflash correct. Otherwise I will wait 15 min".
This is stupid, it will wait that time anyway before you can access flash menu...
So... do not be the first who is using this firmware file on SPD3303X-E
but this first hack may be needed to be tried out by someone.
SPD3303X-V100R001B01D02P03_with _E_header.zip
OK, I give this only individually after request. I can't test it.
janekivi:
--- Quote from: janekivi on November 09, 2016, 06:49:27 pm ---New SDS ads viewer utility v0.1.2 can get that app saved straight from opened firmware file or from
one of extracted files (part 5) with dedicated tools menu. Deflating can be done for example with offzip.
Only help at this time comes only from ToolTipTexts when staying on menu items...
-------------------------------------------------------------
Windows NET 3.5 C# application (WinXP, Win7...)
--- End quote ---
Version 0.1.3 has some minor fixes and help file which is full of all kind of strange text.
What you gonna do, I can't write in normal english...
-------------------------------------------------------------
In help file is updated SDS file format description, which is not so relevant
-------------------------------------------------------------
Maybe part version end in header is space and next crap is leftover from something old,
so version 0.1.4 displays that table differently now.
tv84:
Hi janekivi ,
I've been doing some research on Siglent .ADS files, trying to parse every single file that they have.
I've managed to understand most of the files packing, as you have done, including parsing the Blackfin BF54x and BF53x blocks in order to load them more easily in IDA. I've not analysed uBoot, ELF files. I let that to the Linux guys.
I have been doing it in C# (console). Once I have it more bullet-proof i'm thinking in releasing a compiled version so that people can unpack the files.
(I'm not sure if you have found it yet, but the 1st byte in your "5-byte type of blocks counter" is the last byte of the previous block. So, the blocks start (usually) with the 0x18 + 3 bytes + n (0x18) data bytes + last byte (which is the checksum of the whole block, including header). The checksum is the usual "- Sum of all bytes".
This 5th block in the SDS files is the only understandable to me. Do you know what are the other blocks for?
janekivi:
I don't understand almost anything in ads files, only taking it apart and looking into everything.
Linux is not my thing and in IDA I don't recognize much. Also I was looking into
ro_uImage, rw_uImage - partly packed
datafs.img, firmdata0.img - UBI images
and with GIMP or IrfanView I scan all files for graphics.
In SDS files it is 8-bit Checksum indeed. I may recompile my SDS viewer. But I was cutting out
right part anyway because unpacked checksum matches. Unpacker part in the beginning of
the 5th part is the same as in SDG1000 file. Part 1 is most likely help. Parts 2, 3, 4 almost the
same as FPGA file LcdFpga.bin from SSA3000X. I mean beginning and especially look at the end.
Who knows... maybe version numbers in the beginning can help if somebody can see them in
scope menu. Like 3.1.1.13, 2.1.1.8, 2.1.1.9
I have only SDG2000X and SDG1000 actually.
(Of course Flir E4 and Rigol DS1054Z too for other threads :))
tv84:
Yes, the beginning of the 5th part is similar to the SDG1000 but the Blackfin processor is a BF54x and, as such, has a totally diferent way of decoding (relative to the BF53x of the SGD1000).
OK, so now you've turned to the files inside the ZIPs. I'll be trying those also to see if anything comes up. I've also implemented many graphic detectors in my programs GIF / JPEG / MPEG / etc that work even if there are no (usual) magic numbers.
I also have a Rigol scope so might have a look at that.
I've also developed a deflate scanner that can detect zlib/gzip streams without proper headers and crc/adler, and sometimes becomes useful for dealing with this type of compression in stripped fw. I think there's notinhg around that is able to do this.
The goal is: as usual, just for fun.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version