ThistleOS uses a HAL vtable driver model: every hardware peripheral is accessed through a C struct of function pointers. Drivers implement these vtables in Rust (17 drivers) or C (2 drivers), register them with the HAL registry at boot, and the kernel dispatches calls without knowing which chip is behind the interface.
✎ Edit on GitHubOverview
All 19 drivers at a glance. Click a driver name to jump to its detailed section.
| Vendor | Name | Driver | HAL | Author | Version | Status | Ref |
|---|---|---|---|---|---|---|---|
| Sitronix | ST7789 LCD | drv_lcd_st7789 | Display | ThistleOS | ESP-IDF v5.5 | Proven | ESP-IDF |
| Ilitek | ILI9341 LCD | drv_lcd_ili9341 | Display | ThistleOS | esp_lcd_ili9341 v2.0 | Fixed | ESP Comp |
| Solomon Systech | SSD1306 OLED | drv_oled_ssd1306 | Display | ThistleOS | SSD1306 Rev B | Proven | Datasheet |
| Good Display | GDEQ031T10 E-Paper | drv_epaper_gdeq031t10 | Display | ThistleOS | GDEQ031T10 | Proven | Good Display |
| Hynitron | CST328 Touch | drv_touch_cst328 | Input | ThistleOS | CST328 | Proven | ESP Comp |
| Hynitron | CST816S Touch | drv_touch_cst816 | Input | ThistleOS | esp_lcd_touch_cst816s v1.1 | Fixed | ESP Comp |
| Shenzhen Xptek | XPT2046 Touch | drv_touch_xpt2046 | Input | ThistleOS | esp_lcd_touch_xpt2046 v1.0.6 | Fixed | ESP Comp |
| Texas Instruments | TCA8418 Keyboard | drv_kbd_tca8418 | Input | ThistleOS | TCA8418 Rev A | Proven | TI |
| M5Stack | CardKB Keyboard | drv_kbd_cardkb | Input | ThistleOS | CardKB v1.1 | Fixed | M5Stack |
| Semtech | SX1262 LoRa Radio | drv_radio_sx1262 | Radio | jgromes | RadioLib v6.x | Proven | GitHub |
| u-blox | MIA-M10Q GPS | drv_gps_mia_m10q | GPS | ThistleOS | MIA-M10Q | Proven | u-blox |
| NanJing Top Power | TP4065B Battery | drv_power_tp4065b | Power | ThistleOS | ESP-IDF ADC v5.5 | Proven | ESP-IDF |
| Generic | SD Card | drv_sdcard | Storage | ThistleOS | ESP-IDF SDMMC v5.5 | Proven | ESP-IDF |
| TI (Burr-Brown) | PCM5102A Audio DAC | drv_audio_pcm5102a | Audio | ThistleOS | ESP-IDF I2S v5.5 | Proven | TI |
| Bosch | BHI260AP IMU | drv_imu_bhi260ap | IMU | ThistleOS | BHI260AP | Stub | Bosch |
| Lite-On | LTR-553 Light Sensor | drv_light_ltr553 | Light | ThistleOS | LTR-553ALS-01 | Partial | Lite-On |
| NXP | PCF8563 RTC | drv_rtc_pcf8563 | RTC | ThistleOS | PCF8563T | Proven | NXP |
| QST | QMI8658C Accelerometer | drv_accel_qmi8658 | Accel | ThistleOS | QMI8658C | Partial | QST |
| SIMCOM | A7682E 4G Modem | drv_modem_a7682e | Modem | ThistleOS | esp_modem v1.x | Proven | GitHub |
Looking to write a driver?
See the Building Drivers guide for step-by-step instructions on creating a new ThistleOS HAL driver.