Working example with rp2040 and sh1106 oled 128x64 display and two input buttons on gpio15 and gpio17. The sphero is connected via UART on gpio4 (TX) and gpio5 (RX). The ultrasonic sensor is on gpio6 (trigger) and gpio7 (echo).
The boot.py
starts the oled with displayio, then code.py
organizes the menu with reading the content of programs in the menu folder. All other programs are stored for later use in the /app
folder.