gobot.io/x/gobot/v2@v2.1.0/examples/firmata_bme280.go (about) 1 //go:build example 2 // +build example 3 4 // 5 // Do not build by default. 6 7 package main 8 9 import ( 10 "fmt" 11 "os" 12 "time" 13 14 "gobot.io/x/gobot/v2" 15 "gobot.io/x/gobot/v2/drivers/i2c" 16 "gobot.io/x/gobot/v2/platforms/firmata" 17 ) 18 19 func main() { 20 firmataAdaptor := firmata.NewAdaptor(os.Args[1]) 21 bme280 := i2c.NewBME280Driver(firmataAdaptor) 22 23 work := func() { 24 gobot.Every(1*time.Second, func() { 25 t, _ := bme280.Temperature() 26 fmt.Println("Temperature", t) 27 28 p, _ := bme280.Pressure() 29 fmt.Println("Pressure", p) 30 31 a, _ := bme280.Altitude() 32 fmt.Println("Altitude", a) 33 34 h, _ := bme280.Humidity() 35 fmt.Println("Humidity", h) 36 }) 37 } 38 39 robot := gobot.NewRobot("bme280bot", 40 []gobot.Connection{firmataAdaptor}, 41 []gobot.Device{bme280}, 42 work, 43 ) 44 45 robot.Start() 46 }