Colin,
Thanks for the update. I completely understand about the documentation - you delivered the hardware at least a month early, so it makes sense that the docs would lag!
The SAM3U firmware was never a problem for me, so I’ll pass on that for now. I can write fuses and erase/write/verify from the stock SAM3U firmware and the stock FPGA configuration. The hardest part was getting the menu option to appear!
Looking at the fuses, it seems that an lfuse of 0xf0 will work with the CW-Lite but not when plugged into an arduino uno with an external programmer - for the latter you need an lfuse of 0xff. The CW-Lite’s programmer can write fuses in either case, but my Pololu programmer won’t talk to an 0xf0 chip when it’s in the arduino. It’s pretty easy to change the fuse before you pop the chip, but just as easy to forget! The efuse values I’m getting from the CW-Lite are different from what I see in avrdude, because the latter masks out the top 5 bits, but that’s no biggie.
Anyway, by popping chips between the arduino and the notduino, I was able to finally get a simpleserial program that correctly outputs to the UART on the arduino at 16MHz. Oh, and for anybody watching this thread, you need to set the F_CPU in the makefile to match the “desired frequency” from the scope settings, or the serial signal will come out at the wrong speed - obvious once you see it, but easy to forget. Anyway, I did all that, got it working, changed the lfuse to 0xf0 and moved it to the notduino, and it still didn’t work.
In steady state, the TX line from the notduino is at 3.36V. When I hit reset, it goes up to 3.48V. When I release reset, I expect to see the bits for “hello” go over this line, varying between 3.36V and 0V, but while I see those bits go over, the signal is between 3.36V and 2.52V, which is strange. So I disconnected the target I/O connector, and reconnected pins 2, 3, and 6 individually (GND, 3V3 and CLK) - now I get the expected serial output from the notduino, and (remembering to use my 3V3 serial cable instead of the 5V one I have for the arduino) I can finally talk simple serial to the notduino. I guess this is good practice for attacking a component that wasn’t designed to be attacked!
With this in mind, I tested the resistance between FPGA-TARG2 and 3V3 and found 24.1ohms. Is that pin of the FPGA configured for a pull-up resistor, or is this just my board?