Supported Hardware

From Ultibo.org
Revision as of 00:02, 29 November 2022 by Ultibo (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

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
CDCACM USB CDC Serial Supported Supports newer Arduino models such as Mega 2560 R3 plus Micro:bit 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
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
HX8357D TFT display Supported HX8357D
PCD8544 LCD controller Tested Example provided by Ronald Daleske
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 PiTFT28 TFT display Supported Uses ILI9340 / STMPE / FT5x06 PiTFT28
Adafuit PiTFT35 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

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.