Evaluation Type: Evaluation Boards
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?: Raspberry Pi 3 , BeagleBone Black Industrial, BeagleBone Black Wireless, BeagleBone Blue
What were the biggest problems encountered?: No problems encountered
I would like to start by thanking Raspberry Pi and Element 14 for allowing me the privilege of participation in the testing and review of this product . I hope that you will find this report helpful and thank you for your time reading it. Okay let's get started. It is with great honor I present to you, the The Raspberry Pi Compute Module 3 Development Kit.
Raspberry Pi and The Compute Module
The Raspberry Pi is a series of small single-board computers developed in the United Kingdom by the Raspberry Pi Foundation to promote the teaching of basic computer science in schools and in developing countries. According to the Raspberry Pi Foundation, over 5 million Raspberry Pis have been sold before February 2015, making it the best-selling British computer. By November 2016 they had sold 11 million units.
The organisation behind the Raspberry Pi now consists of two arms. Originally developed under the auspices of the Raspberry Pi Foundation, the success of the Pi Model B prompted the Foundation to set up Raspberry Pi Trading, with Dr Eben Upton as CEO, to develop the third model, the B+. Raspberry Pi Trading is responsible for developing the technology while the Foundation is an educational charity that exists to get that message out to schools. Raspberry Pi Trading reinvests about a third of its profit in R&D, and the rest goes to the foundation.
The Foundation provides Raspbian, a Debian-based Linux distribution for download, as well as third-party Ubuntu, Windows 10 IOT Core, RISC OS, and specialised media center distributions. It promotes Python and Scratch as the main programming language, with support for many other languages. The default firmware is closed source, while an unofficial open source is available.
The Raspberry Pi 3, with a quad-core Cortex-A53 processor, is described as 10 times the performance of a Raspberry Pi 1. This was suggested to be highly dependent upon task threading and instruction set use. Benchmarks showed the Raspberry Pi 3 to be approximately 80% faster than the Raspberry Pi 2 in parallelized tasks.
On April 7, 2014, The official Raspberry Pi blog announced the Raspberry Pi Compute Module, a device in a 200-pin DDR2 SO-DIMM-configured memory module (though not in any way compatible with such RAM) based around the BCM2835 processor of the original Raspberry Pi. CM1 was a great success in various markets, particularly in IoT and home and factory automation. It is intended for consumer electronics designers to use as the core of their own products.
And on January 16, 2017 The Compute Module 3 and Compute Module 3 Lite are launched.
The idea of the Compute Module was to provide an easy and cost-effective route to producing customised products based on the Pi hardware and software platform. The thought was to provide the ‘team in a garage’ with easy access to the same technology as the big guys. The Module takes care of the complexity of routing out the processor pins, the high speed RAM interface, and core power supply, and allows a simple carrier board to provide just what is needed in terms of external interfaces and form factor. The module uses a standard DDR2 SODIMM form factor, sockets for which are made by several manufacturers, are easily available, and are inexpensive.
There are currently two versions of Compute Module 3. The first is the ‘standard’ CM3 which has a BCM2837 processor at up to 1.2GHz ( providing twice the RAM and roughly 10x the CPU performance of the original Module) with 1GByte RAM, the same as Raspberry Pi 3, and 4Gbytes of on-module eMMC flash. The second version is the ‘Compute Module 3 Lite’ (CM3L) which still has the same BCM2837 and 1Gbyte of RAM, but brings the SD card interface to the Module pins so a user can wire this up to an eMMC or SD card of their choice.
Raspberry Pi has also released an updated version of the original Compute Module IO Board, the Compute Module IO Board V3 (CMIO3). This board provides the necessary power to the Module and gives you the ability to program the Module’s flash memory (for the non-Lite versions) or use an SD card (Lite versions), access the processor interfaces in a slightly more friendly fashion (pin headers and flexi connectors, much like the Pi), and provides the necessary HDMI and USB connectors so that you have an entire system that can boot Raspbian (or the OS of your choice). This board provides both a starting template for those who want to design with the Compute Module, and a quick way to start experimenting with the hardware, and building and testing a system, before going to the expense of fabricating a custom board. The CMIO3 can accept an original Compute Module, CM3, or CM3L.
Arrival of The Raspberry Pi Compute Module 3 Development Kit
Raspberry Pi Compute Module 3
The Compute Module 3 contains the guts of a Raspberry Pi 3 (the BCM2837 processor and 1GB of RAM) as well as a 4Gbyte eMMC Flash device (which is the equivalent of the SD card in the Pi). This is all integrated on to a small 67.6x30mm board which fits into a standard DDR2 SODIMM connector (the same type of connector as used for laptop memory). The Flash memory is connected directly to the processor on the board, but the remaining processor interfaces are available to the user via the connector pins. You get the full flexibility of the BCM2837 SoC, which means that many more GPIOs and interfaces are available as compared to the Raspberry Pi, and designing the module into a custom system should be relatively straightforward.
The Compute Module 3 contains the following components contained within a 200 pin SODIMM design:
Broadcom BCM2837 processor
1 Gbyte LPDDR2 RAM
4 Gbytes eMMC Flash
35u hard gold plated IO Pins
Raspberry Pi Compute Module 3 Lite
The Compute Module 3 Lite product is the same as the Compute Module 3 except the eMMC Flash is not fitted, and the SD/eMMC interface pins are available for the user to connect their own SD/eMMC device The Compute Module 3 Lite contains the following components contained within a 200 pin SODIMM design:
Broadcom BCM2837 processor
1 Gbyte LPDDR2 RAM
35u hard gold plated IO Pins
(N.B. when operating with the IO Board, an SD card with a suitable image must be connected to the IO board for the system to work)
ARMv7 Instruction Set
Mature and stable Linux Kernel Support
Latest Linux Kernel support
Many drivers upstreamed
Stable and well supported user enviroment
Full availability of GPU functions using standard APIs
The main difference between the CM3 and CM3 Lite is that the eMMC storage is not populated at all. The layout is still on the PCB, however the pin out of the compute module has changed so that the relevant SD/SDX pins are now broken out onto the 200 pin connector. This allows use of an external microSD/SDCard connector (or potentially an external eMMC storage) such as the one on the IO Board.
Compute Module 1
Compute Module 3
Compute Module 3 Lite
- BCM2835 System on Chip (SoC) processor - Single Core 32bit, 700Mhz - ARM11 with ARMv6 Instruction Set - 512MByte LPDDR2 RAM - 4GBytes eMMC
- BCM2837 System on Chip (SoC) processor - Quad Core 64bit, 1.2Ghz - 512KByte L2 Cache - ARM Cortex A53 with ARMv7 Instruction Set - 1GByte LPDDR2 RAM - 4GBytes eMMC
- BCM2837 System on Chip (SoC) processor - Quad Core 64bit, 1.2Ghz - 512KByte L2 Cache - ARM Cortex A53 with ARMv7 Instruction Set - 1GByte LPDDR2 RAM - SD/eMMC pins exposed
Due to the CM3 using the BCM2837, this means that consideration needs to be made for power consumption and heat dissipation. According to the documentation, VBAT will require more power to the processor when it is under heavy load. For the CM3 module, and CM3 Lite, there are six power supply rails to the module which have to be accommodated for (excluding consideration for SDX_VDD).
Raspberry Pi Compute Module IO Board
The Compute Module IO Board is a simple, open-source breakout board that you can plug a Compute Module into. It provides the necessary power to the module, and gives you the ability to program the module’s Flash memory, access the processor interfaces in a slightly more friendly fashion (pin headers and flexi connectors, much like the Pi) and provides the necessary HDMI and USB connectors so that you have an entire system that can boot Raspbian (or the OS of your choice). This board provides both a starting template for those who want to design with the Compute Module, and a quick way to start experimenting with the hardware and building and testing a system before going to the expense of fabricating a custom board.
The IO board contains the following interfaces:
Multiple GPIO interfaces on 2 60 way 0.1" Headers
1 x Micro USB Connector Type B - USB Slave
1 x USB Connector Type A - USB Host
2 x CSI Ports for Camera Boards
2 x DSI Ports for Display Boards
Full Size HDMI Port
Micro USB Power Connector
Micro SD Connector
The Compute Module IO Board has a 22-way 0.5mm FFC for two camera ports, with CAM0 being a 2-lane interface and CAM1 being the full 4-lane interface. To attach a standard Raspberry Pi Camera to the Compute module IO Board a small camera adaptor board is used to adapt the 22W FFC to the Pi 15W FFC. The Compute Module also has 2 MIPI serial display interfaces (DSI); a small camera adaptor board included in the kit is used to adapt the 22W FFC to the Pi 15W FFC.
Raspberry Pi Compute Module IO Board Camera Display Adaptor
These adapters are used to connect a standard Raspberry Pi camera board or Raspberry Pi display to the Compute Module IO Board. There is one display and one camera adapter provided within the kit.
Raspberry Pi Power Supply 5v 2.5A
This is used to power the Compute Module IO Board.
USB A to micro B Cable
This is provided to allow you to flash an operating system onto the 4GB eMMC flash memory within the Compute Module. (It is recommended that you use a Raspberry Pi 3 Model B to re-flash the software on the chip).
4 x Jumper Wires
These are provided to jumper the control of the Camera interface or Display interface into the GPIO banks so they can be accessed.
Sources for this information:
Photographs captured by ninjatrent
You can find all of the documentation that has been released by Raspberry Pi Trading / Raspberry Pi Foundation on their website. The documentation gives a full breakdown of the IO Board, Compute Module(s) along with guides on using the Raspberry Pi Cameras and attaching the Official Display along with software guidance on flashing the eMMC. I have provided the links below for convenience.
Datasheet for the Compute Modules and related boards
Schematics for the Compute Modules and related boards
Design data for Compute Module IO and camera/display adapter boards
Notes for designing with the Compute Module
How to (re)write the eMMC flash on the Compute Module, using a Compute Module IO Board
How to attach a Raspberry Pi camera to the Compute Module IO Board
How to attach the Raspberry Pi 7-inch display to the Compute Module IO Board
In order to get started with the compute module, it will be necessary to download the Raspbian image. I do not believe that NOOBS will work with the CM3. Other third party operating systems might be compatible with the CM3 but unconfirmed at this time.
Dependant on which compute module chosen to start with (CM3 or CM3L), and desired application, the following peripherals might be required:
USB to TTL Serial Debug/Console Cable
USB 2.0 Hub
USB Keyboard and Mouse
USB WiFi Module
Here is a simple tutorial on how to enable WiFi
Test Driving The Raspberry Pi CM3 Dev Kit
The Compute Module 3
(13 x 13 x 3MM Heatsink not included. Purchased from https://www.adafruit.com/product/3084 )
About the size of a Raspberry Pi Zero Wireless but with more power.
Raspberry Pi 3 beside the Compute Module 3 and IO Board.
Raspberry Pi 3 and Display in SmartiPi Case was used to flash CM3 eMMC with the included USB to Micro USB Cable.
After installation of the Raspbian Stretch Lite OS Image onto the CM3's eMMC Flash, a few tests were performed in order to determine similarity and difference between a Raspberry Pi 3 running the same Raspbian Lite image. One difference that became apparent immediately was a the need for a WiFi Interface to simplify connection via SSH and VNC. Fortunately after the addition of a USB WiFi Module connected to the USB Host on the CM3 IO Board and creation of the wpa_supplicant.conf file, this issue was easily resolved. Out of three different USB WiFi Modules tested with the CM3, each one was successfully in operation. More information about setting up WiFi via the Command Line can be found at the following link.
The Compute Module 3 Lite
( 15 x 15 x 15MM Heatsink not included. Purchased from https://www.adafruit.com/product/3082 )
The CM3L and 32 GB MicroSD running Raspbian Stretch with Desktop. USB Keyboard, Mouse, and WiFi Module connected to USB Host.
This looks familiar. Latest Raspbian Stretch with Desktop running on the CM3L.
Everything seems in order here. Chromium browser with Google Search Engine.
Using the Compute Module to learn more about the Compute Module.
The capabillities of the CM3 and CM3L as a HD Media Player are truly amazing. It performed exceptionally, handling every video format thrown at it.
.avi , .mp4, .mkv, no problem. Even a16 hour non-stop Star Wars Marathon.
A Custom Made Unofficial Compute Module 3 Case with 5V Fan
The Raspberry Pi CM3L is Cool!!
Case made from Recycled Materials
What is this ancient thing doing here?
Ultimate RetroPi Game Console and Media Player? Why not. The RPi CM3 and a 1 Tbyte HD.
The CM3 connected to an Adafruit AMG8833 IR Thermal Camera Breakout, DS3231 Precision RTC, and BME280 Temp/Baro/Humidity Sensor.
My Body Temp with T-Shirt on, and without. And an IR Thermal Image of the BCM2837 Processor in Action.
The AMG8833 IR Thermal Sensor effectivly uses the Quad-Core processing capability of the BCM2837 to interpolate and filter the sensor output with a process called bicubic interpolation.
Tracking Hurricanes with The Compute Module 3
I even used the CM3L to track recent Hurricanes in the Caribbean with data from the NOAA GOES Geostationary Satellite Server.
Similar Resources Available from the following sites:
EUMETSAT Geostationary Satellite Server
JMA Geostationary Satellite Server
12km Visible Light Spectrum
8km Visible Light Spectrum
12km IR Light Spectrum
8km IR Light Spectrum
12km Water Vapor
8km Water Vapor
Various IR Composite Images
Various Composite Water Vapor Images
Products and Various Applications Developed with Raspberry Pi
Trident, an affordable underwater drone built with hackability in mind and powered by Raspberry Pi.
NEC combines commercial-grade displays with the Compute Module for a brilliant solution
Slice, the first ever Compute Module-based media player
CubeSats, a type of miniature satellite powered by the Compute Module
The Raspberry Pi is being used to save the eyesight of people in India thanks to the Open Indirect Ophthalmoscope (OIO) project.
Otto, A Hackable Camera Powered by Raspberry Pi
Ben Heck's DIY graphing calculator built with a Raspberry Pi
Is your product "Powered By Raspberry Pi"?
I am very impressed with the performance of the Raspberry Pi 3 Compute Module Development Kit. This development kit is the best way to get started with the development of your own Raspberry Pi powered product. The potential for the RPi CM3 and CM3L are only limited by one's imagination. I highly recommend the RPi CM3 for the development of consumer and industrial applications.
Thank you very much! It is almost complete. There are still a few more details to add. What has been written so far was done so on a Pi 3. It has been a great opportunity to become familiarized with the the potential of the CM3.This dev kit is definitely worth purchasing. And fortunately E14 is the best source to buy additional CM3 boards for various applications.
Nice detailed road test report.
I look forward to seeing what else you do with it.
Thank you for checking it out. This Road Test has been a great opportunity to work with the CM3. I still need to do a bit of editing and include additional information to complete this Road Test. Yesterday was a long day of transferring the text and data from the Raspberry Pi 3 that was used to write this Road Test. LibreOffice on the Pi 3 was the application that I used. Unfortunately the font that was chosen on LibreOffice did not match the available fonts here. In order to create a more visually appealing blog, it was necessary to convert the text to one of the available fonts and larger font size. I actually fell asleep at workstation early this morning US time while working on this Road Test. This is the reason that it is not complete. It should be finalized by this evening.
Nice series of testing applications implemented.
I still have a few things to add to this Road Test. Please stay tuned for updates and thank you for checking out my Road Test Review of the Raspberry Pi Compute Module 3 Development Kit.