// +build example // // Do not build by default. /* How to run Pass serial port to use as the first param: go run examples/firmata_button.go /dev/ttyACM0 */ package main import ( "os" "gobot.io/x/gobot" "gobot.io/x/gobot/drivers/gpio" "gobot.io/x/gobot/platforms/firmata" ) func main() { firmataAdaptor := firmata.NewAdaptor(os.Args[1]) button := gpio.NewButtonDriver(firmataAdaptor, "2") led := gpio.NewLedDriver(firmataAdaptor, "3") work := func() { button.On(gpio.ButtonPush, func(data interface{}) { led.On() }) button.On(gpio.ButtonRelease, func(data interface{}) { led.Off() }) } robot := gobot.NewRobot("buttonBot", []gobot.Connection{firmataAdaptor}, []gobot.Device{button, led}, work, ) robot.Start() }