tinyfpga / TinyFPGA-Bootloader

An open source USB bootloader for FPGAs
Apache License 2.0
352 stars 94 forks source link

"Hacker" Tomu FPGA (Fomu) v0.0 support #34

Closed osresearch closed 5 years ago

osresearch commented 5 years ago

USB ACM serial enumeration success

Successfully flashed the Fomu v0.0 "Hacker" board (ice40up5k-uwg30) with this build (using fomu-flash) and was able to upload a user program with tinyprog -p.

arachne-pnr doesn't produce a working bitsream for me and nextpnr-ice40 seems very unstable as to whether or not things will work. The /dev/ttyACM0 enumeration and programming works with the seed 12345678, even though icetime reports that it is only 19.69 MHz.

mithro commented 5 years ago

Hey @osresearch Are you on IRC at all? If so you should join us on the #tomu and #timvideos IRC channels. FYI I'm currently working on a replacement (migen + softcpu) bootloader for the Fomu at https://github.com/mithro/valentyusb/tree/master/valentyusb (actually right at this very moment :-) The aim is to support multiple different protocols like DFU and UF2 protocols and probably even TinyProg / HID base system in the future...

mithro commented 5 years ago

@osresearch - I've merged a bunch of the dependent pull requests.

I think it would be a good idea to merge #40 and this pull request in the next couple of days. Could you update me on what you think the state is?

mithro commented 5 years ago

@osresearch - I would love to merge this support. Are you going to have any time to clean it up or should I try and find time to do it?

osresearch commented 5 years ago

This needs to be re-tested with a more recent checkout, although I don't have my programming jig handy. I can test with the existing bootloader and write into the user application space, which will hopefully be sufficient to validate.

osresearch commented 5 years ago

I've merged this with master and it seems to work fine on my one Fomu to test with. The 48 MHz clock "passes" timing at 38 MHz, which is unchanged from before.