Introduction

Unlike the boards from Lattice, it does not contain a programmer: rather Olimex suggest using one of their Arduino clones to do the task. There’s also no USB connection for a computer: it seems much more a standalone product.

Pin summary

The Arduino FPGA programmer

Olimex recommend using their Olimexino-32U49 board for this. I think it’s roughly the same as an Arduino Leonardo, but it comes with a UEXT header which has precisely the right pin out for the programming header on the Olimex FPGA board.

If you try to use a different Arduino, make sure it uses 3.3V signals, rather than 5V.

The sketch for the board is in the FPGA board’s GitHub repo10, but you also need a particular SPIFlash library. More explicit details can be found on the Olimex website11.

Having flashed the hardware, we now need to install software on the Mac to drive it. That too is from GitHub12:

$ make
$ make install

On the Mac, the Arduino appears as a usbmodem device in /dev:

$ ls /dev/*usbmodem*
/dev/cu.usbmodem14431 /dev/tty.usbmodem14431

Of these, you need the cu.usbmodem version. The number in the device name reflects its place on the USB buses, and so changes if you plug it in to a different socket. If you just have one such device though, you can use a wildcard, and program the FPGA thus: