RaspberryPiBoard

From eLinux.org
Revision as of 11:19, 31 December 2011 by MrPozor (talk | contribs) (Added mention of DVI-D port to HDMI to VGA Adaptor section)
Jump to: navigation, search


Logo of Raspberry Pi

This page collects information about Raspberry Pi Foundation's ultra-low-cost (~15GBP or 25USD) Linux computer for teaching computer programming to children.

The Raspberry Pi Foundation is a UK registered charity (Registration Number 1129409) which exists to promote the study of computer science and related topics, especially at school level, and to put the fun back into learning computing. We expect this computer to have many other applications both in the developed and the developing world.

Please note that the Raspberry Pi isn't released yet - this page is a community work in progress in preparation for the launch

NEWS:


Upcoming Events

Raspberry Pi Staff will be attending the following events:


The following are general-interest industry events and are not an indication that Raspberry Pi will be attending, exhibiting or speaking at the event. For Raspberry Pi event and speaker schedule, please contact press@raspberrypi.org.


February 2012

July 2012

  • O'Reilly Open Source Convention (OSCON) at Portland, Oregon Convention Center July 16-20, 2012. The Call for Papers is scheduled to be posted in November 2011.


Discuss: http://www.raspberrypi.org/forum/general-discussion/conferences-and-other-public-appearances

Provisional specification

Mock-up of the Raspberry Pi beta board

The first product is about the size of a credit card, and is designed to plug into a TV or be combined with a touch screen for a low cost tablet. The expected price is $25 for a fully-configured system.

  • 700MHz Broadcom BCM2835 media processor featuring an ARM11 ARM1176JZF-S core, Broadcom GPU core, DSP core and support for Package-on-Package (PoP) RAM
  • 128MiB (Model A) or 256MiB of SDRAM (Model B), stacked on top of the CPU as a PoP device
  • OpenGL ES 2.0
  • 1080p30 H.264 high-profile decode
  • Composite and HDMI video output (not at the same time)
  • One USB 2.0 port provided by the BCM2835
  • SD/MMC/SDIO memory card slot
  • General-purpose I/O (About 16 3v3) and various other interfaces, brought out to 1.27mm pin-strip
  • Optional integrated 2-port USB hub and 10/100 Ethernet controller (Model B)
  • Open software (Iceweasel, KOffice, Python)
  • Capability to support various expansion boards
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 + DSP + SDRAM)
CPU: 700 MHz ARM11
GPU: Broadcom VideoCore IV,[2] OpenGL ES 2.0, 1080p30 H.264 high-profile decode
Memory (SDRAM): 128 MiB 256 MiB
USB 2.0 ports: 1 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, Universal asynchronous receiver/transmitter (UART)[2]
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)

Availability

Estimated availability (as of 31st December 2011) is January 2012 for the first batch of 10 000. On 31st December 2011 at 22:00, the Foundation auctioned the first two of ten beta boards on a seven-day auction. The following eight were auctioned on the following days. Initially, there will be shipping from the UK and possibly the US, but will probably expand with local distributors by the second quarter of 2012.

Beginners guide

You just got your new Raspberry Pi device, and now? See beginners guides.

Accessories & Peripherals

Main article: RaspberryPiBoardVerifiedPeripherals

Case

A protective case is an often-cited required accessory. Cases are likely to be offered both directly from Raspberry Pi and from 3rd party companies such as Special Computing.

Power Adapters

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.

Expansion boards

It is planned that expansion boards will be offered both by Raspberry Pi Foundation and by 3rd parties, as of next year.

HDMI to VGA Adaptor

The Broadcom BCM2835 only provides HDMI output and composite output. DVI-D ports used on many computer monitors can be connected to HDMI using a simple passive adapter. RGB and other signals needed by RGB, S-VIDEO or VGA connectors are however not provided so additional componenty would be needed to generate these signals. Additional componentry would push the price beyond the $25 target and therefore won't happen.

A couple of options for VGA or component RGB outputs, bridging from either HDMI or the MIPI DSI interface:

Firstly, the following *might* work. Beagleboard people have reported various levels of success (mainly "issues"):

http://www.hdfury.com/

Something similar:

http://www.fit-pc.com/web/fit-pc2/accessories/fit-vga/

...it may need to be modified as described here:

http://blog.galemin.com/2011/03/dvi-d-to-vga-converter-for-beagleboard-xm/

Alternatively, it may be possible to design an expansion board that plugs into the LCD headers on the R.Pi. Here is something similar for Beagleboard:

http://boardzoo.com/product_info12.php

Hardware Details

The first product is about the size of a credit card, and is designed to plug into a TV or be combined with a touch screen accessory for a low cost tablet. The product will be available in two configurations: Model A and Model B. The expected price is $25 for a fully-configured Model-A system and around $35 for a Model B.

Components

(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 system-on-chip featuring:
    • CPU core: ARM1176JZF-S ARM11 core clocked at 700MHz; ARM VFP.
    • GPU core: a Broadcom VideoCore 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)
    • RAM: 128MiB (Model A) or 256MiB (Model B) of SDRAM. The RAM is physically stacked on top of the Broadcom media processor (package-on-package technology)
  • LAN9512 (Data Brief | Data Sheet) providing 10/100Mb Ethernet and 2x USB 2.0 (Model B)
  • S1: Micro USB power jack (5v)
  • S2: DSI interface. 15-pin surface mounted flat flex connector (possibly no-fit).
  • 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 (possibly no-fit).
  • 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:
    • 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)
    • 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)


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

Manual

A manual is currently in production by members of the Computing At School working group. This began on the 13 October 2011 and is due to be ready for early March 2012. The manual is aimed at the project's target audience, children, so that they can take their "First steps in Computing Science".

For the first release (~December 2011), there will mostly likely be very minimal documentation.

Schematic / Layout

Errata

Clocking

  • Provisional main CPU clock speed is 700MHz
  • No data currently released on the GPU or other component clock speeds

Power management

  • Target power consumption is <1W (This is for the A version, no power consumed from the USB plug.)

Preliminary Alpha board power usage measurements. This is with graphics output on the HDMI port, no power from USB plugs.

  • Input 7.5V, ~180mA Linux running only with prompt.
  • Input 7.5V, ~300mA heavy graphics running on system.

Graphics accelerator

The GPU is a Broadcom VideoCore IV.

Display Output Options

The following display outputs are supported on the board:

  • Composite video (NTSC and PAL) via an RCA plug.
  • HDMI 1.3a standard output.
  • Display Serial Interface (DSI) - via unpopulated 15-way flat flex connector.

These interfaces allow the use of a broad range of displays, including:

  • Televisions (HDMI or composite).
  • Computer monitors (HDMI/DVI-D cable) (VGA monitors would require either a composite or HDMI to VGA scan converter box).
  • DLP/Laser Pico Projectors (HDMI/DVI-D cable).
  • RAW LCD panels (DSI + interfacing hardware)

Notes:

  • The SOC does not support any kind of analog component video, including VGA, since the SOC is designed for mobile phone use where this would not be a requirement.
  • Composite and HDMI outputs can not be used at the same time (one or the other.)

Interfacing to Raw LCD Panels

Nokia N900 has 800x480 DCS LCD (afaik its like DSI, but has build in framebuffer). Replacement screen is about ~$40 (~$50 with 4pin resistive touchscreen).

Nokia N8 has AMOLED 360x640 pixels DSI LCD. Replacement screen is about ~$35, another ~$25 for Multitouch Synaptics T1021A touchscreen (I2C + interrupt IO, no docs/drivers).


Potential LVDS interfacing chips :

TC358764/5 Display Bridge (MIPI® DSI to LVDS)

DVI receiver TFP401A, TFP403, or TFP501 + LVDS transmitter SN75LVDS83B or SN65LVDS93A (Mentioned earlier fit-VGA is build around TFP401A, probably many more "active" DVI2VGA cables are build the same way)


I2C/SPI ADC can be used to interface 4 pin resistive Touch Screens, For example STMPE812A

16x2 LCD Displays

The old-style 2-line, 16-character LCD displays can be commonly controlled over UART, thus providing a cheap way to display values for sensors etc.

Interfacing to Camera Module

is Sony sub-LVDS same as MIPI CSI-2? Sony IMX020 5Mbip module is available for $5-7 (SE K850i replacement camera).

Looks like Nokia N95 uses CSI-2 5Mpix camera module with autofocus. ~$15 replacement part.

General Purpose Input/Output (GPIO), I2C, I2S, SPI, UART

Production Board GPIO Header

The production board has a 26-pin 2.54mm expansion header, arranged in a 2x13 strip. They provide 8 GPIO pins plus access to I2C, SPI, UART), as well as +3V3, +5V and GND supply lines. Pin one is column 0 on the bottom row. All the UART, SPI and I2C pins can be reconfigured as GPIO pins, to provide a total of 17 GPIO pins.[6]

Voltage levels are 3v3. There is no over-voltage protection on the board - the intention is that people interested in serious interfacing will use an external board with buffers, level conversion and analog I/O rather than soldering directly onto the main board.

At least some of the GPIO pins support PWM.[7]

Each GPIO can interrupt, high/low/rise/fall/change.[8]

It is also possible to reconfigure some of the pins to provide an ARM JTAG interface.[9]

It is also possible to reconfigure some of the pins to provide an I2S or PCM interface.[10]

It is also possible to reconfigure some of the pins to provide a second I2C interface. [no-ref]

Kernel boot messages go to the UART at 115200bps.

Pinout:

Top Row 5V0 DNC GND TXD RXD GPIO1 DNC GPIO4 GPIO5 DNC GPIO6 SPI_CE0_N SPI_CE1_N
Bottom Row 3V3 SDA0 SCL0 GPIO7 DNC GPIO0 GPIO2 GPIO3 DNC SPI_MOSI SPI_MISO SPI_SCLK DNC


Colour legend
+5V
+3.3V
Do not connect
UART
GPIO
SPI
I2C

Colour-coded Image: https://sites.google.com/site/burngatehouse/home/drawings/GPIOs.gif

Maximum permitted current draw from the 3v3 pin is 50mA. Maximum permitted current draw from the 5v pin is the USB input current (usually 1A) minus any current draw from the rest of the board, or about 650 mA. [11]

Driver support

The Foundation will not include a GPIO driver in the initial release, standard linux GPIO drivers should work with minimal modification.[12] The Foundation will not include a SPI driver in the initial release, we hope the community might write one.[13] The Foundation will not include an I2C driver in the initial release, we hope the community might provide one, standard linux I2C drivers should work with minimal modification.[14]

MIPI CSI-2

On the production board, we bring out the MIPI CSI-2 interface to pads for an unpopulated 15-way flat flex connector

DSI

On the production board, we bring out the DSI interface to pads for an unpopulated 15-way flat flex connector

CEC

HDMI-CEC is supported by hardware but some driver work will be needed and currently isn't exposed into Linux userland.

Eben notes that he has seen CEC demos on the Broadcom SoC they are using.

Software Details

BootRom

The boards do not include NAND or NOR storage - everything is on the SD card, which has a FAT32 partition with GPU firmware and a kernel image, and an EXT2 partition with the rootfs.

We're not currently using a bootloader - we actually boot via the GPU, which contains a proprietary RISC core (wacky architecture ;) . The GPU mounts the SD card, loads GPU firmware and brings up display/video/3d, loads a kernel image, resets the SD card host and starts the ARM.

You could replace the kernel image with a bootloader image, and that would work fine.

Distributions

Source code and binaries for Raspberry Pi will be available at various places from launch, including pre-built Linux distributions.

Ubuntu is currently listed as the default distribution on the Raspberry Pi website, but the Ubuntu developers have now stated they will not be supporting the ARMv6 architecture, so Ubuntu is likely to be dropped.

Eben says (regarding default distribution): "Either Ubuntu or Fedora; the main point in Fedora’s favour is their ongoing support for ARMv6 architectures."

Main page: RaspberryPiBoardDistributions

Development environments

Instead of just using compiler + editor, you can use "development tool chains" which integrate compiler, build system, packaging tools etc. in one tool chain.

Compiler

The Broadcom processor on Raspberry Pi contains an ARM v6 general purpose processor and a Broadcom VideoCore IV GPU. No data is currently available on other cores (if any) available in the BCM2835.

ARM

There is broad compiler support including gcc - please see ARM Compilers

The ARM is capable of around 500 BOGOMIPS [15], 5400 LINPACK KFLOPS with software floating point and 22000 KFLOPS with softfp hardware floating point[16].

GPU

The GPU provides APIs for Open GL ES 2.0, hardware-accelerated OpenVG, and 1080p30 H.264 high-profile decode.

The GPU is capable of 1Gpixel/s, 1.5Gtexel/s or 24 GFLOPs of general purpose compute and features a bunch of texture filtering and DMA infrastructure - the Raspberry Pi team are looking at how they can make this available to application programmers.

The GPU blob is an 18MB as an elf file, plus libraries. It does an awful lot. [17]

DSP

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).

Other software

Flash

From Eben: "We'll have to take a look. We support hardware-accelerated OpenVG, and have had Flash Lite running incredibly fast. Personally, I'd like to get the official hardware-accelerated Flash 10 going on there, running against OpenGL ES 2.0, but that's something to think about after the launch."

Software hints

This section collects hints, tips & tricks for various software components.

Performance

Performance Page

FAQ

  • For Raspberry Pi frequently asked questions (FAQ) see FAQ.
  • Raspberry Pi Forum FAQ: Forum FAQ

News articles and blog posts about Raspberry Pi

Articles

Extension:RSS -- Error: "http://www.raspberrypi.org/wp-content/plugins/mingle-forum/feed.php?topic=70" is not in the whitelist of allowed feeds. There are no allowed feed URLs in the whitelist.

Video

Audio

Photos

See also Schematic / Layout

Raspberry Pi wiki pages


Subpages

<splist

parent=
showparent=no
sort=desc
sortby=title
liststyle=ordered
showpath=no
kidsonly=no
debug=0

/>

Links

Home page

raspberrypi.org (RaspberryPi home)

  • Using Google you can search raspberrypi.org (including Forum) using site:raspberrypi.org <search term>. The home page and forum each have their own search facilitiy also.

Manuals and resources

Contact and communication

Books

Education & Training materials

Main page: RaspberryPiBoard/EducationalLinks

Programming

Raspberry Pi plans to support Python and C as primary teaching languages, but expect to have some sort of BASIC on there too. Perhaps even BBC BASIC or SuperBASIC depending on copyright issues.


Programming languages, IDEs, etc

Languages tested on Alpha board

  • Interp
  • Scala
  • Clojure
  • OCaml
  • gcc
  • g++
  • Python [18]
  • Perl
  • Ruby 1.9.2 (KidsRuby)

Expected to work

See also: RaspberryPiBoard/EducationalLinks for education-friendly languages.

Graphical Programming

Robotics

Uncategorised

See also Category:Education

Past events

Manufacturing

Compliancy

Products are RoHS and CE compliant. Please contact Raspberry Pi for details regarding WEEE in your country.

Shipping

Raspberry Pi will ship worldwide to the best of their ability (ie subject to UK export and local import laws).

Raspberry Pi devices will ship from the UK (and possibly US) and Raspberry Pi will be looking to sign up distribution partners in due course.

To have an idea of shipping cost why don't you look at the Royal Mail website: http://sg.royalmail.com/portal/rm/PriceFinder?catId=23500532&gear=pricingcalc&campaignid=pricefinder_redirect

Look for a package just bigger then 85mm x 55mm x 30mm, weight about 55 grams.

As an example: New Zealand, small package 100grams, air mail 5 days : £2.05

Thanks

  • The layout for this page is based on the excellent BeagleBoard page on this site.
  • Some of the text on this page has been adapted from contributions made by the contributors to the BeagleBoard page on this site.

References

Foreign Language Translations