-
Notifications
You must be signed in to change notification settings - Fork 19
Flashing Firmware
Michael Farrell edited this page Mar 29, 2020
·
42 revisions
How to update the HDMI2USB-litex-firmware from the HDMI2USB prebuilt repository onto your Numato Opsis or Digilent Atlys board.
Currently this is only supported under Linux.
Below is a mix of the following, you will need to ignore the irrelevant parts.
- hardware: Opsis/Atlys
- distro: Debian/Ubuntu
- firmware version: Stable (ask about testing or custom rev)
Required:
- openocd 0.10.0
- fxload
- hdmi2usb-mode-switch
Debian 10 (buster) has hdmi2usb-mode-switch
in the main repository:
sudo apt install hdmi2usb-mode-switch
Ubuntu (xenial) packages are available in timvideos
PPA:
sudo apt --assume-yes install software-properties-common
sudo add-apt-repository --yes --update ppa:timvideos/fpga-support
sudo apt install hdmi2usb-mode-switch
Debian 9 (stretch):
wget https://launchpad.net/~timvideos/+archive/ubuntu/fpga-support/+files/vizzini-dkms_1.0.0-5~ppa3~ubuntu14.04_all.deb
sudo dpkg -i vizzini-dkms_1.0.0-5~ppa3~ubuntu14.04_all.deb
Ubuntu (trusty):
sudo apt install vizzini-dkms
echo 'blacklist xr_usb_serial_common' | sudo tee -a /etc/modprobe.d/blacklist.conf
wget https://raw.githubusercontent.com/timvideos/HDMI2USB-mode-switch/master/bin/download-prebuilt-firmware.py
python3 download-prebuilt-firmware.py --platform opsis --tag stable --output opsis.hdmi2usb.lm32.bin
hdmi2usb-mode-switch -v --flash-image opsis.hdmi2usb.lm32.bin
Power cycle the board, so it boots the new firmware.
needs fx2 blob
wget https://raw.githubusercontent.com/timvideos/HDMI2USB-firmware-prebuilt/master/archive/master/v0.0.2-81-gd0d3aea/atlys/hdmi2usb/hdmi2usb.hex
hdmi2usb-mode-switch -v --by-type atlys --load-fx2-firmware hdmi2usb.hex
If you see this (which seems to happen 100% of the time now, so it gets listed here)
DNA = 110000001100000011000000110000001100000011000000110000001 (0x181818181818181)
Switch the device into serial mode:
# Opsis
sudo hdmi2usb-mode-switch -v --mode serial
# Atlys (replace /dev/bus/usb with the board's bus/device IDs according to lsusb)
fxload -t fx2lp -D /dev/bus/usb/001/006 -I /lib/firmware/hdmi2usb.hex
Then retry flashing.