Skip to content

Track peripheral driver implementations for all chips #19

Closed
@jessebraham

Description

@jessebraham

The table below enumerates all peripherals for each chip supported by esp-hal. Support in this case does not mean a feature-complete and bug-free driver implementation, only that you are able to interact with the peripheral in some meaningful way.

If a cell contains am em dash (—) this means that the particular peripheral is not present for a chip. A check mark (✓) means that some driver implementation exists.

The table should be complete, though some minor naming changes have been made for consistency. If there are any missing peripherals or errors please comment below indicating such. Since adding support for additional devices it's possible some new peripherals have been introduced which aren't displayed below.

If you would like to contribute to this project, we ask that you please comment below "claiming" a peripheral, just to help ensure people are not stepping on each others' feet.

If you would like to request a feature for an existing peripheral driver, please open a separate issue to do so.


The following peripherals either have no drivers at all, or do not support all devices with that peripheral:

Peripheral ESP32 ESP32-C2 ESP32-C3 ESP32-C6 ESP32-H2 ESP32-S2 ESP32-S3
ATOMIC
DEDICATED_GPIO
DS
ECC
EXTMEM
GPIOSD
HINF
HMAC
HP_APM
HP_SYS
LCD_CAM
LP_ANA
LP_AON
LP_APM
LP_APM0
LP_CLKRST
LP_I2C0
LP_I2C_ANA_MST
LP_IO
LP_PERI
LP_TEE
LP_TIMER
LP_UART
LP_WDT
MEM_MONITOR
OTP_DEBUG
PARL_IO
PAU
PERI_BACKUP
PMS
PMU
RTCIO
RTC_CNTL
RTC_I2C
SDMMC
SENSITIVE
SLC
SLCHOST
SOC_ETM
TEE
TRACE
TWAI0 1
TWAI1 1
UHCI0
UHCI1
WCL
XTS_AES

1: #341


The following peripherals have some driver implementation for all supported chips, though the drivers may not be feature-complete:

Peripheral ESP32 ESP32-C2 ESP32-C3 ESP32-C6 ESP32-H2 ESP32-S2 ESP32-S3
AES
ASSIST_DEBUG
DAC
DMA
GPIO
I2C0
I2C1
I2S0
I2S1
LEDC
PCNT
PWM0
PWM1
RMT
RNG
RSA
SARADC
SHA
SPI2
SPI3
SYSTIMER
TIMG0
TIMG1
UART0
UART1
UART2
USB_DEVICE
USB0

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is needed

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions