Do you remember the BlackBerry handheld? I do, only the senior managers were allowed such coveted devices back in 2007. The BlackBerry was seen as the ultimate form factor for business users who want to look important as they took calls and sent emails. Adafruit's Anne Barela has used the Blackberry form factor as the basis of an Adafruit Feather RP2350 powered build which sees a DOS-like user interface with access to BASIC and CircuitPython in an appealing handheld machine.
Folks asked for a guide/documentation for the @Adafruit Feather RP2350 PyDOS handheld build. It's now at https://t.co/w2GijEApQ1. If you say it could have been built with a smaller microcontroller: true, but the @Raspberry_Pi RP2350 has lots of space and is snappy. Just right. pic.twitter.com/UvQEXvo2jHOctober 13, 2024
Adafruit's Feather RP2350 is essentially the Raspberry Pi Pico 2 in Adafruit's Feather form factor and Barela is using it along with a Solder Party Keyboard Featherwing to provide a real Blackberry keyboard and a 2.6 inch LCD display to the Feather RP2350. For those who don't already know, Featherwings are Adafruit's version of HATs (Raspberry Pi) and Shields (Arduino) that connect to the GPIO of a board.
Barela uses the Solder Party Keyboard Featherwing as the internal structure of the build. The PCB mimics the form factor of the Blackberry, but has GPIO connections to connect to the Feather RP2350. Everything is wrapped in a 3D printed case, made using a Prusa MK4S but you could also make it on a budget 3D printer. The print is made from the top and middle layers of msglab's Lora msg build. A little rework was required to expose access to the Stemma QT port, but it was nothing that a Dremel couldn't solve! Holding it all together are four self-tapping screws. Power is provided via a LiPo battery via the RP2350 Featherwing.
The software element of the build is where we move even further back in time, to a time when C:\ was all you needed to get work done. PyDOS is a implementation of an MS-DOS style interface for microcontrollers like the RP2350, RP2040 and many ESP32 variants. Barela created an autoexec.bat file to set the prompt to match the famous C:\. PyDOS provides a typical selection of DOS commands, CD, DIR, TYPE, DELETE etc. It also provides a few external programs to run BASIC (PyBasic.py) a Python REPL (virtrepl.py) and commands to print and scroll text on an LCD display. For NeoPixel lovers, there are commands to control our favorite RGB LEDs.
PyDOS isn't a full MS-DOS experience, in that we cannot install Doom or load Windows 3.1, but it provides just enough to make it a workable tool for those quick hits of retro when out on the road.
Barela has documented the impressive build over at Adafruit.