Difference between revisions of "Supported Hardware"
From Ultibo.org
| Line 1,550: | Line 1,550: | ||
| | | | ||
| [[Unit_ILI9340|ILI9340]] | | [[Unit_ILI9340|ILI9340]] | ||
| + | |||
| + | |- | ||
| + | | ILI9486 | ||
| + | | TFT display | ||
| + | | style="background-color: green; color: #ffffff;"|Supported | ||
| + | | | ||
| + | | [[Unit_ILI9486|ILI9486]] | ||
|- | |- | ||
| Line 1,564: | Line 1,571: | ||
| Example provided by Ronald Daleske | | Example provided by Ronald Daleske | ||
| | | | ||
| + | |||
| + | |- | ||
| + | | ST77XX | ||
| + | | TFT display | ||
| + | | style="background-color: green; color: #ffffff;"|Supported | ||
| + | | | ||
| + | | [[Unit_ST77XX|ST77XX]] | ||
|- | |- | ||
| Line 1,625: | Line 1,639: | ||
|- | |- | ||
| − | | Adafuit | + | | Adafuit 1.9" IPS TFT |
| + | | TFT display | ||
| + | | style="background-color: green; color: #ffffff;"|Supported | ||
| + | | Uses ST77XX | ||
| + | | [[Unit_IPSTFT19|IPSTFT19]] | ||
| + | |||
| + | |- | ||
| + | | Adafuit 2.8" Pi TFT | ||
| TFT display | | TFT display | ||
| style="background-color: green; color: #ffffff;"|Supported | | style="background-color: green; color: #ffffff;"|Supported | ||
| Line 1,632: | Line 1,653: | ||
|- | |- | ||
| − | | Adafuit | + | | Adafuit 3.5" Pi TFT |
| TFT display | | TFT display | ||
| style="background-color: green; color: #ffffff;"|Supported | | style="background-color: green; color: #ffffff;"|Supported | ||
| Line 1,658: | Line 1,679: | ||
| Square, Round and Rectangular displays supported including touch. | | Square, Round and Rectangular displays supported including touch. | ||
| [[Unit_HyperPixel|HyperPixel]] | | [[Unit_HyperPixel|HyperPixel]] | ||
| + | |||
| + | |- | ||
| + | | Waveshare 3.5" LCD (A) | ||
| + | | TFT display | ||
| + | | style="background-color: green; color: #ffffff;"|Supported | ||
| + | | Uses ILI9486 | ||
| + | | [[Unit_LCDA35|LCDA35]] | ||
|} | |} | ||
Latest revision as of 04:59, 11 July 2025
Contents
Single board computers
Raspberry Pi A/B/A+/B+/Zero/ZeroW/CM1
| Peripheral | Type | Status | Notes | Unit |
|---|---|---|---|---|
| DMA | DMA controller | Supported | BCM2708 | |
| GPIO | GPIO controller | Supported | BCM2708 | |
| SDHCI | eMMC/SD/SDIO host controller | Supported | Primary eMMC/SD controller | BCM2708 |
| SDHOST | eMMC/SD host controller | Supported | Secondary eMMC/SD controller | BCMSDHOST |
| USB | DWCOTG host controller | Supported | DWCOTG | |
| IRQ | Interrupt controller | Supported | Platform | |
| FIQ | Interrupt controller | Supported | Platform | |
| Timer | System timer | Planned | Used internally by Ultibo core | |
| ARM Timer | ARM SP804 Timer | Supported | BCM2708 | |
| UART0 | PL011 UART device | Supported | BCM2708 | |
| UART1 | Mini (AUX) UART device | Planned | ||
| BSC0 | I2C controller | Supported | BCM2708 | |
| BSC1 | I2C controller | Supported | BCM2708 | |
| BSC2 | I2C controller | Supported | Dedicated to the HDMI interface | BCM2708 |
| SPI0 | SPI master device | Supported | BCM2708 | |
| SPI1 | AUX SPI master device | Planned | ||
| SPI2 | AUX SPI master device | Planned | ||
| PCM/I2S | PCM/I2S audio controller | Planned | ||
| SPI Slave | SPI slave device | Not planned | Device is faulty | |
| BSC Slave | I2C slave device | Supported | BCM2708 | |
| PWM | PWM controller | Supported | BCM2708 | |
| PWM Audio | PWM audio output | Planned | ||
| Random | Random Number Generator | Supported | BCM2708 | |
| Watchdog | Watchdog Timer | Supported | BCM2708 | |
| USB OTG | USB On-The-Go mode | Planned | A/A+/Zero/ZeroW/CM1 only | |
| WiFi | BCM43438 WiFi controller | In progress | ZeroW only | |
| Bluetooth | BCM43438 Bluetooth host | Planned | ZeroW only | |
| LAN | SMSC LAN9512/14 network | Supported | B/B+ only | SMSC95XX |
| Firmware | Mailbox | Supported | Platform | |
| Clock (On/Off/Rate/Min/Max) | Supported | Platform | ||
| Power (On/Off) | Supported | Platform | ||
| Voltage (Value/Min/Max) | Supported | Platform | ||
| Temperature | Supported | Platform | ||
| VC4 GPU | Framebuffer | Supported | BCM2708 | |
| DispmanX | Supported | |||
| OpenGLES | Supported | |||
| OpenMAX | Supported | |||
| MMAL | Supported | |||
| OpenVG | Supported | OpenVG | ||
| VCHIQ | Supported | VC4VCHIQ | ||
| HDMI CEC | Supported | |||
| GENCMD | Supported | Firmware information and diagnostics | ||
| LEDs | Power and Activity | Supported | Not available on Zero/ZeroW | Platform |
Raspberry Pi 2B/3B/CM3/3B+/3A+/CM3+/Zero2W
| Peripheral | Type | Status | Notes | Unit |
|---|---|---|---|---|
| DMA | DMA controller | Supported | BCM2709 / BCM2710 | |
| GPIO | GPIO controller | Supported | BCM2709 / BCM2710 | |
| SDHCI | eMMC/SD/SDIO host controller | Supported | Primary eMMC/SD controller | BCM2709 / BCM2710 |
| SDHOST | eMMC/SD host controller | Supported | Secondary eMMC/SD controller | BCMSDHOST |
| USB | DWCOTG host controller | Supported | DWCOTG | |
| IRQ | Interrupt controller | Supported | Platform | |
| FIQ | Interrupt controller | Supported | Platform | |
| Timer | System timer | Planned | Used internally by Ultibo core | |
| ARM Timer | ARM SP804 Timer | Supported | BCM2709 / BCM2710 | |
| Local Timer | Local peripheral timer | Planned | ||
| Local Mailbox | Inter processor mailboxes | Planned | ||
| Generic Timer | ARM generic timer | Planned | Used internally by Ultibo core | |
| UART0 | PL011 UART device | Supported | BCM2709 / BCM2710 | |
| UART1 | Mini (AUX) UART device | Planned | ||
| BSC0 | I2C controller | Supported | BCM2709 / BCM2710 | |
| BSC1 | I2C controller | Supported | BCM2709 / BCM2710 | |
| BSC2 | I2C controller | Supported | Dedicated to the HDMI interface | BCM2709 / BCM2710 |
| SPI0 | SPI master device | Supported | BCM2709 / BCM2710 | |
| SPI1 | AUX SPI master device | Planned | ||
| SPI2 | AUX SPI master device | Planned | ||
| PCM/I2S | PCM/I2S audio controller | Planned | ||
| SPI Slave | SPI slave device | Not planned | Device is faulty | |
| BSC Slave | I2C slave device | Supported | BCM2709 / BCM2710 | |
| PWM | PWM controller | Supported | BCM2709 / BCM2710 | |
| PWM Audio | PWM audio output | Planned | ||
| Random | Random Number Generator | Supported | BCM2709 / BCM2710 | |
| Watchdog | Watchdog Timer | Supported | BCM2709 / BCM2710 | |
| USB OTG | USB On-The-Go mode | Planned | CM3 only | |
| WiFi | BCM43438 WiFi controller | In progress | 3B/3B+/3A+/Zero2W only | |
| Bluetooth | BCM43438 Bluetooth host | Planned | 3B/3B+/3A+/Zero2W only | |
| LAN | SMSC LAN9514 network | Supported | SMSC95XX | |
| Microchip LAN78XX network | Supported | 3B+ only | LAN78XX | |
| Firmware | Mailbox | Supported | Platform | |
| Clock (On/Off/Rate/Min/Max) | Supported | Platform | ||
| Power (On/Off) | Supported | Platform | ||
| Voltage (Value/Min/Max) | Supported | Platform | ||
| Temperature | Supported | Platform | ||
| Virtual GPIO | Supported | 3B/CM3/3B+/3A+/CM3+ only | Platform | |
| GPIO Expander | Supported | 3B/CM3/3B+/3A+/CM3+ only | Platform / RPiGPIOExpander | |
| VC4 GPU | Framebuffer | Supported | BCM2709 / BCM2710 | |
| DispmanX | Supported | |||
| OpenGLES | Supported | |||
| OpenMAX | Supported | |||
| MMAL | Supported | |||
| OpenVG | Supported | OpenVG | ||
| VCHIQ | Supported | VC4VCHIQ | ||
| HDMI CEC | Supported | |||
| GENCMD | Supported | Firmware information and diagnostics | ||
| LEDs | Power and Activity | Supported | Requires RPiGPIOExpander unit for 3B/3B+/3A+ | Platform |
Raspberry Pi 4B/400/CM4
| Peripheral | Type | Status | Notes | Unit |
|---|---|---|---|---|
| DMA | DMA controller | Supported | Includes DMA 40-bit channel support | BCM2711 |
| GPIO | GPIO controller | Supported | BCM2711 | |
| MMC0 | eMMC/SD/SDIO host controller | Supported | BCM2711 | |
| MMC1 | eMMC/SD host controller | Supported | BCMSDHOST | |
| MMC2 | eMMC/SD host controller | Supported | BCM2711 | |
| USB | DWCOTG host controller | Supported | Available on USB-C port only | DWCOTG |
| USB | XHCI host controller | In progress | XHCI | |
| PCIe | PCIe host controller | In progress | BRCMSTBPCIE | |
| IRQ | Interrupt controller | Supported | Platform | |
| FIQ | Interrupt controller | Supported | Platform | |
| IPI | Software interrupt | Supported | Platform | |
| LPAE | Large Physical Address Extension | Supported | Platform | |
| Timer | System timer | Planned | Used internally by Ultibo core | |
| ARM Timer | ARM SP804 Timer | Supported | BCM2711 | |
| Local Timer | Local peripheral timer | Planned | ||
| Local Mailbox | Inter processor mailboxes | Planned | ||
| Generic Timer | ARM generic timer | Planned | Used internally by Ultibo core | |
| UART0 | PL011 UART device | Supported | BCM2711 | |
| UART1 | Mini (AUX) UART device | Planned | ||
| UART2 | PL011 UART device | Supported | BCM2711 | |
| UART3 | PL011 UART device | Supported | BCM2711 | |
| UART4 | PL011 UART device | Supported | BCM2711 | |
| UART5 | PL011 UART device | Supported | BCM2711 | |
| I2C0 | I2C controller | Supported | BCM2711 | |
| I2C1 | I2C controller | Supported | BCM2711 | |
| I2C2 | I2C controller | Supported | Dedicated to the HDMI interface | BCM2711 |
| I2C3 | I2C controller | Supported | BCM2711 | |
| I2C4 | I2C controller | Supported | BCM2711 | |
| I2C5 | I2C controller | Supported | BCM2711 | |
| I2C6 | I2C controller | Supported | BCM2711 | |
| I2C7 | I2C controller | Supported | Dedicated to the HDMI interface | BCM2711 |
| SPI0 | SPI master device | Supported | BCM2711 | |
| SPI1 | AUX SPI master device | Planned | ||
| SPI2 | AUX SPI master device | Planned | ||
| SPI3 | SPI master device | Supported | BCM2711 | |
| SPI4 | SPI master device | Supported | BCM2711 | |
| SPI5 | SPI master device | Supported | BCM2711 | |
| SPI6 | SPI master device | Supported | BCM2711 | |
| PCM/I2S | PCM/I2S audio controller | Planned | ||
| SPI Slave | SPI slave device | Planned | ||
| I2C Slave | I2C slave device | Supported | BCM2711 | |
| PWM0 | PWM controller | Supported | BCM2711 | |
| PWM1 | PWM controller | Supported | BCM2711 | |
| PWM Audio | PWM audio output | Planned | ||
| RTC | Real time clock | Planned | Included on CM4 IO board | PCF85063 |
| Random | Random Number Generator | Supported | BCM2711 | |
| Watchdog | Watchdog Timer | Supported | BCM2711 | |
| USB OTG | DWCOTG USB On-The-Go mode | Planned | DWCOTG | |
| WiFi | BCM43438 WiFi controller | In progress | ||
| Bluetooth | BCM43438 Bluetooth host | Planned | ||
| LAN | Broadcom BCM54213PE | Supported | GENET | |
| Firmware | Mailbox | Supported | Platform | |
| Clock (On/Off/Rate/Min/Max) | Supported | Platform | ||
| Power (On/Off) | Supported | Platform | ||
| Voltage (Value/Min/Max) | Supported | Platform | ||
| Temperature | Supported | Platform | ||
| Virtual GPIO | Supported | Platform | ||
| GPIO Expander | Supported | Platform / RPiGPIOExpander | ||
| VC6 GPU | Framebuffer | Supported | Includes multiple framebuffer support (HDMI/DSI/Composite) | BCM2711 |
| DispmanX | Supported | |||
| OpenGLES | Planned | |||
| OpenMAX | Planned | |||
| MMAL | Planned | |||
| OpenVG | Planned | OpenVG | ||
| VCHIQ | Supported | VC4VCHIQ | ||
| HDMI CEC | Supported | |||
| GENCMD | Supported | Firmware information and diagnostics | ||
| LEDs | Power and Activity | Supported | Requires RPiGPIOExpander unit for 4B/400/CM4 | Platform |
QEMU Versatile PB
| Peripheral | Type | Status | Notes | Unit |
|---|---|---|---|---|
| DMA | ARM PL080 DMA controller | Planned | ||
| GPIO | ARM PL061 GPIO controller | Not planned | ||
| RTC | ARM PL031 Real time clock | Supported | PL031 | |
| IRQ | PL190 Interrupt controller | Supported | Platform | |
| FIQ | PL190 Interrupt controller | Supported | Platform | |
| Timer0 | ARM SP804 Timer | Planned | Used internally by Ultibo core | |
| Timer1 | ARM SP804 Timer | Planned | ||
| Timer2 | ARM SP804 Timer | Planned | Used internally by Ultibo core | |
| Timer3 | ARM SP804 Timer | Planned | ||
| UART0 | ARM PL011 UART device | Supported | PL011 | |
| UART1 | ARM PL011 UART device | Supported | PL011 | |
| UART2 | ARM PL011 UART device | Supported | PL011 | |
| UART3 | ARM PL011 UART device | Supported | PL011 | |
| MMC0 | ARM PL180 MMCI controller | Supported | PL18X | |
| MMC1 | ARM PL180 MMCI controller | Supported | PL18X | |
| Framebuffer | ARM PL110 LCD controller | Supported | PL110 | |
| Keyboard | ARM PL050 PS/2 keyboard | Supported | PL050 | |
| Mouse | ARM PL050 PS/2 mouse | Supported | PL050 | |
| Audio | ARM PL041 Audio codec | Planned | ||
| LAN | SMC LAN91C11 network | Supported | SMC91X | |
| USB | OHCI host controller | Planned | ||
| PCI | PCI controller | Planned | ||
| SCSI | SCSI controller | Planned |
USB devices
| Model | Type | Status | Notes | Unit |
|---|---|---|---|---|
| Hub | USB Hub | Supported | USB | |
| Storage | USB Storage | Supported | Storage | |
| HID | USB HID | Supported | HID / USBHID | |
| Mouse | USB Mouse | Supported | Full HID support | Mouse / HIDMouse |
| Keyboard | USB Keyboard | Supported | Full HID support | Keyboard / HIDKeyboard |
| Gamepad | USB Gamepad | Supported | Full HID support | Joystick / HIDJoystick |
| Joystick | USB Joystick | Supported | Full HID support | Joystick / HIDJoystick |
| Touchscreen | USB Touchscreen | Supported | Full HID support | Touch / HIDTouch |
| Audio | USB Audio | Planned | ||
| Video | USB Video | Planned | ||
| CDCACM | USB CDC Serial | Supported | Supports newer Arduino models such as Mega 2560 R3 plus Micro:bit and Raspberry Pi Pico | USBCDCACM |
| FTDI Serial | USB to Serial | Supported | Supports a huge number of USB to serial adapters plus many earlier Arduino models | FTDISerial |
| PL2303 | USB to Serial | Supported | PL2303 | |
| CDC Ethernet | USB CDC Ethernet | Supported | USBCDCEthernet | |
| RT2800 | USB Wireless | Planned | ||
| RTL8188EU | USB Wireless | Planned | ||
| RTL8192CU | USB Wireless | Planned | ||
| u-blox 7 | GPS receiver | Tested | USBCDCACM |
I2C devices
| Model | Type | Status | Notes | Unit |
|---|---|---|---|---|
| DS1307 | Real time clock | Supported | Includes 1307/1337/1338/1339/1340/1388/3231 | DS1307 |
| MCP23008/MCP23017 | I/O expander | Supported | MCP230XX | |
| STMPE | I/O expander | Supported | Includes 610/801/811/1601/1801/2401 | STMPE |
| STMPE | Touch controller | Supported | Includes 610/811 | STMPE |
| PCF8574 | I/O expander | Supported | PCF857X | |
| PCF85063 | Real time clock | Planned | Includes PCF85063A/PCF85063TP | PCF85063 |
| FT5x06 | Touch controller | Supported | Includes FT5206/FT5306/FT5406/FT5506/FT6236 | FT5x06Touch |
| GT9xx | Touch controller | Supported | Includes GT911/GT912/GT927/GT928/GT967/GT1151... | GoodixTouch |
SPI devices
| Model | Type | Status | Notes | Unit |
|---|---|---|---|---|
| ILI9340 | TFT display | Supported | ILI9340 | |
| ILI9486 | TFT display | Supported | ILI9486 | |
| HX8357D | TFT display | Supported | HX8357D | |
| PCD8544 | LCD controller | Tested | Example provided by Ronald Daleske | |
| ST77XX | TFT display | Supported | ST77XX | |
| STMPE | I/O expander | Supported | Includes 610/801/811/1601/1801/2401 | STMPE |
| STMPE | Touch controller | Supported | Includes 610/811 | STMPE |
| dsPIC | Microcontroller | Tested | Tested by Jim Kueneman |
Other devices
| Model | Type | Status | Notes | Unit |
|---|---|---|---|---|
| HD44780 | LCD controller | Supported | Use with GPIO or I/O expander | HD44780 |
| RPiFT5406 | Touch controller | Supported | RPIFT5406 |
Add-on boards
| Model | Type | Status | Notes | Unit |
|---|---|---|---|---|
| Adafuit 1.9" IPS TFT | TFT display | Supported | Uses ST77XX | IPSTFT19 |
| Adafuit 2.8" Pi TFT | TFT display | Supported | Uses ILI9340 / STMPE / FT5x06 | PiTFT28 |
| Adafuit 3.5" Pi TFT | TFT display | Supported | Uses HX8357D / STMPE | PiTFT35 |
| Adafruit 16x2 LCD | LCD display | Supported | Uses HD44780 / MCP23008 | AF16x2LCD |
| Generic I2C LCD | LCD display | Supported | Uses HD44780 / PCF8574 | I2CLCD |
| Pimoroni HyperPixel | TFT display | Supported | Square, Round and Rectangular displays supported including touch. | HyperPixel |
| Waveshare 3.5" LCD (A) | TFT display | Supported | Uses ILI9486 | LCDA35 |
Accessories
| Model | Type | Status | Notes | Unit |
|---|---|---|---|---|
| Raspberry Pi Camera Module v1 & v2 | Add-on board | Supported | ||
| Raspberry Pi Camera Module v1 & v2 (NoIR) | Add-on board | Supported | ||
| Raspberry Pi Sense HAT | Add-on board | In progress | LED matrix and joystick supported, Sensors in progress | RPISENSEHAT |
| Raspberry Pi 7″ Touchscreen Display | Touchscreen | Supported | Uses framebuffer driver from BCM2708/9/10 | RPIFT5406 |
Legend
| Status | Meaning |
|---|---|
| Supported | Implemented and fully tested. |
| In progress | Support for this device is in progress. |
| Planned | Support for this device is planned for a future release. |
| Not planned | There are no current plans to support this device. |
| Tested | Confirmed to work with existing drivers. |