Drivers
Each driver implements one protocol, and every status on this page comes from docs/drivers/catalog.json.
36 drivers.
| Driver | Status | Tier | Conformance | Protocol | Covers | Hazard |
|---|---|---|---|---|---|---|
| ble | tested on simulator | Tier 1 | control | Bluetooth Low Energy GATT | environmental sensors, battery powered sensors, BLE LED and relay boards, DIY ESP32, nRF52 and Pico W peripherals | low |
| esphome | tested on simulator | Tier 1 | control | ESPHome native API over TCP, plaintext or Noise encrypted | ESP32, ESP8266, RP2040 and BK72xx boards running ESPHome, sensors, switches, lights, fans, numbers, selects and buttons defined in ESPHome YAML | low |
| firmata | tested on simulator | Tier 1 | control | Firmata 2.x over USB serial (StandardFirmata) | Arduino AVR boards, Arduino-compatible clones, Teensy, ESP8266 and ESP32 with Firmata over serial | low |
| hid | tested on simulator | Tier 1 | control | USB HID 1.11, Bluetooth HID through the operating system | macropads and button boxes, knobs and jog wheels, foot switches, USB status lights, custom HID gadgets on RP2040, ESP32-S2/S3 and ATmega32U4 boards | low |
| homeassistant | tested on simulator | Tier 1 | control | Home Assistant REST API, Home Assistant WebSocket API | lights, switches and smart plugs, fans, number and select helpers, sensors and binary sensors, Zigbee, Z-Wave, Matter and Wi-Fi devices that Home Assistant integrates | low |
| http | tested on simulator | Tier 1 | control | HTTP/1.1 JSON APIs, HTTP/1.1 plain text APIs, OpenAPI 3 described APIs | smart plugs and relays, networked sensors, lab and bench gadgets with REST APIs, DIY ESP32 and Pico W web servers | medium |
| marlin | tested on simulator | Tier 1 | control | Marlin G-code over USB serial, with line numbers and checksums | FDM 3D printers, pen plotters and other Marlin machines | medium |
| midi | tested on simulator | Tier 1 | control | MIDI 1.0 over USB MIDI class, MIDI 1.0 over DIN through an interface, virtual MIDI ports | pad and knob controllers, keyboards, synthesizers, control surfaces with LEDs and motorised faders, DIY USB MIDI boards | low |
| modbus | tested on simulator | Tier 1 | control | Modbus RTU, Modbus TCP | energy and power meters, PLCs, variable frequency drives, temperature controllers, solar inverters, industrial sensors and I/O modules | medium |
| moonraker | tested on simulator | Tier 1 | control | Moonraker JSON-RPC over HTTP, Moonraker JSON-RPC over WebSocket | Klipper 3D printers (Voron, RatRig, Creality K1 and Sonic Pad, Sovol SV08, Elegoo Neptune 4, Qidi) | medium |
| mqtt | tested on simulator | Tier 1 | control | MQTT 3.1.1 | Tasmota devices, Zigbee2MQTT bridged devices, ESPHome and Shelly devices with MQTT enabled, DIY sensor boards, home automation relays and plugs | medium |
| octoprint | tested on simulator | Tier 1 | control | OctoPrint REST API over HTTP | 3D printers connected to OctoPrint (Marlin, Prusa, RepRapFirmware and Klipper with the OctoPrint connector) | medium |
| openhal-firmware | tested on simulator | Tier 1 | full | OpenHAL firmware protocol 1 over USB serial or UART | Arduino boards, ESP32 boards, maker projects that run the OpenHAL library | low |
| rpi-camera | tested on simulator | Tier 1 | core | libcamera through picamera2 | Raspberry Pi Camera Module 1, 2 and 3, Raspberry Pi High Quality and Global Shutter cameras, Raspberry Pi AI Camera, third-party CSI modules with libcamera support | low |
| rpi-gpio | tested on simulator | Tier 1 | control | Raspberry Pi GPIO through gpiozero (lgpio, RPi.GPIO, pigpio) | relays and relay boards, LEDs, buttons, reed switches and limit switches, PWM fans and dimmers, hobby servos | low |
| scpi | tested on simulator | Tier 1 | control | SCPI over USB-TMC, SCPI over LAN (VXI-11, HiSLIP, raw socket), SCPI over serial, SCPI over GPIB | bench power supplies, multimeters, oscilloscopes, function generators, electronic loads | medium |
| serial | tested on simulator | Tier 1 | control | line-based text over USB CDC serial, UART, RFC 2217, raw TCP (socket://) | Arduino and other microcontroller sketches, bench instruments with ASCII command sets, sensor modules with text output, lab equipment with RS-232 ports | medium |
| uvc | tested on simulator | Tier 1 | core | USB Video Class 1.1 and 1.5 through V4L2, AVFoundation, Media Foundation or DirectShow | USB webcams, USB microscopes, HDMI to USB capture cards, document cameras | low |
| alpaca | tested on simulator | Tier 2 | full | ASCOM Alpaca REST, Alpaca UDP discovery | telescope mounts, focusers, cameras and power boxes, observatory domes | medium |
| grbl | tested on simulator | Tier 2 | full | GRBL 1.1 over USB serial | desktop CNC routers, diode and CO2 laser engravers, pen plotters | high |
| indi | tested on simulator | Tier 2 | full | INDI XML protocol 1.7 over TCP | telescope mounts, focusers, astronomy cameras | medium |
| lerobot | tested on simulator | Tier 2 | full | Hugging Face LeRobot Robot API | SO-100 and SO-101 arms, Koch and OMX arms, other LeRobot arms with joint goals | high |
| micromanager | tested on simulator | Tier 2 | full | Micro-Manager MMCore through pymmcore-plus | research microscopes from Nikon, Zeiss, Olympus and Leica, scientific cameras from Hamamatsu, Andor, Photometrics and PCO, stages, focus drives, filter wheels, shutters and light sources from ASI, Prior, Ludl, Sutter, Lumencor and CoolLED | medium |
| onvif | tested on simulator | Tier 2 | full | ONVIF Profile S and T over SOAP 1.2, WS-Discovery | ONVIF IP cameras, ONVIF PTZ cameras, network video recorders with ONVIF, video encoders | low |
| opcua | tested on simulator | Tier 2 | full | OPC UA binary over TCP (opc.tcp) | PLCs with an OPC UA server, LADS lab instruments, process equipment and gateways | medium |
| pylabrobot | tested on simulator | Tier 2 | full | PyLabRobot LiquidHandler API | Hamilton STAR and STARlet, Tecan Freedom EVO, Opentrons OT-2 | high |
| ros2 | tested on simulator | Tier 2 | full | rosbridge v2 over WebSocket | ROS 2 mobile robots, ROS 2 arms, any ROS 2 graph with rosbridge | high |
| seabreeze | tested on simulator | Tier 2 | full | Ocean spectrometers through python-seabreeze | Ocean Insight and Ocean Optics USB spectrometers (USB2000+, USB4000, Flame), Ocean HR, QE Pro and Maya spectrometers, Ocean STS and SPARK spectrometers | low |
| sila2 | tested on simulator | Tier 2 | full | SiLA 2 over gRPC | SiLA 2 lab devices, SiLA 2 gateways, custom SiLA 2 servers | medium |
| bambu | tested on simulator | Tier 3 | full | Bambu Lab LAN MQTT over TLS, Developer Mode | Bambu Lab X1 series, Bambu Lab P1 series, Bambu Lab A1 and A1 mini | medium |
| can | tested on simulator | Tier 3 | full | CAN 2.0A and 2.0B, CAN FD, SocketCAN and USB adapters through python-can | motor controllers (VESC, ODrive, CubeMars), battery management systems, CAN sensor and IO nodes, vehicle and machine buses with documented frames, DIY CAN nodes | medium |
| knx | tested on simulator | Tier 3 | control | KNXnet/IP tunneling, KNXnet/IP tunneling over TCP, KNXnet/IP routing | KNX switch and dimmer actuators, KNX blind actuators, KNX room thermostats, KNX sensors and weather stations, KNX scene and HVAC controllers | low |
| matter | tested on simulator | Tier 3 | full | Matter through the Matter Server WebSocket API | Matter lights and plugs, Matter sensors, Matter thermostats and fans, Matter window coverings and locks, Thread devices through a Matter Server | low |
| pi-i2c-spi | tested on simulator | Tier 3 | full | I2C through Linux i2c-dev, SPI through Linux spidev | I2C temperature and humidity sensors, SPI and I2C ADCs, SPI and I2C DACs, port expanders and PWM drivers, Raspberry Pi HATs | low |
| upnp | tested on simulator | Tier 3 | full | UPnP Device Architecture SOAP actions, SSDP discovery | UPnP AV media renderers and speakers, smart TVs with DLNA rendering, internet gateways (IGD), network media servers | low |
| zigbee-zwave | tested on simulator | Tier 3 | control | Zigbee through the Zigbee2MQTT MQTT API, Z-Wave through the zwave-js-server WebSocket API | Zigbee lights, plugs and sensors, Z-Wave switches, dimmers and plugs, Z-Wave multisensors, Zigbee and Z-Wave thermostats and locks with exposed values | low |
| mock | reference | Reference | control | in-memory simulation | simulated desk fan, simulated heater, any device file for testing and demos | low |
| mujoco | reference | Reference | full | MuJoCo physics simulation | any MJCF model, such as the MuJoCo Menagerie arms, simulated arms with move_to by inverse kinematics, camera frames from any camera the model names | medium |
No driver matches these filters, so clear a filter to see more drivers.
mock , mujoco are the reference drivers. A reference driver runs device files in memory for tests and demos and is left out of the driver counts.
The Device Library holds device files that run on these drivers.