Raspberry Pi on PC/104

December 01, 2017

Raspberry Pi on PC/104

With a few modifications, you can implement the Raspberry Pi architecture in the PC/104 form factor. Now you have Pi for industrial IoT.

The Pi/104 was originally designed when I was working as an IIoT developer. I worked for a startup and a common sales pitch was "our stack can run on something as small as a Raspberry Pi." No one took us up on that, not because they weren't familiar with the Raspberry Pi but because the Pi in SBC form is a bit silly in an industrial cabinet. Its shortcomings drove design decisions.

The carrier was designed to meet the full industrial temp spec (-40°C to +85°C), compared to the Pi’s typical commercial spec. The Compute Module does have a slightly subpar memory component (IIRC) that narrows the spec to -20°C to 85°C, but that can't be avoided.

Another design decision was to fix the USB power supply. Having 5 V available isn't unheard of in an industrial cabinet, but it's not common. So, I sized the power supply to at least take in 12 and 24 V. What we eventually got was 8 to 35 V. The module also accepts power through its OneBank or the USB OTG port for convenient desktop powering. The rest of the design was largely to make usual hobbyist Pi user feel at home, giving developers something they could play with on the weekends, not just at work.

In the end, I chose PC/104 because of its credentials and long standing in the industry. There are CM products in Phoenix's Din Rail cases, but they tend to carry everything and the kitchen sink to meet all projects instead of simply giving the customer the expandability to build what their project needs.

The big asterisk on the Pi/104's PC/104 credentials has been correctly identified by LinuxGizmos.com. Unfortunately, the CM1/CM3 is short on busses. It doesn’t have ISA, PCI, or PCI Express. So, we chose to adhere to what we believed the spirit of the OneBank connector is. We populated the power, ground, and the two USB channels.

The final product is a very functional industrial IoT platform. Obviously, not every PCI Express/OneBank card will work, but OneBank to mPCIe alone can be a powerful addon. The maiden voyage for the card was a demo with a 3G cellular modem (Huawei EM820W) in the slot and the on-board Ethernet going to a Modbus TCP rack for data acquisition. It’s also been demoed as a SoftPLC using OpenPLC (note that Phoenix Contact also has a soft PLC platform that can run on the Pi).

The card is available for a limited time on CrowdSupply.

Adam Parker is a control systems engineer turned IIoT developer, who now works as a IoT firmware developer in the Dallas-Fort Worth area. He’s also a ham-radio operator, open-source contributor, and avid SBC collector.

Open Source