Thank you, Pičugins and Kevin and the other amazing guys from the group! I followed Pičugins recipe and finally got it working like advertised. :D I'm happy with my new toy. Time to make a protective box for the board.
Thank you again! Fausto. On Sat, Feb 6, 2021 at 11:38 PM Pičugins Arsenijs <crim...@yandex.ru> wrote: > 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