Dark Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

tinygo-org/drivers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

638 Commits

Repository files navigation

TinyGo Drivers

This package provides a collection of 101 different hardware drivers for devices such as sensors and displays that can be used together with TinyGo.

For the complete list, please see: https://tinygo.org/docs/reference/devices/

Installing

go get tinygo.org/x/drivers

How to use

Here is an example in TinyGo that uses the BMP180 digital barometer:

package main

import (
"time"

"machine"

"tinygo.org/x/drivers/bmp180"
)

func main() {
machine.I2C0.Configure(machine.I2CConfig{})
sensor := bmp180.New(machine.I2C0)
sensor.Configure()

connected := sensor.Connected()
if !connected {
println("BMP180 not detected")
return
}
println("BMP180 detected")

for {
temp, _ := sensor.ReadTemperature()
println("Temperature:", float32(temp)/1000, "degC")

pressure, _ := sensor.ReadPressure()
println("Pressure", float32(pressure)/100000, "hPa")

time.Sleep(2 * time.Second)
}
}

Contributing

Your contributions are welcome!

Please take a look at our CONTRIBUTING.md document for details.

License

This project is licensed under the BSD 3-clause license, just like the Go project itself.

About

TinyGo drivers for sensors, displays, wireless adaptors, and other devices that use I2C, SPI, GPIO, ADC, and UART interfaces.

Topics

Resources

Readme

License

Contributing

Contributing

Stars

Watchers

Forks

Packages

Contributors

Languages