This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
en:iot-open:hardware2:raspberrypi [2023/11/07 16:47] – [Raspberry Pi General Information] pczekalski | en:iot-open:hardware2:raspberrypi [2023/11/23 11:08] (current) – pczekalski | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ==== ==== | + | <pagebreak> |
- | <box # | + | ====== Raspberry Pi General Information ====== |
- | <box # | + | {{: |
- | ==== Raspberry Pi General Information ==== | + | The Raspberry Pi is a series of small single-board computers developed in the UK by the Raspberry Pi Foundation to promote modern computer science in schools and create electronic communities. Adding the 40-pin GPIO connector to the computer board allows developers to improve their programming skills and opens new horizons in controlling processes and devices unavailable for desktop computers. According to the Raspberry Pi Foundation, the board' |
- | <box # | + | The first generation of this new board type was developed and then released in February 2012 – **Raspberry Pi Model B**. Each Raspberry Pi board contains hardware modules which together make it a wholly usable PC like a computer whose size fits the typical credit card (85/56 mm) size and small power consumption |
- | <box # | + | |
- | The Raspberry Pi is a series of small single-board computers developed in the UK by the Raspberry Pi Foundation to promote modern computer science in schools and developing electronic communities. Adding the 40-pin GPIO connector to the computer board allows developers not only to improve their programming skills but also to open new horizons in controlling processes and devices not available for desktop computers. According to the Raspberry Pi Foundation, the board' | + | A dozen even more powerful |
- | The first generation of this new board type was developed and then released in February 2012 – **Raspberry Pi Model B**. Each Raspberry Pi board contains hardware modules which together make it a fully usable PC like a computer whose size fits the typical credit card (85/56 mm) size and small power consumption < 3.5 W. This makes this kind of single board computer one of the most popular in the developers' | + | |
- | + | ||
- | There are a dozen clones, | + | |
Because the power consumption in the latest devices, such as Raspberry Pi 4 and 5, can exceed 20W, they are considered mains powered and, thus, in the IoT ecosystem, play the role of gateways, routers and, in general, fog-class devices rather than edge-class. Still, this classification is fuzzy as there are dozens of examples of how to use Raspberry Pi, e.g. sensors-network component. | Because the power consumption in the latest devices, such as Raspberry Pi 4 and 5, can exceed 20W, they are considered mains powered and, thus, in the IoT ecosystem, play the role of gateways, routers and, in general, fog-class devices rather than edge-class. Still, this classification is fuzzy as there are dozens of examples of how to use Raspberry Pi, e.g. sensors-network component. | ||
- | Besides advanced fog-class devices, Raspberry recently started to hit the edge-class IoT development market (low-powered, | + | Besides advanced fog-class devices, Raspberry recently started to hit the edge-class IoT development market (low-powered, |
- | + | ||
- | ==== Hardware ==== | + | |
- | Hardware boards (depending on the manufactured model) contain interfaces: | + | |
- | The Raspberry Pi pico is the board that uses the chip RP2040 designed by Raspberry Pi. It is intended for use as a low-cost, low-power device with quite big computational possibilities. Raspberry Pi decided also to make the RP2040 chip available for buying to make it possible for designers to create their own projects. | + | |
- | <todo @pczekalski> | + | |
- | ==== Processor ==== | + | |
- | The first Raspberry Pi 2 models use the 900 MHz Broadcom BCM2836 SoC 32-bit quad-core ARM Cortex-A7 processor, with a shared 256 KB L2 cache. After these earlier models, the Raspberry Pi 2 V1.2 has been upgraded to a Broadcom BCM2837 SoC equipped with a 1.2 GHz 64-bit quad-core ARM Cortex-A53 processor. Next Raspberry Pi 3 series uses the same SoC. They use the Broadcom BCM2837 SoC with a 1.2 GHz 64-bit quad-core ARM Cortex-A53 processor, equipped with 512 KB shared L2 cache. The Raspberry Pi 3B+ uses the same processor (BCM2837B0) running at 1.4 GHz. The Raspberry Pi 4 is based on Broadcom BCM2711, a quad-core Cortex-A72 64-bit SoC working at 1.5 GHz. Next Raspberry Pi generations are going to be more and more powerful, but their power consumption is still rising to force developers to use CPU and GPU heatsinks. | + | |
- | + | ||
- | ==== RAM ==== | + | |
- | The initial Raspberry Pi boards were designed with 128 MB RAM which was by default allocated between the GPU and CPU. In the newer edition (including Model B and Model A) the RAM was extended to 256 MB and split into the regions. The default split was 192 MB (RAM for CPU), which is sufficient for standalone 1080p video decoding, or for 3D modelling. Models B with 512 MB RAM initially, memory was split into files released (arm256_start.elf, | + | |
- | + | ||
- | ==== Networking ==== | + | |
- | The Model A, A+ and Pi Zero have no dedicated Ethernet interface and can be connected to a network using an external USB Ethernet or WiFi adapter. In Models B and B+, the Ethernet port is built-in to the USB Ethernet adapter using the SMSC LAN9514 chip. The Raspberry Pi 3 and Pi Zero W (wireless) models are equipped with 2.4 GHz WiFi 802.11n (150 Mbit/s) and Bluetooth 4.1 (24 Mbit/s) based on Broadcom BCM43438 FullMAC chip. The Raspberry Pi 3 also has a 10/100 Ethernet port. The latest Raspberry Pi 4 contains a dual band 2.4 / 5 GHz WiFi network adapter (IEEE 802.11ac), Bluetooth 5.0, and Gigabit Ethernet. | + | |
- | ==== Peripherals ==== | + | |
- | The Raspberry Pi may be controlled with any generic USB computer keyboard and mouse. It can also use USB storage, USB to MIDI converters, and virtually any other device/ | + | |
- | Other peripherals can be attached through the various pins and connectors on the surface of the Raspberry Pi. | + | |
- | + | ||
- | ==== Video subsystem ==== | + | |
- | The video controller supports standard modern TV resolutions, | + | |
- | + | ||
- | ==== Real-Time Clock ==== | + | |
- | None of the current Raspberry Pi models is equipped with a built-in real-time clock. Developers which needs the real clock time in their project can retrieve the time from a network time server (NTP) or use the external RTC module connected to the board via SPI or I²C interface. To save the file system consistency of time, the Raspberry Pi automatically saves the time on shutdown, and reload it time at boot. One of the best RTC solutions for keeping the proper boards time is to use the I²C DS1307 chip containing hardware clock with battery power supply. | + | |
- | + | ||
- | ==== Specification ==== | + | |
- | < | + | |
- | < | + | |
- | ^ Version | + | |
- | ^ ::: | **RPi 1 Model A** | **RPi 1 Model A+** | **RPi 3 Model A+** | | + | |
- | ^Release date |2/ | + | |
- | ^Target price (USD) |25|20|25| | + | |
- | ^Instruction set |ARMv6Z (32-bit)||ARMv8 (64-bit)| | + | |
- | ^SoC |Broadcom BCM2835||Broadcom BCM2837B0| | + | |
- | ^FPU |VFPv2; NEON not supported||VFPv4 + NEON| | + | |
- | ^CPU |1× ARM1176JZF-S 700 MHz||4× Cortex-A53 1.4 GHz| | + | |
- | ^GPU | Broadcom VideoCore IV @ 250 MHz (BCM2837: 3D part of GPU @ 300 MHz, video part of GPU @ 400 MHz) ||| | + | |
- | ^ ::: | OpenGL ES 2.0 (BCM2835, BCM2836: 24 GFLOPS / BCM2837: 28.8 GFLOPS) | + | |
- | ^ ::: | MPEG-2 and VC-1 (with license), 1080p30 H.264/ | + | |
- | ^Memory (SDRAM) | + | |
- | ^USB 2.0 ports |1 (direct from BCM2835 chip)|| | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^Video input | 15-pin MIPI camera interface (CSI) connector, used with the Raspberry Pi camera or Raspberry Pi NoIR camera | + | |
- | ^Video outputs | + | |
- | ^Audio inputs | + | |
- | ^Audio outputs | + | |
- | ^On-board storage | + | |
- | ^On-board network | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^Low-level peripherals | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^Power ratings | + | |
- | ^Power source | + | |
- | ^Size |85.60 mm × 56.5 mm (3.370 in × 2.224 in), excluding protruding connectors|65 mm × 56.5 mm × 10 mm (2.56 in × 2.22 in × 0.39 in), same as HAT board|65 mm x 56.5 mm| | + | |
- | ^Weight | + | |
- | ^Console | + | |
- | ^Generation | + | |
- | ^Obsolescence | + | |
- | ^ | ::: | ::: | ::: | | + | |
- | ^Statement | + | |
- | ^Type ^ **Model A** ^^| | + | |
- | </ | + | |
- | + | ||
- | < | + | |
- | < | + | |
- | ^ Version | + | |
- | ^ ::: | **RPi 1 Model B** | **RPi 1 Model B+** | **RPi 2 Model B** | **RPi 2 Model B v1.2** | + | |
- | ^Release date |April–June 2012|7/ | + | |
- | ^Target price (USD) |35|25|35|||| | + | |
- | ^Instruction set |ARMv6Z (32-bit)||ARMv7-A (32-bit)|ARMv8-A (64/ | + | |
- | ^SoC |Broadcom BCM2835||Broadcom BCM2836|Broadcom BCM2837||Broadcom BCM2837B0| | + | |
- | ^FPU |VFPv2; NEON not supported||VFPv3 + NEON|VFPv4 + NEON||| | + | |
- | ^CPU |1× ARM1176JZF-S 700 MHz||4× Cortex-A7 900 MHz|4× Cortex-A53 900 MHz|4× Cortex-A53 1.2 GHz|4× Cortex-A53 1.4 GHz| | + | |
- | ^GPU | Broadcom VideoCore IV @ 250 MHz (BCM2837: 3D part of GPU @ 300 MHz, video part of GPU @ 400 MHz) |||||| | + | |
- | ^ ::: | OpenGL ES 2.0 (BCM2835, BCM2836: 24 GFLOPS / BCM2837: 28.8 GFLOPS) | + | |
- | ^ ::: | MPEG-2 and VC-1 (with license), 1080p30 H.264/ | + | |
- | ^Memory (SDRAM) | + | |
- | ^USB 2.0 ports |2 (via on-board 3-port USB hub)|4 (via on-board 5-port USB hub)||||| | + | |
- | ^ ::: | ::: | ::: | ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | ::: | ::: | ::: | | + | |
- | ^Video input | 15-pin MIPI camera interface (CSI) connector, used with the Raspberry Pi camera or Raspberry Pi NoIR camera | + | |
- | ^Video outputs | + | |
- | ^Audio inputs | + | |
- | ^Audio outputs | + | |
- | ^On-board storage | + | |
- | ^On-board network | + | |
- | ^ ::: | ::: | ::: | ::: | ::: |802.11b/ | + | |
- | ^ ::: | ::: | ::: | ::: | ::: |Bluetooth 4.1 BLE|Bluetooth 4.2 LS BLE| | + | |
- | ^Low-level peripherals | + | |
- | ^ ::: | | ::: | ::: | ::: | ::: | ::: | | + | |
- | ^ ::: |An additional 4× GPIO are available on the P5 pad if the user is willing to make solder connections| ::: | ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | | ::: | ::: | ::: | ::: | ::: | | + | |
- | ^Power ratings | + | |
- | ^Power source | + | |
- | ^Size |85.60 mm × 56.5 mm (3.370 in × 2.224 in), excluding protruding connectors||||85.60 mm × 56.5 mm × 17 mm (3.370 in × 2.224 in × 0.669 in)|| | + | |
- | ^Weight | + | |
- | ^Console | + | |
- | ^Generation | + | |
- | ^Obsolescence | + | |
- | ^ | ::: | ::: | ::: | ::: | ::: | ::: | | + | |
- | ^Statement | + | |
- | ^Type ^ **Model B** ^^^^^| | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | <todo @pczekalski> | + | |
- | < | + | |
- | < | + | |
- | ^ Version | + | |
- | ^ ::: | **Compute Module 1** | **Compute Module 3** | **Compute Module 3 lite** | + | |
- | ^Release date |4/ | + | |
- | ^Target price (USD) |$30 (in batches of 100)|30|25|| | + | |
- | ^Instruction set |ARMv6Z (32-bit)|ARMv8-A (64/ | + | |
- | ^SoC |Broadcom BCM2835|Broadcom BCM2837||Broadcom BCM2837B0| | + | |
- | ^FPU |VFPv2; NEON not supported|VFPv4 + NEON||| | + | |
- | ^CPU |1× ARM1176JZF-S 700 MHz|4× Cortex-A53 1.2 GHz||| | + | |
- | ^GPU | Broadcom VideoCore IV @ 250 MHz (BCM2837: 3D part of GPU @ 300 MHz, video part of GPU @ 400 MHz) |||| | + | |
- | ^ ::: | OpenGL ES 2.0 (BCM2835, BCM2836: 24 GFLOPS / BCM2837: 28.8 GFLOPS) | + | |
- | ^ ::: | MPEG-2 and VC-1 (with license), 1080p30 H.264/ | + | |
- | ^Memory (SDRAM) | + | |
- | ^USB 2.0 ports |1 (direct from BCM2835 chip)|1 (direct from BCM2837 chip)||| | + | |
- | ^ ::: | ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | ::: | | + | |
- | ^Video input |2× MIPI camera interface (CSI)||| | | + | |
- | ^Video outputs | + | |
- | ^Audio inputs | + | |
- | ^Audio outputs | + | |
- | ^On-board storage | + | |
- | ^On-board network | + | |
- | ^ ::: | ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | ::: | | + | |
- | ^Low-level peripherals | + | |
- | ^ ::: | ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | ::: | | + | |
- | ^Power ratings | + | |
- | ^Power source | + | |
- | ^Size |67.6 mm × 30 mm (2.66 in × 1.18 in)|67.6 mm × 31 mm (2.66 in × 1.22 in)||| | + | |
- | ^Weight | + | |
- | ^Console | + | |
- | ^Generation | + | |
- | ^Obsolescence | + | |
- | ^ | ::: | ::: | ::: | ::: | | + | |
- | ^Statement | + | |
- | ^Type ^ **Compute Module%%*%%** | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | < | + | |
- | < | + | |
- | ^ Version | + | |
- | ^ ::: | **RPi Zero PCB v1.2** | + | |
- | ^Release date |11/ | + | |
- | ^Target price (USD) |5||10| | + | |
- | ^Instruction set |ARMv6Z (32-bit)||| | + | |
- | ^SoC |Broadcom BCM2835||| | + | |
- | ^FPU |VFPv2; NEON not supported||| | + | |
- | ^CPU |1× ARM1176JZF-S 1 GHz||| | + | |
- | ^GPU | Broadcom VideoCore IV @ 250 MHz (BCM2837: 3D part of GPU @ 300 MHz, video part of GPU @ 400 MHz) ||| | + | |
- | ^ ::: | OpenGL ES 2.0 (BCM2835, BCM2836: 24 GFLOPS / BCM2837: 28.8 GFLOPS) | + | |
- | ^ ::: | MPEG-2 and VC-1 (with license), 1080p30 H.264/ | + | |
- | ^Memory (SDRAM) | + | |
- | ^USB 2.0 ports |1 Micro-USB (direct from BCM2835 chip)||| | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^Video input |None|MIPI camera interface (CSI)|| | + | |
- | ^Video outputs | + | |
- | ^Audio inputs | + | |
- | ^Audio outputs | + | |
- | ^On-board storage | + | |
- | ^On-board network | + | |
- | ^ ::: | ::: | ::: |Bluetooth 4.1 BLE| | + | |
- | ^ ::: | ::: | ::: | | | + | |
- | ^Low-level peripherals | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^ ::: | ::: | ::: | ::: | | + | |
- | ^Power ratings | + | |
- | ^Power source | + | |
- | ^Size |65 mm × 30 mm × 5 mm (2.56 in × 1.18 in × 0.20 in)||| | + | |
- | ^Weight | + | |
- | ^Console | + | |
- | ^Generation | + | |
- | ^Obsolescence | + | |
- | ^ | ::: | ::: | ::: | | + | |
- | ^Statement | + | |
- | ^Type ^ **Zero** | + | |
- | </ | + | |
- | + | ||
- | < | + | |
- | < | + | |
- | ^ Version | + | |
- | ^ | **Pi4** | + | |
- | ^ Release date | 01/ | + | |
- | ^ SoC | Broadcom BCM2711 | + | |
- | ^ CPU | 1,5 GHz quad-core ARM-8 Cortex-A72 (64-bit) | + | |
- | ^ GPU | Broadcom VideoCore VII || | + | |
- | ^ Memory (SDRAM) | + | |
- | ^ USB ports | USB 2x2.0 2x3.0 || | + | |
- | ^ Video outputs | + | |
- | ^ Audio outputs | + | |
- | ^ On-board storage | + | |
- | ^ On-board network | + | |
- | ^ Low-level peripherals | + | |
- | ^ Power source | + | |
- | ^ Size | 85,60 mm × 56,50 mm || | + | |
- | ^ Weight | + | |
- | ^ OS systems | + | |
- | ^ Type | + | |
- | </ | + | |
- | + | ||
- | + | ||
- | ==== Raspberry Pi Boards ==== | + | |
- | As for today, on the market there are available few models of Raspberry Pi boards, from tiny ones to more powerful. User can choose the right board to fit the price and functionality to his project development needs. Below figures are listed form the tiny/cheap to most sophisticated Raspberry Pi models. | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | + | ||
- | + | ||
- | + | ||
- | ==== General-Purpose Input-Output (GPIO) Connector ==== | + | |
- | Each Raspberry Pi model is equipped with standard 34/40-pis male connector containing universal GPIO ports, VCC 3.3/5V, GND, CLK, I2C/SPI buses pins which developers can use to connect their external sensors, switches and other controlled devices to the Raspberry Pi board and then program their behaviour within the code loaded to the board. | + | |
- | * Raspberry Pi 1 Models A+ and B+, Pi 2 Model B, Pi 3 Model B and Pi Zero (and Zero W) GPIO J8 have a 40-pin pinout. Raspberry Pi 1 Models A and B have only the first 26 pins. | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | * Model B rev. 2 also has a pad (called P5 on the board and P6 on the schematics) of 8 pins offering access to an additional 4 GPIO connections. | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | + | ||
- | ==== HDMI Port ==== | + | |
- | Each Raspberry Pi model is equipped with the standard mini HDMI port allows user connect the monitor or TV set with the board.The electronic schematic is shown on the picture. | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | + | ||
- | ==== Camera Port CSI ==== | + | |
- | Raspberry Pi boars Zero, 1, A+, 2, 3 are equipped with Camera interface (CSI) port allowing user connect the CCD camera following the MIPI standard. | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | + | ||
- | ==== Display Port (DSI) ==== | + | |
- | Raspberry Pi boars 2, 3 are equipped with LCD Display interface(DSI) port allowing the user to connect the LCD touch display to the board. | + | |
- | The official Raspberry Pi LCD touch display shown in the figure below is 800 x 480 dpi 7" size can be connected to the Raspberry board using the DSI interface. Such an assembly can be used in the projects to display controlling application view and with the ability to handle fingers touchscreen controls the project behaviour. The LCD can be mounted in portrait/ | + | |
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | + | ||
- | <figure label> | + | |
- | {{ : | + | |
- | < | + | |
- | </ | + | |
- | + | ||
- | ====USB and LAN Ports==== | + | |
- | Raspberry PI models Zero, 1, A+, 2, 3, 4 and 5 contain USB ports (from 1 up to 4), and all but Zero also have a LAN port for TCP/IP network connections. These ports can be used for mouse/ | + | |
- | + | ||
- | Since generation 4, devices are equipped with 2 USB 3.0 ports as in figure {{ref> | + | |
- | + | ||
- | Starting with Raspberry 3B+, the Ethernet port is a gigabit one that can reach up to 1Gbps, theoretically. Prior 3B (including) it is fast Ethernet, 100Mbps. | + | |
- | <note tip>In RPI 3B+, gigabit Ethernet | + | <WRAP excludefrompdf> |
+ | Below is a short review | ||
+ | * [[en: | ||
+ | * [[en: | ||
+ | </WRAP> | ||
- | <figure rpiports> | ||
- | {{ : | ||
- | < | ||
- | </ |