Drivers

These samples demonstrate how to use various drivers supported by Zephyr.

ADC

Audio

Controller Area Network (CAN)

Counter

  • Counter AlarmImplement an alarm application using the counter API.
  • DS3231 TCXO RTCInteract with a DS3231 real-time clock using the counter API and dedicated driver API.

Ethernet

FPGA

  • FPGA ControllerLoad a bitstream into an FPGA and perform basic operations on it.

Haptics

Inter-Integrated Circuit (I2C) Bus

I2S

Inter-Processor Mailbox (IPM)

  • IPM on ESP32Implement inter-processor mailbox (IPM) between ESP32 APP and PRO CPUs.
  • IPM on NXP i.MXImplement inter-processor mailbox (IPM) on i.MX SoCs containing a Messaging Unit peripheral.
  • IPM on NXP LPCImplement inter-processor mailbox (IPM) on NXP LPC family.
  • IPM over IVSHMEMImplement inter-processor mailbox (IPM) over IVSHMEM (Inter-VM shared memory)
  • IPM with ARM MHUImplement inter-processor mailbox (IPM) using an MHU (Message Handling Unit)

Light-Emitting Diode (LED)

LoRa

  • LoRa receiveReceive packets in both synchronous and asynchronous mode using the LoRa radio.
  • LoRa sendTransmit a preconfigured payload every second using the LoRa radio.

Miscellaneous

  • FT800Display various shapes and text using FT800 Embedded Video Engine.
  • Grove LCDDisplay an incrementing counter and change the backlight color.
  • Time-aware GPIOSynchronize clocks.

Multi-bit SPI Bus (MSPI)

Universal Asynchronous Receiver-Transmitter (UART)

  • Native TTY UARTUse native TTY driver to send and receive data between two UART-to-USB bridge dongles.
  • UART echoRead data from the console and echo it back.
  • UART PassthroughPass data directly between the console and another UART interface.

Video

Virtualization

  • IVSHMEM doorbellUse Inter-VM Shared Memory to exchange messages between two processes running on different operating systems.

1-Wire

  • 1-Wire scannerScan for 1-Wire devices and print their family ID and serial number.