I recently upgraded my ageing iPad to a new iPad Pro 11. This has a USB C port, and I immediately wondered if I could use this to connect a USB C equipped Raspberry Pi RP2040-based device like the Adafruit Feather RP2040, and do development on the iPad rather than a Mac. The answer is a cautious ‘yes’, provided you can work to a very specific limitation: your RP2040-side application environment has to be CircuitPython.
Continue readingCategory Archives: Raspberry Pi
Program games on the Pimoroni PicoSystem
A wee while back I ordered a Pimoroni PicoSystem to try out. It’s a small handheld games console based on the Raspberry Pi RP2040 microcontroller, and it sports both classic joypad controls and a 240 x 240 16-bit colour display. I gave my first impressions in an earlier post. Here’s what I think after spending some time porting my Raspberry Pi Pico version of the 1980s 3D shooter Phantom Slayer to the unit.
Continue readingHow to send data to a Raspberry Pi Pico via USB
Do you need to transfer data to and from a Raspberry Pi Pico, or similar RP2040-based board, connected to your computer by USB? Here’s a neat way to achieve it without any tedious mucking about with the USB stack. Apart from a couple of questions on the Raspberry Pi Forum, there’s not much in the way of documentation, so here’s a write-up.
Continue readingFirst look: Pimoroni’s PicoSystem hackable handheld games console
I’ve had my eye on the PicoSystem, the Raspberry Pi RP2040-based games console platform, for some time. It surfaced back in the Spring and was long marked “coming soon”. But now it’s here, mine showed up yesterday while I was at work, and this morning I’ve been messing about with it.
Continue readingHow to build a cellular IoT device with the Raspberry Pi Pico — part two, the code
In part one, I described an IoT demo setup based on the Raspberry Pi Pico and the Waveshare Pico SIM7080G Cat-M1/NB-IoT cellular add-on board, and wrote about some of the design goals. Now it’s time to implement that design with some C++ code: a host application, drivers for the modem, the HT16K3-based display and the MCP9808 temperature sensor, and some third-party libraries to decode incoming commands formatted as JSON and encoded in base64 for easy SMS transmission.

How to build a cellular IoT device with the Raspberry Pi Pico — part one, the hardware
To turn the Raspberry Pi Pico into an Internet of Things (IoT) device, you need to add wireless connectivity. I thought I’d give it go, to see how straightforward it might be to connect the Pico to cellular networks and have a bare-metal app written in C++ run the show. For a modem, I chose to use Waveshare’s suitably sized Pico SIM7080G Cat-M1/NB-IoT.
Continue readingHow to pop up a Picoprobe from the Adafruit QT Py RP2040
A little while back I wrote about Adafruit’s QT Py RP2040 and how it makes a nice, compact Picoprobe. That’s a Raspberry Pi RP2040-based device used as a bridge between your computer and a target device for debugging work using Single Wire Debug (SWD). I first used the QT Py RP2040’s side-mounted GPIO pins, but SWD hosting is a great role for the device’s QT Stemma connector.
Continue readingRaspberry Pi Pico proxies: the Pimoroni Tiny 2040 and the Adafruit QT Py RP2040
Having spent some time with the Raspberry Pi Pico, I thought it was time to try out some of the other RP2040-based development boards that have become available. When it launched the Pico, the Raspberry Pi Foundation said it would make its RP2040 microcontroller available to third-party board makers. Retailers Pimoroni and Adafruit were among the first to toss their caps into the ring. Their offerings: respectively, the Tiny 2040 and the QT Py RP2040.
Continue readingStay ahead of git with this sharp script
I work on quite a few git repositories at once, and I don’t always commit changes in one before making changes to another. Or if I do, I don’t always push the changes up straight away. That might not be best practice in software development, but hey, it’s what I do. The issue for me is remembering what state each repo is in. Here’s the script I use to tell me.
Continue readingIntroducing C++ programming on the Raspberry Pi Pico
When I started programming the Raspberry Pi Pico, I used the C language because I’ve worked with it before. The Pico’s SDK also supports C++, but I’ve never used C++. When I started Mac programming in the early 1990s, C was the clear choice. By the time I needed to do object-oriented programming, Apple had bought NeXT and the way to do OOP on macOS was Objective-C not C++. The Pico has given me chance to join the party.








