neogrid/firmware/README.md
Andrey Salomatin 9c57c04a00 Drum Rack example
2026-04-11 23:31:34 +02:00

1.8 KiB

firmware

Custom micropython build for the Olimex RP2350B-XL. Comes with some features enabled and modules bundled that are not part of an eventual upstream build.

build instructions

  1. Make sure to have a compiler toolchain supporting the RP2 architecture installed (Mac: brew install gcc-arm-embedded)
  2. Clone pico-sdk (to this folder or somewhere else on your machine)
  3. Change to the pico-sdk folder and run git submodule update --init
  4. Point an environment variable PICO_SDK_PATH to the pico-sdk folder
  5. Install picotool
  6. Clone the micropython repo (to this folder or somewhere else on your machine)
  7. From within the micropython repo root, run make -C mpy-cross
  8. Copy the OLIMEX_PICO2_XL folder to micropython/ports/rp2/boards if it doesn't exist; overwrite it if it does
  9. Change to the micropython/ports/rp2 folder
  10. Run make BOARD=OLIMEX_PICO2_XL submodules to install dependencies
  11. Run make BOARD=OLIMEX_PICO2_XL clean to remove previous build artefacts (if any)
  12. Run make BOARD=OLIMEX_PICO2_XL to build the firmware
  13. To rebuild: make BOARD=OLIMEX_PICO2_XL clean && make BOARD=OLIMEX_PICO2_XL

flashing

  1. The build output can be found in micropython/ports/rp2/build-OLIMEX_PICO2_XL (or in this folder for convenience)
  2. Connect the MCU board to your computer using a data-capable USB cable
  3. On the MCU board, hold boot while pressing rst
  4. A new removable disk drive should appear. Copy firmware.uf2 onto this disk drive - this will flash the MCU board with the custom micropython build.

using

Once micropython is flashed, copy boot.py, main.py and any auxiliary files for the specific hardware type onto the MCU flash. Refer to the micropython docs for further info.