07.02.2021, 04:33, "Pičugins Arsenijs" <crim...@yandex.ru>: > 12.01.2021, 11:42, "Kevin Grant" <elect...@mykolab.com>: >> Fausto >> >> If you can't read the device, writing won't work either. I think there is >> still some addressing problem. >> >> A search with your package manager or internet search might help you find a >> binary editor. >> >> Alternatively, a few lines of python could make a binary file for you: >> >> import os >> filename = os.path.join(os.path.dirname(__file__), "eeprom-new.bin") >> with open(filename,'wb') as f: >> f.write(bytearray([0xc0,0x50,0x1d,0x8d,0x60])) >> >> Then write the new data with >> >> fx2tool -B -d 16c0:296d write_eeprom -W 2 -a 0 -f ./eeprom-new.bin > > I finally found my Geetech board and decided to try it out. Had to replace > its USB port > because it was shorted out for some reason, that's why it took so long =D It > read back all ff's, too. > Tried your Python file generator, it generated a .bin file, checked with xxd > that it has the right > contents. > > 00000000: c050 1d8d 60 > > However, writing it with fx2tool -B -d 04b4:8613 write_eeprom -W 2 -a 0 -f > ./eeprom-new.bin > and then reading back the EEPROM contents, nothing changes - ff's stay and > VID/PID are > the same. I've finally found how to "write" it - unplug J2, power the board > up and then write. > Then, the hexfile contents seem to actually change the EEPROM. However, you > can't read > with J2 unplugged, you need to plug it back - only then you'll see your > changes apply. > Aaaaand it doesn't change the VID/PID, even though it looks like this: > > 00 c0 c0 16 6d 29 00 00 00 ff ff ff ff ff ff ff > > I took my other Saleae LA, a $5 8ch one that actually works, here's how its > first 16 bytes look: > > c0 25 09 81 38 01 00 00 28 94 07 dd 49 d8 61 a6 > > Here's a Python script I wrote that takes this line of text and generates an > EEPROM: > > s = "c0 25 09 81 38 01 00 00 28 94 07 dd 49 d8 61 a6" > > b = [int("0x"+c, 16) for c in s.split(" ") if c] > print(b) > > filename = "eeprom_8chla_copy.bin" > with open(filename,'wb') as f: > f.write(bytearray(b)) > > After flashing my LA with the resulting file, still removing the jumper for > flashing: > > fx2tool -B -d 04b4:8613 write_eeprom -W 2 -a 0 -f ./eeprom_8chla_copy.bin > > It identifies just like my other analyzer which I copied the EEPROM from: > > Bus 001 Device 078: ID 0925:3881 Lakeview Research Saleae Logic > > I hope this is useful in some way.
Oh, also, it only identifies as Saleae Logic when the jumper is removed - with J2 on, it identifies like before: Bus 001 Device 084: ID 04b4:8613 Cypress Semiconductor Corp. CY7C68013 EZ-USB FX2 USB 2.0 Development Kit Gotta use the power switch or the RESET button to restart it after removing/adding the jumper in order for VID/PID to change. Maybe that was the missing piece all along. > Cheers! > Arsenijs > >> Good luck, I hope you get it working. >> >> On 2021-01-12 00:01, Fausto Barbosa wrote: >>> Kevin, >>> in that case, which editor would I use to edit the bin eeprom file? I will >>> try to insert that information and flash the modified file. >>> Thank you. >>> Fausto. >>> >>> On Mon, Jan 11, 2021 at 6:27 PM Kevin Grant <elect...@mykolab.com> wrote: >>>> Hmm. That's still not good. Probably something wrong with eeprom >>>> addressing. >>>> I would expect to see the VID PID in the first few bytes like this: >>>> >>>> fx2tool -B -d 16c0:296d read_eeprom -W 2 0 256 >>>> c0 c0 16 6d 29 00 00 00 ff ff ff ff ff ff ff ff >>>> ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >>>> ... >>>> >>>> Then you would select a new VID PID, maybe this one from api.c: >>>> sigrok FX2 based 16-channel logic analyzer 1d50:608d >>>> Then you would write something like this back to the EEPROM. >>>> c0 50 1d 8d 60 00 00 00 >>>> >>>> On 2021-01-11 20:49, Fausto Barbosa wrote: >>>>> As you guessed, the line >>>>> $ fx2tool -B -d 16c0:296d read_eeprom -W 2 0 256 >>>>> failed but in fact, the model my board has a jumper (J2) that, when >>>>> opened, associates address 0x51 to the i2c port. >>>>> See this reference (which is identical to my board. J2 is at the bottom >>>>> of the figure 1) >>>>> >>>>> https://community.cypress.com/t5/Knowledge-Base-Articles/Cypress-EZ-USB-FX2LP-based-Logic-Analyzer-using-Open-Source/ta-p/252866 >>>>> >>>>> Then I opened the jumper, ran the command line again and, voila, got the >>>>> empty firmware output again :\ >>>>> ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >>>>> ... >>>>> >>>>> Is this output expected to show the VID PID numbers in some place? >>>>> >>>>> Best regards. >>>>> Fausto. >> >> ,, >> >> _______________________________________________ >> sigrok-devel mailing list >> sigrok-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/sigrok-devel > > _______________________________________________ > sigrok-devel mailing list > sigrok-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/sigrok-devel _______________________________________________ sigrok-devel mailing list sigrok-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sigrok-devel