There was a time, before Apple and Google entered the fray, when BlackBerry smartphones were all the rage. They were introduced in 1999 and, at their peak in 2011, attracted more than 85 million users. From that point on, however, it was all downhill as BlackBerry’s big selling points – the physical keyboard and email service – gave way to touchscreens and rival alternatives.

Even so, there’s still something rather charming about BlackBerry handsets and, for anyone wanting to do some serious computing on-the-go, tapping away on physical keys remains more comfortable. For those reasons, it’s hard not to be enthused about Zhou Xu’s amazing project. It allows Linux software to run via a Raspberry Pi Zero W computer on a 320×240 LCD screen and it’s controllable using a BlackBerry-style keyboard.

“The idea started from my Game Boy Zero Plus build that was based on a stripped Raspberry Pi 3A computer,” Zhou explains, referring to a project in which a new Game Boy handheld was built by inserting a thinned-down Raspberry Pi 3A into an original case. “After completing it, I decided that I would then love to make use of Raspberry Pi in a handheld format for testing and debugging in the field. But I did not have a clear plan for the keyboard design until I recently found the BBQ20KBD from Solder Party.”

The case was designed in SolidWorks, a 3D CAD package for Windows that dates back to 1995!

Key components

The BBQ20KBD is a QWERTY keyboard and optical track pad device powered by an RP2040 microcontroller. Identical to the BB Q20 used in the BlackBerry Classic released in 2014, the tiny set of keys is placed onto a custom-printed circuit board and, because it has a USB Type-C socket, it’s easy to hook up to Raspberry Pi.

The keyboard gave Zhou’s Blackberry Pi a strong direction. “The design was heavily inspired by many other Raspberry Pi handheld projects, such as Beepy and ClockworkPi,” he adds. There were some other requirements. “One of the aims for this design was to test an SDR radio antenna in my backyard. A battery-powered handheld is so much easier for this job,” he says.

Zhou gathered all of the components together before considering the design of the case

Zhou chose a 2500 mAh LiPo battery, as well as an Adafruit PowerBoost 1000C power supply. He also took a GearBest 3.5 composite LCD display out of his Game Boy Zero Plus build, and added a Raspberry Pi Camera Module 2 NoIR. Of all the components, though, selecting to use a Raspberry Pi Zero W was the easiest decision.

“I started playing with Raspberry Pi with the original version so I’m very comfortable tinkering with the config files and soldering the pins,” Zhou says. “Even though many Raspberry Pi models were still out of stock at the time when I started this project, I still wanted to use one (and I’ll be upgrading to Raspberry Pi Zero 2 W). I find the comprehensive documentation provided by the Raspberry Pi Foundation is so much more useful than starting from scratch on the other counterparts.”

Mod man

Rather than use an existing case to fit the components, Zhou felt he would have much more control if he designed his own. As such, he drafted a case using the 3D CAD package SolidWorks, with the aim of outputting the design to his Creality Ender-3 3D printer.

“Ever since my Game Boy project, I find it so much easier to build things from the ground up,” he explains. “Modding an existing enclosure can take quite some extra effort and I’m now getting more confident in CADing.

“Besides, if I’d have used an existing BlackBerry case, squeezing the components in there would be very challenging. That said, recently I’ve started to teach myself to use KiCad for designing customised PCBs. Perhaps it would be possible to make one that fits in a BlackBerry case using a [Raspberry] Pi Compute Module 4.”

Not that the project is any worse for having a freshly designed case. In fact, it looks amazing, made all the prettier by having the classic rainbow stripes as seen on the Sinclair ZX Spectrum from 1982. “That was a bit of a random decision,” Zhou says. “ZX matches my initials and I’ve always liked retro-style designs.”

Clever case

A lot of thought went into the case. “I’m pretty proud to point out that all the GPIO pins are accessible from the top of the screen and I have added a few peripheral mounting points around the enclosure for future add-ons such as [Raspberry] Pi HATs,” Zhou adds. “I’m also very excited about the outcome of the enclosure printing. This was the first time I have ever played with the six-colour manual change on my Klipperised Ender-3 printer.”

It nevertheless proved very challenging. “I spent quite some time trying to optimise the arrangement of different components, especially the position of the GPIO pins and other connection ports so that they can be easily accessible,” he continues. “It was also very tricky to squeeze all the components into such a tight space. But I guess one thing that differentiates this project from the others is that all of the components can be purchased off-the-shelf, and it does not require any PCB design experience.”

The end result is a stunning, expandable machine that boots, by default, into the command-line interface. The frame buffer is enabled in the /boot/config.txt file to display 320×240 resolution and, as well as being great for entering code, the Blackberry Pi is able to capture photos. It’s proving to be quite a useful Linux handheld.

But Zhou is not yet finished. “As I mentioned earlier, I’ll be adding a Sense HAT and an SDR dongle. I also recently added a light guide to the USB charging port using translucent 3D-printing filament, so that the Adafruit PowerBoost status LED lights can be visible from outside the enclosure (green being fully charged, orange charging, and red showing low battery).

“Unfortunately, the progress has been slow lately because there are a few other projects which have been keeping me busy, including using a Raspberry Pi to remote-control an electron microscope and optical filters, but everything seems to be working very well.”

From The MagPi store


Subscribe to the newsletter

Get every issue delivered directly to your inbox and keep up to date with the latest news, offers, events, and more.