What's new
Firmware blobs for a USB device? That doesn't sound quite right, and if so that is very unique o.o

The whole point of USB was and is that it wouldn't require things like that. I haven't looked at the specs too much beyond 2.0, however back then it was just serial communication with a packet-based protocol wrapped around it.
From what I understand: the G540 contains a small FPGA and a bunch of buffers(IIRC). The main control is a 8051 compatible chip.
To program each device the windows client uploads a new program to the 8051. The open source client is basically designed around USB device captures, and I matched up the blobs from those captures to files in the installation directory. Though so far I was not able to disassemble those files. So I think they are obfuscated, probably to defend against other companies cloning the hardware. (unless I'm misunderstanding something, of course.)
I think there is a firmware update mechanism, disassembling the firmware would help me to understand the protocol used, and how to control the programming hardware. Though so far I haven't found a lot.
So the goal would be to write a driver that supports wcid, so on windows it can be controlled with WinUSB/libusb without a signed driver, and have a more usable open source client.

The windows client is written with MFC, which Ghidra seems to have some problem with. I haven't spent more than a few hours on it, though.
 
Ahhhhh. That makes sense then.
That does seems like a weird way to do it. Some of the reason must be for obfuscation purposes, like you said.
Though I do imagine having a dedicated microprocessor and FPGA doing a lot of the work speeds things up considerably.
Sounds similar to something that a particular network equipment vendor that starts with a C would think up. :P
 
Ahhhhh. That makes sense then.
That does seems like a weird way to do it. Some of the reason must be for obfuscation purposes, like you said.
Though I do imagine having a dedicated microprocessor and FPGA doing a lot of the work speeds things up considerably.
Sounds similar to something that a particular network equipment vendor that starts with a C would think up. :P
There are also RAM based microcontrollers, so the ROM just contains a boot loader, and the windows driver needs to upload the firmware before it is recognised as a proper device.
 
Just swap the pins. That’s what I did on mine. I soldered leads to the solder points of the socket for those 2 pins that are swapped and then just lift the 2 pins on the eprom and clip on the leads then program.
 
Just swap the pins. That’s what I did on mine. I soldered leads to the solder points of the socket for those 2 pins that are swapped and then just lift the 2 pins on the eprom and clip on the leads then program.
I purchased parts to do your method sir, but in the meantime this solution with adapter shows up and was ok for me ✌🏻In any rate , your method is awesome too🙏🏻
 
Yes please, I would like to try the latest also..

Having issues with a bunch of TC51832SPL (256Kb sram) which I dont know if they all are faulty, or if the programmers test isnt compatible with these ones..
regular narrow xx65256 tests fine but these all give "error at:0000"..

They all give me "databus faulty" in my TL866A, but that one also gives the same error with my known working 65256 sram :/
 
Yes please, I would like to try the latest also..

Having issues with a bunch of TC51832SPL (256Kb sram) which I dont know if they all are faulty, or if the programmers test isnt compatible with these ones..
regular narrow xx65256 tests fine but these all give "error at:0000"..

They all give me "databus faulty" in my TL866A, but that one also gives the same error with my known working 65256 sram :/
yes , noticed this issue too .... tried alot of chips yesterday and got that error ...

i selected the chip model , i also did a trick (blank , read all and then verifying) and i write the chips (what was writen in chip i saved and then i compared with the file that was writed on chip ... matching 100%)

this thing is when i select a chip and i hit "verify" ! i don't know why
 

Attachments

  • 280648220_577604440456166_4556939170585636101_n.jpg
    280648220_577604440456166_4556939170585636101_n.jpg
    111.4 KB · Views: 110
  • 281523599_420522559909848_2870087070493970706_n.jpg
    281523599_420522559909848_2870087070493970706_n.jpg
    87.1 KB · Views: 116
Could you please upload the new one from 2 aug 2022?
=munged for malware concerns=

Would be awesomely kind of you!
I tried to grab this to put it on my own server, but don't have a baidu account (hadn't stopped me in the past).

Happy to re-host the file if someone grabs it.
 
Last edited:
I tried to grab this to put it on my own server, but don't have a baidu account (hadn't stopped me in the past).

Happy to re-host the file if someone grabs it.

I asked around and a friend helped me out It's here *** EDIT LINK REMOVED ***
I didn't scan this for viri whatsoever.
 
Last edited:
Back
Top