Board Support Package for the Industrial Module
In 2020, we were contacted by a producer of a wide range of embedded processor modules and systems for industrial automation. Initially, embedded boards that run on Linux can’t operate properly when supporting a number of extensive functions vital for Industrial IoT Enterprises.
Expand the range of embedded processor modules to meet the high capability requirements of industrial automation IoT enterprises.
Deliver the module to satisfy the functionality request of industrial IoT enterprises, many of which have sophisticated infrastructure and lots of connected units involved in operational processes.
For the embedded processor module to be industrial-oriented, it had primarily to:
Operate under the load of an industrial network;
Perform real-time operations;
Have a low power consumption to be affordable to utilize;
Have universal implementation for various purposes.
To meet these requirements, we had to provide support for various interfaces within the required board. Since the client had developed hardware for the future module solution, PSA needed to “bring up” the board by delivering the software part; namely, the Board Support Package (BSP) for it.
To make the board operable within overloaded industrial networks, we provided support of Real Time Gbit Ethernet TSN (PRU). To be applied for various purposes, we added support for a wide range of memory, audio, visual, and other interfaces, such as I2C (temperature sensor), LVDS, MCASP Audio, OSPI, and USB3.0. We expanded the functionality of the board by providing support for a touch display through an integrated graphics controller. For improving the safety and security of the future product, we implemented support of a Cortex R5 so-processor. All memory types which were implemented were non-volatile, enabling low power consumption and higher performance of the module as a result.
For the board to be ready for mass production, we also had to provide its fully secure boot. To implement all the mentioned features, we performed the following activities:
Porting drivers for components on the board
Configuring drivers and device tree to bring up board interfaces in u-boot and Linux
Bootloader customization and secure implementation research
HW adjustment and modifications, resolving issues
Creation of Yocto meta layer to build a firmware package for multiple multi-architecture modules
The Board Support Package included an archive with source code, source code uploaded to the customer’s repository, and binary images for uploading onto an SD card or other bootable media.
- Requirements clarification
- Investigation and analysis of the customer’s board
- Embedded software development
- Firmware development
- Documentation creation
- Engineering testing and functionality verification
The completed processor module entirely meets industrial IoT requirements and is ready to be put on the market.