Cannot flash Au

Hello, sorry to disturb again, but i can not flash the Au. When I try I get this error:

TDO didn’t match. Got FE expected 31 with mask 11 at byte 0

does anyone know why? It was flashing normally a few days ago.

Also, the RAM works fine, and after erasing, the flash is erased but I still can not program.

So it only fails when programming the flash? At what point does it fail? It seems like the bridge loads correctly (LEDs alternating back and forth)?

The loading looks like this:

Checking IDCODE…
Loading bridge configuration…
TDO didn’t match. Got FE expected 31 with mask 11 at byte 0

Yes, it only fails on flash. RAM works fine. The LEDs do nothing, so it does not even load.

Wait, now it works? I did not change anything.

And now its back. I just closed and opened the program.

Assuming you’re on Windows, could you try uninstalling Alchitry Labs then install it again with this test build?

I am on Linux. My computer was left on, after realizing flash did not work. I closed the program and left for a while. when I came back, it flashed normally. In fact, it flashed and erased normally for a while. Later, it stopped working again. So I am on Linux. If you suspect anything here, tell me what to try and I will try.
Note, there was no changes to my setup with the Au.

Edit: I am on Ubuntu Noble Nombat

I tried to flash repeatedly, and on the third try it said it flashed, but the program was not running. after that, it went back to not working.

Sorry for the delay. Here’s a Linux build to try.

If this doesn’t work, there’s likely something wrong with your board as I haven’t heard of anyone else having this issue. How long have you had it?

1 Like

Ive had it for a while and only recently got back to FPGAs and Alchitry. It has been living in a box until then. I can live without flash though. Thank you for the build.

Edit: I am not sure that it is a hardware issue, because the LEDs do the flash loading thing when it says it flashed, but never stop, so I dont know.

Maybe it’s a weird write speed issue. I’ll have to dig into the flashing code probably next week.

The way flashing works on the Au is first “bridge” bin file is loaded that allows the JTAG port to talk to the flash through the FPGA. This config blinks the LEDs in the alternating pattern. With that loaded the FPGA should accept commands to erase and program the flash. It’s possible something is weird there. I don’t remember if there’s handshaking for timing and maybe your flash chip is just a tad too slow for the speed data is sent (they vary chip to chip).

OK, thank you for the help. I do not really have time to test the build right now, as I am working on some boards., I will Wednesday or Thursday.

Yeah, only 2 things happen when I try to flash. Either it just says no, or it says it flashed, but the leds do the flashing pattern indefinitely. The pattern in which it says it flashed or says that there is an error appears to be random. I am trying the build soon.

It IS a software problem. I have an extra Au, and it does the same thing.

OK, on the new build, the RAM works, but the flash has even weirder behavior. Each time, it says it flashed. Most of the time when it says it is flashing, it takes longer to flash than Labs 2.0.19 BETA. Also, when it flashes, the LEDs usually don’t do the alternate blinking pattern. I have only see the LEDs alternating pattern once. After it says it flashed, the Verilog is not running. The FPGA is not doing what it is supposed to do. I have no clue what is wrong. I have 2 Au boards and they do the same thing. The flash was working a week or 2 ago. Maybe it is something with my computer?

Note: Sometimes in 0.19, it gives me an error when I try to erase. 0.20 says it erased without error. I tried different verilog, I made the verilog simpler (leds[0] = 1’b1) I did pure lucid, I changed the computer USB port, I changed the cable.

I HAVE FOUND IT!!! So i had, on the bottom of both Aus, some bumpers, so it would not scrape or damage anything or itself. Apparently, it may have shorted something. I have removed them, just to see if it would work, and thoroughly cleaned the adhesive off of the board, and now… It works. I will do some more flashing to make sure that the problem does not come back.

Edit:

No, it was not the bumpers. It was actually an Ubuntu 24.04.1 error. Noble Nombat was acting weirdly for me, and it affected the flash of Labs. I migrated back to Jammy Jellyfish, 22.something.something. It works now.

Very weird.

I fired up an Ubuntu 24.04.1 VM and wasn’t able to reproduce any issues.

I made some changes to the JTAG code that’ll be in the next release that should check for a few issues when loading but I have no idea what is causing your problem right now.

Was RAM loading always working?

Did you install the D2xx driver or were you using the default libUSB driver?

The RAM loading worked always. I set up Labs a while ago, so I don’t remember how it was setup. Maybe 24.04.1 is fine, but there was a slip up while updating to Noble Nombat. Like I said, that version of Ubuntu was acting strange for me. Jammy Jellyfish works perfectly, except that I am missing AppImage and will have to install it later.

Well if you or anyone else run into this issue again, let me know!

1 Like