Smartform on the Raspberry Pi
Beta support for Raspberry Pi
As a linux-based system it has always been theoretically possible to install Smartform on Raspberry Pi systems. The scripts for fetching updates work more or less unchanged.
However the performance of the earlier Raspberry Pi models has been less than ideal for the task, as they are limited in terms of RAM and have been significantly limited in terms of disk performance.
With the arrival of the Raspberry Pi 4 series, we feel it is possible to consider the Pi as a target for running the Smartform product, though it is very much a project for a tinkerer or hobbyist at this point. These systems can have up to 8gb of memory, support USB3 for disk I/O, and can be run as 32 bit or 64 bit installs.
For the most part, installing Smartform on the Pi is the same as installing it on a Debian/Ubuntu Linux system, and indeed it is possible to use official Ubuntu Linux installations for the Pi for which the process is effectively identical.
However, with the development of the new Smartform updater, a Pi-specific binary is required, and there are also minor installation differences and performance concerns related to storage.
Notes on these aspects follow below.
Which Pi 4 should you choose?
We would recommend at least the 4gb model, or the new Pi400 keyboard-based device.
How to install your Pi operating system
If you have bought a version of the Pi 4 that does not come with an SD card, you can use the SD card imager application on Mac, Windows or Linux to write the SD card from which your Pi will boot.
This can install various different operating systems. We have tested the Raspberry Pi OS (formerly named Raspbian) and would expect Ubuntu to work as normal.
Performance concerns
Out of the box, the Raspberry Pi makes use of Micro SD cards for storage. These cards can be very fast indeed for linear data reading such as video or audio applications, but tend to be quite slow for non-sequential reads and writes.
This means that the installation of the larger data sets will take considerably longer on a Raspberry Pi than on a typical desktop computer, and some queries may be rather slower. We have found Sandisk Ultra MicroSD cards to offer good performance. You can read more about SD card performance for the Raspberry Pi here.
In terms of CPU performance, though, a Raspberry Pi 4 is a fairly fast computer -- about twice as fast as an Amazon EC2 a1.large instance.
Furthermore it will support the use of USB3 disks, bringing much greater disk performance than the earlier models.
If you use an external disk, we would recommend an SSD inside a USB3 disk caddy. Ideally you would use a UASP-enabled caddy; UASP signficantly improves SSD performance. These caddies are inexpensive and widely available (e.g. on Amazon). Please note that not all UASP caddies work properly with the Raspberry Pi 4. We hope to have a list but in the meantime the list here may be useful.
Mounting an external drive as an additional volume
There is a fair amount of documentation online regarding tools for formatting and mounting external drives on the Raspberry Pi.
Once you have added an external drive, by default the Pi will still boot from its SD drive.
You would then want to move your MySQL data directory on to the external volume to gain the performance advantage of the SSD drive.
Booting directly from an external drive
Once you have a working external drive it is probably easier to enable USB mass storage booting to allow you to boot directly from that disk just as you would a hard disk on a typical computer. Once this is done you can use the Raspberry Pi imaging utility to install your chosen OS directly onto the USB volume, and then boot from it. You can then install Smartform as usual.
MySQL differences
The Ubuntu for Raspberry Pi installation includes the same distribution of MySQL as the main x86 distribution.
The new Raspberry Pi OS (which is derived from Debian) provides the compatible MariaDB system.
Once this package is installed, the subsequent mysql utilities have the same name as the ordinary MySQL commands.
Generally, tools that can connect to MySQL will be able to interchangeably connect to MariaDB (this should also include the MySQL Workbench).
The Smartform updater for Raspberry Pi
The Smartform updater works identically on the Pi as on Linux platforms.
However, as the Pi has an ARM-based chip architecture, a different binary is needed to typical Linux use.
The updater has been compiled for several Raspberry Pi architectures and provided below in a single zip file.
This zip file contains three versions of the smartform updater binary for three different Pi architectures.
- smartform-updater-arm6
- smartform-updater-arm7
- smartform-updater-arm8
If you are using the 64-bit version of an operating system, you should use the -arm8 version of the updater. For the normal Raspberry Pi OS install, the -arm7 version is the correct one.
The -arm6 version is provided for completeness; it may be useful for limited installations on the Pi Zero or older B+ models.
Members area: log in
You must log in to see this area of the site.
Not a member? Register now:
- For special offers and news on developments from the Betwise team
- For access to subscriber-only services
Registration is completely free and your details are kept private.