What you’ll learn:
- What kinds of interfaces are used when prototyping peripheral modules?
- What are some of the prototyping peripheral form factors?
Prototyping has never been easier with a range of standard modules like Standardization Group for Embedded Technologies’ (SGeT) form factors such as SMARC, Qseven, OSM, and Embedded NUC. These plug into carrier boards that may contain peripherals or have connections for some of the peripheral standards noted here.
Another source of de facto board standards includes open-source ecosystems like Arduino, BeagleBoard, and Raspberry Pi. The ecosystems, which actually encompass a range of boards from companies built around them, have spawned a plethora of vendors using these open-source hardware form factors. The layouts are usually based around the expansion headers. The Arduino has a set of 18-pin and 14-pin single row headers while the Raspberry Pi has a single 40-pin header. BeagleBoard uses a pair of 46-pin headers.
The headers and module interfaces sport a collection of digital and analog interfaces that often include 1-wire, 2-wire (I2C), and serial interfaces with newer I3C, CAN and Ethernet popping up, although not usually on the standard header.
Chip vendors typically deliver new processors on boards using one of these form factors to take advantage of third-party expansion headers. Likewise, sensor and other hardware vendors often provide expansion boards using the same form factors.
Other Peripheral Module Form Factors
Peripheral modules that plug into the board form factors are popular but less flexible, since they’re locked into a particular host form factor. Luckily, a number of form factors are popular and don’t conform to these requirements, including Sparkfun’s QWIIC, MIKROE’s mikroBUS, Digilent's PMOD, and Digi International's XBee (see figure).
Sparkfun’s QWIIC is a 2-wire I2C system that allows for modules to be daisy-chained. This is handy if one wants to put the peripheral module distant from the host. Some modules have a pair of connectors to facilitate daisy-chaining.
Mikroe’s mikroBUS pinout has a number of interfaces—I2C, SPI, serial, and an interrupt pin with 3.3-and 5-V supplies. There are five 6- or 12-pin PMOD connector definitions that address digital IO, serial ports, I2C, and SPI with a 3.3-V power source, However, there’s only a single interface type for each. Digi International’s XBee uses a serial interface.
What these form factors have in common is a wide range of devices and often a growing number of third-party solutions, including vendors of sensors and other devices that they want developers to try out.
Standard Module Form Factors
Not to be overlooked are two standard form factors designed for deployment: M.2 peripherals and Mini-PCIe devices. Designed to go into rugged devices, both sport higher-speed interfaces like PCI Express (PCIe) and SATA.
Whereas the other form factors are typically used for a range of sensors and control systems, M.2 and Mini-PCIe include high-capacity, non-volatile storage as well as wireless devices that work with operating systems such as Windows and Linux. They have also found a home in some mobile devices like laptops.
Lately, M.2 modules have offered artificial-intelligence and machine-learning (AI/ML) accelerator support. These typically use PCIe interfaces and target low-power, edge-computing solutions.
Interface Challenges and Use in End Products
While 5 V was once the norm for interface boards, 3.3 V dominates these days, with some 1.8-V boards available as well. Matching the voltages of the processors and modules can be a challenge, depending on whether a developer is looking for a general interface or a specific chip.
Deciding whether to use a peripheral module in a product is another matter. Many of the interfaces like PMOD and QWIIC tend to be used strictly for prototyping and aren’t designed for rugged mounting. Some, like Xbee, have a solid set of header pins that enable devices to be employed in products that target many deployment environments. Form factors such as M.2 and Mini-PCIe are designed for deployment. These are often found in commercial single-board computers with form factors like PC/104.