A carrier board for the Raspberry Pi Compute Module 3 Lite, designed for the Internet of Things.
Balena was formerly known as Resin.io and is the developer of the cross-platform app Etcher, used for flashing OS images to SD cards and USB drives. The company also provides a platform for Internet of Things in the cloud – in its own words, “Balena is a complete set of tools for building, deploying, and managing fleets of connected Linux devices.”
This article first appeared in The MagPi 81 and was written by Brian Corteil
Part of this set of tools is a carrier broad for the Raspberry Pi Compute Module 3 Lite (CM), called the balenaFin. You can think of it being like a PC motherboard, and it shares many of the same features.
The hardware is designed for commercial use, for the Internet of Things (IoT), and has a few useful features to this end. These include a wide power input range, real-time clock (RTC), a micro coprocessor (Artik 020), WiFi/Bluetooth, and a full 40-pin I/O Raspberry Pi compatible header. There are also sockets for mPCIe, nano SIM (continuing the IoT theme), and HDMI, plus two USB 2.0 ports, power connectors, and a debug port for flashing the eMMC (8/16/32/64GB). The mPCIe socket can be used to add more storage or connectivity.
The microprocessor can run real-time jobs and wake up the CM at predefined conditions – for example, at 16:00 each day, or when a response is required because an input changes status. The balenaFin internal WiFi antenna can be bypassed, and an external WiFi/BT uFL antenna added to improve the range of the WiFi/Bluetooth.
As with any new toy, the balenaFin was passed to our friendly electronics engineer, Rob Karpinski, and he made happy noises while he was looking at it – his final word when passing it back was “Nice.” The build quality is of a high standard, with great attention to detail.
So, where to start? First, the CM was installed in the balenaFin with a satisfying click. Following the guide on the Raspberry Pi website, the latest version of Raspbian was flashed to the balenaFin’s eMMC via the debug socket. Next, we connected a keyboard and HDMI monitor. On powering up with the supplied PSU, we were happy to see the standard Raspbian welcome screen, and were able to connect to our network via WiFi and update the system.
We then tested the 40-pin header. For this, some HATs/pHATs from Pimoroni were selected, software downloaded, and we installed their Python libraries and examples. First up was the Unicorn HAT HD; we loaded the rainbow example and it ran with without any issues. The Scroll pHAT was up next; once again, after loading the drivers and the examples, it worked first time.
Next up was the RTC. Following the Pi Hut guide suggested by balena, we were able to update the RTC with the current time, and the time was still correct when it was rebooted without an internet connection.
We can see the balenaFin being used in intelligent displays, monitoring/controlling equipment/sensors – the normal IoT things. It would make a good contender for the brains of a robot, with the addition of a motor controller HAT. The inclusion of the 40-pin header allows the use of many HATs/pHATs to expand the function of the balenaFin.
The well-made balenaFin has some useful features – for signage, a control system, or even a robot. Being able to use HATs with it is useful for customising it to a project’s requirements. If you can afford it, it should be a good fit for your project.