# Orangecrab 0.2 Testing This page is for documenting the orangecrab bring-up, from blinky to microwatt. ## Further links * HDL Workflow [[/HDL_workflow]] * ECP5 Versa [[/HDL_workflow/ECP5_FPGA]] * Microwatt [[/HDL_workflow/microwatt]] * ## Requirements Instructions assumed to be called in a schroot environment. 1. Call nextpcr-ecp5-install 1. Add environment vars for libtrellis and nextpnr-ecp5 (otherwise building with nmigen-boards will fail). export PATH=/usr/local/libtrellis/bin:/usr/local/nextpnr-ecp5/bin:/usr/lib/ccache:"$PATH" 1. apt install dfu-util 1. Add a udev rule for the orangecrab in /etc/udev/rules.d/ . The rule was taken from . ATTRS{idVendor}=="1209", ATTRS{idProduct}=="5af0", MODE="0666", GROUP="plugdev", TAG+="uaccess" 1. Git clone "nmigen-boards" from gitlab 1. cd into "nmigen-boards" and install by calling: python3 setup.py develop ## Setting orangecrab into DFU 1. Press and hold the button on the orangecrab. 1. Plug in the usb cable. 1. Calling the following should show two devices: one is the RISCV firmware bootloader, the other is the user bitstream. ## Build and upload "blinky" 1. cd into "nmigen-boards/nmigen-boards". 1. Build and program the board: python3 -m nmigen_boards.orangecrab_r0_2 1. You should now have a *very* bright LED flashing!