Devices

Sensors and displays that are supported by TinyGo.

TinyGo has support for many different devices and sensors such as digital accelerometers, OLED displays, WiFi adaptors, and more.

Drivers are packages designed to make it easier to use these devices from your own TinyGo programs.

All of these drivers can be found in the TinyGo Drivers repository located at https://github.com/tinygo-org/drivers/

The following devices are supported.

Driver Device Name Datasheet Interface Type
adafruit4650 Adafruit FeatherWing OLED - 128x64 OLED display docs I2C
adt7410 ADT7410 I2C Temperature Sensor datasheet I2C
adxl345 ADXL345 accelerometer datasheet I2C
aht20 AHT20 I2C Temperature and Humidity Sensor datasheet I2C
amg88xx AMG88xx 8x8 Thermal camera sensor datasheet I2C
apa102 APA102 RGB LED datasheet SPI
apds9960 APDS9960 Digital proximity, ambient light, RGB and gesture sensor datasheet I2C
as560x AS5600 / AS5601 (on-axis magnetic rotary position sensors) datasheet I2C
at24cx AT24CX 2-wire serial EEPROM datasheet I2C
axp192 AXP192 single Cell Li-Battery and Power System Management datasheet I2C
bh1750 BH1750 ambient light sensor datasheet I2C
blinkm BlinkM RGB LED datasheet I2C
bma42x BMA42X triaxial acceleration sensor datasheet I2C
bme280 BME280 humidity/pressure sensor datasheet I2C
bmi160 BMI160 accelerometer/gyroscope datasheet SPI
bmp180 BMP180 barometer datasheet I2C
bmp280 BMP280 temperature/barometer datasheet I2C
bmp388 BMP388 pressure sensor datasheet I2C
bno08x BNO08x 9-DOF IMUsensor datasheet I2C
buzzer Buzzer datasheet GPIO
comboat Aithinker-Combo-AT WiFi docs UART
dht DHTXX thermometer and humidity sensor datasheet GPIO
ds1307 DS1307 real time clock datasheet I2C
ds18b20 DS18B20 digital thermometer datasheet I2C
ds3231 DS3231 real time clock datasheet I2C
easystepper Stepper motor “Easystepper” controller datasheet GPIO
encoders Rotary Encoder datasheet GPIO
ens160 ScioSense ENS160 digital gas sensor datasheet I2C
espat ESP8266/ESP32 AT Command set for WiFi/TCP/UDP datasheet UART
flash SPI NOR Flash Memory datasheet SPI/QSPI
ft6336 FT6336 touch controller datasheet I2C
gc9a01 Waveshare GC9A01 TFT round display datasheet SPI
gps GPS module datasheet I2C/UART
hcsr04 HC-SR04 Ultrasonic distance sensor datasheet GPIO
hd44780 HD44780 LCD controller datasheet GPIO
hd44780i2c HD44780 LCD controller with I2C interface datasheet I2C
honeyhsc TruStability® pressure sensor datahseet I2C/SPI
hts221 HTS221 digital humidity and temperature sensor datasheet I2C
hub75 HUB75 RGB led matrix datasheet SPI
i2csoft software I2C driver datasheet GPIO
ili9341 ILI9341 TFT color display datasheet SPI
ina219 INA219 current and power monitor datasheet I2C
ina260 INA260 Volt/Amp/Power meter datasheet I2C
irremote Infrared remote control datasheet GPIO
is31fl3731 IS31FL3731 matrix LED driver datasheet I2C
keypad4x4 4x4 Membrane Keypad datasheet GPIO
l293x L293x motor driver datasheet GPIO/PWM
l3gd20 L3GD20 3-axis angular rate sensor datasheet I2C
l9110x L9110x motor driver datasheet GPIO/PWM
lis2mdl LIS2MDL magnetometer datasheet I2C
lis3dh LIS3DH accelerometer datasheet I2C
lps22hb LPS22HB MEMS nano pressure sensor datasheet I2C
lsm303agr LSM303AGR accelerometer datasheet I2C
lsm303dlhc LSM303DLHC accelerometer/magnetometer datasheet I2C
lsm6ds3 LSM6DS3 accelerometer datasheet I2C
lsm6ds3tr LSM6DS3TR accelerometer datasheet I2C
lsm6dsox LSM6DSOX accelerometer datasheet I2C
lsm9ds1 LSM9DS1 accelerometer datasheet I2C
mag3110 MAG3110 magnetometer datasheet I2C
makeybutton Makey Button datasheet GPIO
max6675 MAX6675 thermocouple-to-digital converter datasheet SPI
max72xx MAX7219 & MAX7221 display driver datasheet SPI
mcp23017 MCP23017 port expander datasheet I2C
mcp2515 MCP2515 Stand-Alone CAN Controller with SPI Interface datasheet SPI
mcp3008 MCP3008 analog to digital converter (ADC) datasheet SPI
mcp9808 MCP9808 High Accuracy I2C Temperature Sensor datasheet I2C
microbitmatrix BBC micro:bit LED matrix datasheet GPIO
microphone Microphone - PDM datasheet I2S/PDM
mma8653 MMA8653 accelerometer datasheet I2C
mpu6050 MPU6050 accelerometer/gyroscope datasheet I2C
mpu6886 MPU6886 accelerometer/gyroscope datasheet I2C
mpu9150 MPU9150 accelerometer/gyroscope datahseet I2C
ndir NDIR CO2 Sensor datasheet I2C
onewire One Wire bus system datasheet 1-wire
p1am P1AM-100 base controller docs SPI
pca9685 PCA9685 16-channel, 12-bit PWM controller datasheet I2C
pcd8544 PCD8544 display datasheet SPI
pcf8523 PCF8523 real time clock datasheet I2C
pcf8563 PCF8563 real time clock datasheet I2C
pcf8591 PCF8591 Analog to Digital/Digital to Analog Converter datasheet I2C
qmi8658c QMI8658C accelerometer/gyroscope datasheet I2C
rtl8720dn RTL8720DN 2.4G/5G Dual Bands Wireless and BLE5.0 datasheet UART
scd4x SCD4x CO2 Sensor datasheet I2C
sdcard SPI SDCARD/MMC datasheet SPI
seesaw Adafruit Seesaw docs I2C
semihosting Semihosting datasheet Debug
servo Servo datasheet PWM
sgp30 SGP30 VOC sensor datasheet I2C
sh1106 SH1106 OLED display datasheet I2C / SPI
sharpmem Sharp Memory Displays docs SPI
shifter 8bit shift registers (74HC165, 74165, etc) GPIO
shiftregister Shift register (PISO) datasheet GPIO
sht3x SHT3x Digital Humidity Sensor datasheet I2C
sht4x SHT4x Digital Humidity Sensor datasheet I2C
shtc3 SHTC3 Digital Humidity Sensor (RH/T) datasheet I2C
si5351 SI5351 clock generator datasheet I2C
ssd1289 SSD1289 TFT color display datasheet GPIO
ssd1306 SSD1306 OLED display datasheet I2C / SPI
ssd1331 SSD1331 TFT color display datasheet SPI
ssd1351 SSD1351 OLED display datasheet SPI
st7735 ST7735 TFT color display datasheet SPI
st7789 ST7789 TFT color display datasheet SPI
sx126x Semtech SX126x Lora datasheet SPI
sx127x Semtech SX127x Lora datasheet SPI
thermistor Thermistor datasheet ADC
tm1637 TM1637 7-segment LED display datasheet I2C
tmc2209 TMC2209 stepper motor datasheet UART
tmc5160 TMC5160 stepper motor datasheet UART
tmp102 TMP102 I2C Temperature Sensor datasheet I2C
touch Resistive Touchscreen (4-wire) datasheet GPIO
ttp229 TTP229 (BSF version) 16 keys or 8 keys touch pad detector datasheet GPIO
uc8151 UC8151 All-in-one driver IC for ESL datasheet I2C
veml6070 VEML6070 UV light sensor datasheet I2C
vl53l1x VL53L1X time-of-flight distance sensor datasheet I2C
vl6180x VL6180X time-of-flight distance sensor datasheet I2C
w5500 W5500 Ethernet controller datasheet SPI
waveshare-epd/epd1in54 Waveshare 1.54" black and white e-paper device datasheet SPI
waveshare-epd/epd2in13 Waveshare 2.13" e-paper display datasheet SPI
waveshare-epd/epd2in13x Waveshare 2.13" (B & C) e-paper display datasheet SPI
waveshare-epd/epd2in66b Waveshare 2.66" e-Paper display datasheet SPI
waveshare-epd/epd2in9 Waveshare 2.9" e-paper display (V1) datasheet SPI
waveshare-epd/epd4in2 Waveshare 4.2" e-paper B/W display datasheet SPI
wifinina ESP32 as WiFi Coprocessor with Arduino nina-fw datasheet SPI
ws2812 WS2812 RGB LED datasheet GPIO
xpt2046 XPT2046 touch controller datasheet GPIO

We also give you the ability to add new drivers. If your device isn’t listed here, please raise an issue in the issue tracker.

If you want to know more about how drivers are implemented please see the Drivers page under “Concepts”.