Preparation tasks

From Digital Systems
Jump to: navigation, search

Here's a checklist of hardware and software tasks to be completed before the course begins again in January, 2022. Apologies for giving references to Debian packages and leaving you (Ian) to work out where they live in Fedora.

  • Order a sufficient quantity of V2 micro:bits:
https://onecall.farnell.com/bbc-micro-bit/mefv2c/bbc-micro-bit-v2-club-bundle/dp/3585831
  • Install an enhanced version of Geany 1.37, with the change found here on GitHub:
https://github.com/Spivoxity/geany-mods/commit/86deae9f0e91e9473d282eee98d1b8338f5e8634
  • Install GCC plus tools and GDB for ARM cross-compiling. Probably gcc-arm-none-eabi and gdb-multiarch these days, together with dependencies like binutils, gas and glibc.
  • Install BSD utilities to get hexdump; package bsdmainutils on Debian.
  • Install pyOCD via python3-pip and pip3 install pyocd.
  • Install minicom with defaults set in /etc/minirc.dfl for /dev/ttyACM0 and 9600 8N1.
  • Install udev rules that make all three of the micro:bit's USB endpoints accessible to users: the serial device /dev/ttyACM0, a mass storage device, and a generic HID device that is the debugger interface. Compare the existing /etc/udev/51-microbit.rules on lab machines, but note that the V2 microbit may have a different USB id.
USB id's from actual samples: V1 0D28:0204, V2 0D28:0204 (the same, so no problem there).
  • Install pulseview plus the fx2lafw firmware for FX2-based logic analysers. Package sigrok-firmware-fx2lafw on Fedora.
  • Possibly add udev rules to allow access to a logic analyser pod.
I think the required rules are in /usr/lib/rules.d/{60,61}-libsigrok*.rules already.

The list of packages needed on a vanilla RPi used as the host:

sudo apt-get -y install \
    geany geany-plugin-projectorganizer \
    gcc-arm-none-eabi gdb-arm-none-eabi \
    pulseview sigrok-firmware-fx2lafw minicom \
    python3-pip bsdmainutils sed