Plextek have developed many Internet of Things (IOT) solutions over the years, including utility metering, urban parking systems and street light control. Our preferred solution has been to use our own proprietary Ultra Narrow Band (UNB) technology, which enables thousands of endpoints (sensor nodes) to connect to a single capable Base Station (BS). In this way, the overall cost of the system (and the battery life of the sensor nodes) can be highly optimised.
The BS must be rugged, have exceptional radio performance and encapsulate a software/firmware infrastructure that is accessible and maintainable. In the past, the BS would have used a custom designed radio front-end, FPGA devices to perform the radio processing and a processor to implement the protocol stacks that sit above this.
Our current generation combines COTS technology with custom hardware. The radio is built around a COTS chipset, reducing the design time and increasing flexibility. Both the radio processing and the protocol systems run on a Xilinx Zynq SoM (the Avnet PicoZed). The PicoZed provides the processor, flash storage and RAM and the motherboard provides all the application-specific functions (power supplies, radios etc). This leads to an efficient and cost effective hardware design. Because the FPGA core of the PicoZed can handle all of the real-time aspects of the radio processing, the controlling software can be written using standard, Posix-based, multi-threaded methods (which promote modularity and clean/maintainable design) without the need for a custom real-time Linux kernel or an additional RTOS.
The software platform is an embedded Linux distro built using the Yocto/OpenEmbedded toolset. This Open Source toolset allows the creation of re-usable Linux distros that can be easily customised for specific applications. Software and firmware are broken down into components, each of which is contained in a signed package. Packages can be individually deployed and updated using the RPM package manager. This allows bug fixes and security patches to be deployed quickly and securely whilst creating as little data traffic as possible.
Compared with the legacy approach of reprogramming an entire system image, this minimises disruption to the customer’s system. Only the affected component(s) need to be replaced and most of the time the system doesn’t have to be rebooted afterwards. The risk of update failures destroying the system is largely avoided since the operating system remains up and running throughout and failed updates can be retried or rolled back before they get the opportunity to cause irrecoverable failures.