Raspberry Pi Compute Dev Kit - BCM2835 32Bits ARM

From Geeetech Wiki
Revision as of 01:36, 7 August 2014 by Admin (talk | contribs)

Jump to: navigation, search

Introduction

Raspberry Compute Modules (1).jpg

Sometimes the Raspberry Pi seems too big for us if we don’t have much room for it. At this time, we may desire for a smaller Pi. The Raspberry Pi compute module is a small compact module which has the same key ingredients and performance as a regular Pi. It’s so slim that can fit into a DDR2 memory slot. The compute module contains the BCM2835 processor and 512Mbyte of RAM as well as a 4Gbyte eMMC Flash device. This module is designed for people who want to create their own PCB. The compute module IO board is a board produced for the compute module. The board provides the power to the module, the HDMI and USB connectors to make up an entire system. You can program the module’s Flash memory; access the interfaces via the board. So if you are going to create your own PCB, this kit must be your best choice.

Features

  • Full flexibility of the BCM2835 SoC
  • many more GPIOs and interfaces are available as compared to the Raspberry Pi
  • 32 bits
  • Flexible & Rapid Prototype Development
  • Aimed at business and industrial users
  • Large Range of GPIOs & Interfaces
  • On board 4GB eMMC Flash memory

Specifications

  • BCM2835 processor and 512Mbyte of RAM
  • 67.6x30mm board
  • 4GB of eMMC Flash
  • micro USB connector type B
  • 2 x CSI ports for camera boards
  • 2 x DSI ports for display boards
  • standard DDR2 SODIMM connector
  • Full size HDMI port
  • Micro USB power connector

Hardware resources

Raspberry Compute Modules.jpg

Power Supply

The Compute Module has six separate supplies that must be present and powered at all times; you cannot leave any of them unpowered, even if a specific interface or GPIO bank is unused. The six supplies are as follows:

  • VBAT powers the BCM2835 processor core. It feeds the SMPS that generates the chip core voltage.
  • 3V3 powers various BCM2835 PHYs, IO and the eMMC Flash memory.
  • 1V8 powers various BCM2835 PHYs, IO and SDRAM.
  • VDAC powers the composite (TV-out) DAC.
  • GPIO0-27_VREF powers the GPIO 0-27 IO bank.
  • GPIO28-45_VREF powers the GPIO 28-45 IO bank.

Powering the module.jpg

Note that the voltage range for best SMPS efficiency is ~3.3 - 4.3V.

Run the kits

  • Setting up

The IO board provides HDMI and USB host ports for hooking up a display and input devices. However, my preferred hardware console is a trusty serial connection, and so with the Compute Module inserted into the SO-DIMM socket on the IO board, I connected up a USB UART.

5343f83bc3984fb783f350460ab30198.jpg

Power was then supplied via the Micro USB connector labelled Power In.

  • Resources

5343f848f4b84e75bf3f52a30ab30198.jpg

The Compute Module boots in just the same way as the Raspberry Pi Model A or B, with the difference being that the boot device is on-board flash storage rather than an SD card.

Logging in and executing a few familiar commands we see that we have a root filesystem of 3.5GB and that the only network interface is loopback.

I decided to connect a USB Ethernet adapter to see if this would provide a new network interface.

5343f856d5544d72a61652a30ab30198.jpg

However, while the Ethernet adapter powered up and was detected by Linux, it wasn't supported by the kernel or a loadable module. So it looks as though adding support for peripherals will require copying a new kernel or modules onto the on-board flash — which should be simple enough to do.

  • Hello World

5343f8665a6c48a1bcee52c50ab30198.jpg

As mentioned previously the IO board provides plenty of 0.1” breakout, and just to confirm that the GPIO pins functioned as expected I hooked up an LED and attempted to toggle the pin from the bash prompt. Sure enough, upon exporting the pin, setting its direction to output and value to 1, the LED illuminated. No surprises here!

  • Bountiful prototyping

5343f87290f44f2f9652521f0ab30198.jpg

The IO board provides access to 46 pins of GPIO, which is a good deal more than you get with a Raspberry Pi Model A or B. In addition to which the 0.1” pitch headers also provide plenty of GND, 1v8, 3v3 and 5v power pins. And just above the two long rows of headers are jumpers which allow you to set the logic levels for pins 0-27 and 28-45 respectively, to either 1v8 or 3v3.

Interestingly, the J15 Micro USB connector is labelled “USB BOOT”. From notes in the schematic it appears that this is used to boot the module from a USB connected host, and once booted access is provided to the on-board flash. Presumably this is how you would load an O/S and applications.

The board also provides CSI and DSI ports for serial cameras and displays — double the number in fact, with two of each.

5343f8877e48440f83c1520e0ab30198.jpg

Although the connectors used for these ports are higher density than those used with a Model A or B, and so at the very least new flex cables will be required. My guess is that the current Raspberry Pi cameras will be supported via a new cable — but that remains to be seen.

Resource

Instruction Media:Rpi compute modules instruction.pdf

Schematic Media:Rpi compute modules schematic.pdf