gobot.io/x/gobot@v1.16.0/platforms/firmata/client/examples/blink.go (about) 1 // +build example 2 // 3 // Do not build by default. 4 5 package main 6 7 import ( 8 "fmt" 9 "time" 10 11 "go.bug.st/serial" 12 "gobot.io/x/gobot/platforms/firmata/client" 13 ) 14 15 func main() { 16 sp, err := serial.Open("/dev/ttyACM0", &serial.Mode{BaudRate: 57600}) 17 if err != nil { 18 panic(err) 19 } 20 21 board := client.New() 22 23 fmt.Println("connecting.....") 24 err = board.Connect(sp) 25 defer board.Disconnect() 26 27 if err != nil { 28 panic(err) 29 } 30 31 fmt.Println("firmware name:", board.FirmwareName) 32 fmt.Println("firmata version:", board.ProtocolVersion) 33 34 pin := 13 35 if err = board.SetPinMode(pin, client.Output); err != nil { 36 panic(err) 37 } 38 39 level := 0 40 41 for { 42 level ^= 1 43 if err := board.DigitalWrite(pin, level); err != nil { 44 panic(err) 45 } 46 fmt.Println("level:", level) 47 time.Sleep(500 * time.Millisecond) 48 } 49 }