Skip navigation
> RoadTest Reviews

Raspberry Pi Compute Module 3 Development Kit - Review

Scoring

Product Performed to Expectations: 10
Specifications were sufficient to design with: 10
Demo Software was of good quality: 10
Product was easy to use: 10
Support materials were available: 10
The price to performance ratio was good: 10
TotalScore: 60 / 60
  • RoadTest: Raspberry Pi Compute Module 3 Development Kit
  • Buy Now
  • Evaluation Type: Evaluation Boards
  • Was everything in the box required?: Yes - null
  • Comparable Products/Other parts you considered: Raspberry Pi 3 , BeagleBone Black Industrial, BeagleBone Black Wireless, BeagleBone Blue
  • What were the biggest problems encountered?: No problems encountered

  • Detailed Review:

    Introduction

    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


    RaspberryPi_Logo.png

     

    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.

    https://www.raspberrypi.org/blog/raspberry-pi-compute-module-new-product/

     

    And on January 16, 2017 The Compute Module 3 and Compute Module 3 Lite are launched. 

    https://www.raspberrypi.org/blog/compute-module-3-launch/

     

        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

     

    DSC_0003.JPGDSC_0005.JPGDSC_0006.JPGDSC_0007.JPGDSC_0009.JPG

     

     

    Raspberry Pi Compute Module 3

    DSC_0037.JPG

    DSC_0350.JPG

    DSC_0040.JPG

          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.

     

    Compute+Module+3+Breakout+V2.png

     

      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

    DSC_0038.JPGDSC_0044.JPG

    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)

     

    Software:

    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

    DSC_0049.JPGDSC_0057.JPGDSC_0058.JPG

    DSC_0073.JPG

    DSC_0053.JPGDSC_0089.JPGDSC_0071.JPG

     

    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.

     

    Compute+Module+3+Dev+Kit+Breakout.png

     

     

    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

     

    DSC_0026.JPG

    DSC_0027.JPGDSC_0028.JPG

    DSC_0030.JPGDSC_0031.JPG


      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

    DSC_0012.JPGDSC_0013.JPGDSC_0015.JPGDSC_0019.JPGDSC_0020.JPGDSC_0021.JPGDSC_0022.JPG

    This is used to power the Compute Module IO Board.

     

    USB A to micro B Cable

    DSC_0035.JPG

     

     

        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

    DSC_0034.JPG

    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:

     

    https://www.element14.com/community/docs/DOC-83926/l/raspberry-pi-compute-module-3

     

    Raspberry Pi Compute Module 3 https://www.element14.com/community/docs/DOC-83880/l/does-this-compute-raspberry-pi-compute-module-3-and-io-board

     

    Photographs captured by ninjatrent

     

     

    Datasheets and Schematics

     

    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.

     

    BCM2837 Processor

        https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2837/README.md

     

        https://developer.arm.com/products/processors/cortex-a/cortex-a53

     

    Datasheet for the Compute Modules and related boards

        https://www.raspberrypi.org/documentation/hardware/computemodule/datasheet.md

     

    Schematics for the Compute Modules and related boards

          https://www.raspberrypi.org/documentation/hardware/computemodule/schematics.md

     

    Design data for Compute Module IO and camera/display adapter boards

          https://www.raspberrypi.org/documentation/hardware/computemodule/designfiles.md

     

    Notes for designing with the Compute Module

        https://www.raspberrypi.org/documentation/hardware/computemodule/cm-designguide.md

     

    How to (re)write the eMMC flash on the Compute Module, using a Compute Module IO Board

        https://www.raspberrypi.org/documentation/hardware/computemodule/cm-emmc-flashing.md

     

    How to attach a Raspberry Pi camera to the Compute Module IO Board

          https://www.raspberrypi.org/documentation/hardware/computemodule/cmio-camera.md

     

    How to attach the Raspberry Pi 7-inch display to the Compute Module IO Board

          https://www.raspberrypi.org/documentation/hardware/computemodule/cmio-display.md

     

     

    Getting Started

     

    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.

     

    https://www.raspberrypi.org/downloads/

     

    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 

     

    https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md

     

     

    Test Driving The Raspberry Pi CM3 Dev Kit

    moto.jpg

     

    The Compute Module 3

    DSC_0344.JPG

    (13 x 13 x 3MM Heatsink not included. Purchased from https://www.adafruit.com/product/3084 )

     

     

    DSC_0337.JPG

    About the size of a Raspberry Pi Zero Wireless but with more power.

     

    DSC_0095.JPG

    Raspberry Pi 3 beside the Compute Module 3 and IO Board.

     

    DSC_0141.JPG

    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.

        

         https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md

     

     

     

     

     

    The Compute Module 3 Lite

    DSC_0318.JPG

    ( 15 x 15 x 15MM Heatsink not included. Purchased from https://www.adafruit.com/product/3082 )

     

    DSC_0146.JPG

    The CM3L and 32 GB MicroSD running Raspbian Stretch with Desktop. USB Keyboard, Mouse, and WiFi Module connected to USB Host.

     

    2017-09-10-121351_1184x624_scrot.png

    This looks familiar. Latest Raspbian Stretch with Desktop running on the CM3L.

     

    2017-09-10-124018_1184x624_scrot.png

    Everything seems in order here. Chromium browser with Google Search Engine.

     

    2017-09-10-124138_1184x624_scrot.png

    Using the Compute Module to learn more about the Compute Module.

     

    2017-09-10-120602_1184x560_scrot.png

    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.

     

    DSC_0321.JPG

    A Custom Made Unofficial Compute Module 3 Case with 5V Fan

     

    DSC_0322.JPG

    The Raspberry Pi CM3L is Cool!!

     

    DSC_0323.JPG

    Case made from Recycled Materials

     

    DSC_0325.JPGDSC_0312.JPG

    What is this ancient thing doing here?

     

    DSC_0310.JPG

    Ultimate RetroPi Game Console and Media Player? Why not. The RPi CM3 and a 1 Tbyte HD.

     

    DSC_0314.JPG

     

    DSC_0308.JPG
      The CM3L and 1 Tbyte HD in standard sized 19" Rack Mount Case

     

    DSC_0348.JPG

    The CM3 connected to an Adafruit AMG8833 IR Thermal Camera Breakout, DS3231 Precision RTC, and BME280 Temp/Baro/Humidity Sensor.

    2017-09-10-115506_240x240_scrot.png  2017-09-10-115940_240x240_scrot.png 2017-08-14-160647_240x240_scrot.png

    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.

        NOAA GOES Geostationary Satellite Server

     

    Similar Resources Available from the following sites:

     

    EUMETSAT  Geostationary Satellite Server

        https://www.eumetsat.int/website/home/index.html

     

    JMA Geostationary Satellite Server

        Meteorological Satellites - Japan Meteorological Agency -

     

    4.jpg

    12km Visible Light Spectrum

     

    6.jpg

    8km Visible Light Spectrum

     

    10 (1).jpg

    12km IR Light Spectrum

     

    10.jpg

    8km IR Light Spectrum

     

    10 (4).jpg

    12km Water Vapor

     

    10 (3).jpg

    8km Water Vapor

     

    Various IR Composite Images

    ECI5.JPGECI6.JPGECI7.JPGECI8.JPG

     

    Various Composite Water Vapor Images

    ECW1.JPGECW2.JPGECW3.JPGECW4.JPGir2.jpgrb.jpgwv.jpg

     

     

    Products and Various Applications Developed with Raspberry Pi


    Trident, an affordable underwater drone built with hackability in mind and powered by Raspberry Pi.

        https://www.raspberrypi.org/blog/openrov-underwater-exploration-with-raspberry-pi/


    NEC combines commercial-grade displays with the Compute Module for a brilliant solution

        https://www.raspberrypi.org/blog/compute-module-nec-display-near-you/


    Slice, the first ever Compute Module-based media player

        https://www.raspberrypi.org/blog/creating-and-kickstarting-slice-the-compute-module-based-media-player/

     

    CubeSats, a type of miniature satellite powered by the Compute Module

        https://www.raspberrypi.org/blog/compute-module-cubesats/


    The Raspberry Pi is being used to save the eyesight of people in India thanks to the Open Indirect Ophthalmoscope (OIO) project.

        https://www.raspberrypi.org/blog/ophthalmoscope-eyesight-india/

     

    Otto, A Hackable Camera Powered by Raspberry Pi

        https://www.raspberrypi.org/blog/otto-a-hackable-camera-powered-by-raspberry-pi/

     

    Ben Heck's DIY graphing calculator built with a Raspberry Pi

        https://www.raspberrypi.org/blog/ben-hecks-diy-graphing-calculator/

     

    Powered-by-Raspberry-Pi-Logo_Outline-Colour-Screen-500x153.png

        Is your product "Powered By Raspberry Pi"?

        https://www.raspberrypi.org/blog/powered-by-raspberry-pi/

     

        https://www.raspberrypi.org/trademark-rules/powered-raspberry-pi/

     

    Summary

         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.


Comments

Also Enrolling
Enrollment Closes: Nov 1 
Enroll
Enrollment Closes: Oct 18 
Enroll
Enrollment Closes: Nov 14 
Enroll
Enrollment Closes: Nov 6 
Enroll
Enrollment Closes: Oct 30 
Enroll
Enrollment Closes: Oct 23 
Enroll
Enrollment Closes: Nov 14 
Enroll
Enrollment Closes: Oct 23 
Enroll