RPi Hardware

From eLinux.org
Revision as of 01:48, 10 March 2012 by Oztrailrider (talk | contribs) (Specifications)
Jump to: navigation, search

RaspPi.png Back to the Hub

Hardware & Peripherals:

Hardware - detailed information about the Raspberry Pi boards.

Hardware History - guide to the Raspberry Pi models.

Low-level Peripherals - using the GPIO and other connectors.

Expansion Boards - GPIO plug-in boards providing additional functionality.

Screens - attaching a screen to the Raspberry Pi.

Cases - lots of nice cases to protect the Raspberry Pi.

Other Peripherals - all sorts of peripherals used with the Raspberry Pi.


The unpopulated Rpi bèta board

The first product is the size of a credit card, and is designed to plug into a TV or HDMI monitor. It comes in two variants, model A and B, with B having more features. The expected price is $25 for model A and $35 for model B. The GPIO pins on each board allow the use of optional expansion boards.

Those who are looking to set up a Raspberry Pi for the first time, see RPi Hardware Basic Setup.


Model A Model B
Target price:[1] US$25 (GBP £16) US$35 (GBP £22)
System-on-a-chip (SoC):[1] Broadcom BCM2835 (CPU + GPU + SDRAM)
CPU: 700 MHz ARM11 ARM1176JZF-S core
GPU: Broadcom VideoCore IV,OpenGL ES 2.0,OpenVG 1080p30 H.264 high-profile encode/decode
Memory (SDRAM)iB 256 MiB (previously listed as 128MiB for model A, but an upgrade to 256MiB was announced on 29 Feb 2012)
USB 2.0 ports: 1(provided by the BCM2835) 2 (via integrated USB hub)
Video outputs:[1] Composite video|Composite RCA, HDMI (not at the same time)
Audio outputs:[1] TRS connector|3.5 mm jack, HDMI
Audio inputs: none, but a USB mic or sound-card could be added
Onboard Storage: Secure Digital|SD / MMC / SDIO card slot
Onboard Network:[1] None 10/100 wired Ethernet RJ45
Low-level peripherals: General Purpose Input/Output (GPIO) pins, Serial Peripheral Interface Bus (SPI), I²C, I²S[2], Universal asynchronous receiver/transmitter (UART)
Real-time clock:[1] None
Power ratings (provisional, from alpha board): 500mA, (2.5 Watt) [1] 700mA, (3.5 Watt)
Power source:[1] 5V via Micro USB or GPIO header
Size: 85.60mm x 53.98mm[3] (3.370 × 2.125 inch)


A diagram denoting the places of the different components on the Rpi, made by Paul Beech, edited to show 256MB ram for both boards

(Provisional - some of the expansion interfaces won't be available on production boards) (PCB IDs are those of the Model B Beta board)

  • SoC: Broadcom BCM2835 media processor (datasheet, BCM2835 datasheet errata) system-on-chip featuring:
    • CPU core: ARM1176JZF-S ARM11 core clocked at 700MHz; ARM VFP. The ARM11 core implements the ARMv6 Architecture. For details on ARM instruction sets and naming conventions, see ARM architecrture and List of ARM microprocessor cores.
    • GPU core: a Broadcom VideoCore IV GPU providing OpenGL ES 1.1, OpenGL ES 2.0, hardware-accelerated OpenVG 1.1, Open EGL, OpenMAX and 1080p30 H.264 high-profile decode. There are 24 GFLOPS of general purpose compute and a bunch of texture filtering and DMA infrastructure. Eben worked on the architecture team for this and the Raspberry Pi team are looking at how they can make some of the proprietary features available to application programmers
    • DSP core: There is a DSP, but there isn't currently a public API (Liz thinks the BC team are keen to make one available at some point)
    • 256MiB of SDRAM. The RAM is physically stacked on top of the Broadcom media processor (package-on-package technology)
  • LAN9512 (Data Brief | Data Sheet)(Model B) providing:
    • 10/100Mb Ethernet (Auto-MDIX)[4]
    • 2x USB 2.0
  • S1: Micro USB power jack (5v - Power Only)
  • S2: DSI interface. 15-pin surface mounted flat flex connector.
  • S3: HDMI connector providing HDMI 1.3a out
  • S4: Composite Video connector: RCA
  • S5: MIPI CSI-2 interface. 15-pin surface mounted flat flex connector.
  • S6: Audio connector: 3.5mm stereo jack (output only)
  • S8: SD/MMC/SDIO memory card slot (underside)
  • S7: Either 1x USB 2.0 (Model A) 2x USB 2.0 (Model B)
  • P1: 26-pin 2.54mm header expansion (header not fitted), providing: see Low-level peripherals
    • 8 GPIOs at 3v3
    • 2-pin UART serial console, 3v3 TTL (debug); or 2 GPIOs at 3v3
    • I2C interface (3v3); or 2 GPIOs at 3v3
    • SPI interface (3v3); or 5 GPIOs at 3v3
    • 3v3, 5v and GND supply pins
    • ARM JTAG (if pins are reconfigured in software)
    • Second I2C interface (3v3) (if pins are reconfigured in software)
    • I2S interface (if pins are reconfigured in software, hardware hack may be required[2])
    • 6 pins reserved for future use
  • P2 and P3: 8-pin and 7-pin 2.54mm header expansion (header not fitted), providing:
    • 6-pin GPU JTAG (ARM11 pinout)
  • P4: 10/100Mb RJ45 Ethernet jack (Model B)
  • 5 Status LEDs[5][6][7]:
    • D5(Yellow) - OK - SDCard Access (via GPIO16)
    • D6(Red) - PWR - 3.3V Power
    • D7(Green) - FDX - Full Duplex (LAN) (Model B)
    • D8(Green) - LNK - Link/Activity (LAN) (Model B)
    • D9(Yellow) - 10M - 10/100Mbit (LAN) (Model B)

  • Board size: 85.60mm x 53.98mm. Overall height expected to be less than 25mm. [8]
  • Weight: <40g? (Alpha board weighs ~55g [9])
  • 6 layer PCB [8]

Schematic / Layout


The board takes fixed 5V input, (with the 1V2 core voltage generated directly from the input using the internal switch-mode supply on the BCM2835 die). This permits adoption of the micro USB form factor, which, in turn, prevents the user from inadvertently plugging in out-of-range power inputs; that would be dangerous, since the 5V would go straight to HDMI and output USB ports, even though the problem should be mitigated by some protections applied to the input power: The board provides a polarity protection diode, a voltage clamp, and a self-resetting semiconductor fuse.

  • Board A: 5V, 500 mA (2.5W) without any devices connected
  • Board B: 5V, 700 mA (3.5W) without any devices connected
  • As the 5V rail is brought out in the GPIO pins, you can power the Rpi from there too. You should mind however, that those are behind the power protection circuitry , so you should provide your own.
  • It is possible to power the Rpi from a powered USB hub the Rpi controls, but only on 'dumb' devices, that allow the port to supply the full current without waiting for the usb device to ask for it[1]. As the power input of the Rpi doesn't have its data leads connected, there is no chance for a communication loop of some sorts.
  • POE (power over ethernet) is currently not available for the Rpi (but nobody stops you from taking your soldering iron and doing it yourself)