Whenever a new piece of embedded hardware hits the market, one might feel the need to upgrade as soon as possible. Unfortunately, not all upgrades are so easy, as is certainly the case when a new version of a computer-on-module (CoM) is released. Now that the long-awaited Raspberry Pi CM4 has been released, what will happen to your old CM3/CM3+ module and carrier board?
There are two solutions to this upgrade problem. One is only simple for PCB design experts: redesign the carrier board to fit the new Raspberry Pi CM4 module. The other option is simple for everyone, and you don’t need to be a PCB design expert to make it happen: use an expansion board for the CM4 module. With the right set of modular electronics design tools, you can now design your own expansion board to hold a CM4 module, as well as other peripherals for a CM3 board.
Upgrading Raspberry Pi CM3 to CM4
The new Raspberry Pi CM4 takes modular hardware and embedded computing to a new level. The newest release of the CM4 has greater memory, a faster processor, onboard Wifi/Bluetooth, up to 8 GB LPDDR4 RAM, and an exposed PCIe lane. Overall, the only downside to using the CM4 vs. CM3 or CM3+ is that the CM4 has a lower GPIO count; the CM4 only has 28 GPIO pins available for interfacing with other hardware modules and sensors.
The other factor preventing instant upgrade to a CM4 module in your CM3-compatible carrier board is the difference in connectors on the CM4 module. The CM4 uses a pair of Hirose DF40C-100DS-0.4V mezzanine connectors to attach the module to a carrier board or development board. In contrast, the CM3/CM3+ and earlier versions use a SODIMM connector to interface with the carrier board. Obviously, a designer can’t simply swap a CM4 into a CM3 carrier without an expansion board, and these expansion boards need to be custom-built.
If you’re a PCB designer, you’re probably ready to modify your existing CM3 carrier board to interface with a CM4 module by swapping the SODIMM for the Hirose connectors and reworking the routing in your CM3 carrier board. This type of upgrade is a significant redesign in any board, but it gets more complex with the CM4 thanks to the added PCIe and gigabit Ethernet lanes. If you’re not an expert on the finer points of PCB design, an expansion board is your solution.
What is a CM4 Expansion Board?
A CM4 expansion board is like an adapter between the Hirose mezzanine connectors on the CM4 and the SODIMM connector on a CM3 carrier board. The CM4 snaps into the expansion board with the surface-mount mezzanine connectors, and this combination slides into the CM3 SODIMM slot. Long-time embedded computing vendor Gumstix now offers two expansion board options for upgrading your Raspberry Pi CM3 to CM4.
Uprev Expansion Board
The Uprev expansion board by Gumstix gives you a simple solution for upgrading a Raspberry Pi CM3 to CM4. The CM4 CoM attaches to the Hirose connectors on the Uprev board, and the Uprev board slides into the SODIMM slot on your CM3-compatible carrier board. All the GPIOs, communications signals, power pins, and other signal lines are routed from the CM4 connectors to the SODIMM edge connection to match the pin-out of the CM3.
UprevAI Expansion Board
The UprevAI expansion board by Gumstix provides the same function as the Uprev board, where all the connections on the CM4 are routed to match the CM3 pinout. However, the UprevAI board also includes a Google Edge tensor processing unit (TPU) for embedded AI applications. This simple addition to an expansion board adds powerful AI capabilities to an existing CM3-compatible carrier board, and all without incurring a major redesign. The Coral Accelerator module is routed directly to the CM4 module, allowing designers to start developing embedded AI applications with existing hardware.
The Uprev and Uprev AI boards are an ideal solution for expanding the existing capabilities of the CM3+ into some new areas. With this expansion board, you can adapt an existing CM3-capable hardware platform into new applications.
Some examples include:
- Smart sensor nodes: The PCIe lane gives access to a range of high speed peripherals. This with the high GPIO count in the CM4 module enables data acquisition from a range of low speed sensors modules, analog sensors, and high speed data converter cards. The Google Edge TPU on the UprevAI board also enables sensor fusion with inference for advanced monitoring tasks.
- Embedded AI products: The UprevAI board with the CM4 allows some low compute inference tasks to be offloaded from the data center and deployed at the edge with an existing CM3-enabled hardware platform. If your existing CM3 board provides access to camera modules, the Google Edge TPU on the UprevAI board now enables intensive image processing tasks.
- Smart home and smart factory automation: These applications both require high compute power and access to a range of low speed peripherals. The additional PCIe lane provides an interface to high speed peripherals or an additional USB 3.0 card with multiple ports. The Google Edge TPU adds additional training and inference capabilities to your board without significant increase in cost or footprint.
If you want to use an expansion board for a CM4 that will be compatible with your CM3 carrier board, you don’t need to design one on your own. The Uprev and UprevAI boards from Gumstix provide a low-cost upgrade for an existing CM3 carrier board without increasing footprint and only marginal increase in cost. If you want to design your own CM3-compatible carrier board, you can use the modular design tools in Geppetto to design an entirely custom carrier board with industry-standard COMs and popular modules in a drag-and-drop browser interface.