2014-04-26 03:11:51 -07:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
2014-07-10 17:21:21 -07:00
|
|
|
|
2016-12-08 13:24:03 +01:00
|
|
|
"gobot.io/x/gobot"
|
|
|
|
"gobot.io/x/gobot/drivers/i2c"
|
|
|
|
"gobot.io/x/gobot/platforms/firmata"
|
2014-04-26 03:11:51 -07:00
|
|
|
)
|
|
|
|
|
|
|
|
func main() {
|
2016-10-03 16:58:43 +02:00
|
|
|
firmataAdaptor := firmata.NewAdaptor("/dev/ttyACM0")
|
|
|
|
wiichuck := i2c.NewWiichuckDriver(firmataAdaptor)
|
2014-04-26 03:11:51 -07:00
|
|
|
|
|
|
|
work := func() {
|
2016-08-30 17:53:29 +02:00
|
|
|
wiichuck.On(wiichuck.Event("joystick"), func(data interface{}) {
|
2014-06-07 20:38:45 -07:00
|
|
|
fmt.Println("joystick", data)
|
2014-04-26 03:11:51 -07:00
|
|
|
})
|
|
|
|
|
2016-08-30 17:53:29 +02:00
|
|
|
wiichuck.On(wiichuck.Event("c"), func(data interface{}) {
|
2014-04-26 03:11:51 -07:00
|
|
|
fmt.Println("c")
|
|
|
|
})
|
|
|
|
|
2016-08-30 17:53:29 +02:00
|
|
|
wiichuck.On(wiichuck.Event("z"), func(data interface{}) {
|
2014-04-26 03:11:51 -07:00
|
|
|
fmt.Println("z")
|
|
|
|
})
|
2016-08-30 17:53:29 +02:00
|
|
|
|
|
|
|
wiichuck.On(wiichuck.Event("error"), func(data interface{}) {
|
2016-02-06 18:51:55 -08:00
|
|
|
fmt.Println("Wiichuck error:", data)
|
|
|
|
})
|
2014-04-26 03:11:51 -07:00
|
|
|
}
|
|
|
|
|
2014-07-08 18:36:14 -07:00
|
|
|
robot := gobot.NewRobot("chuck",
|
|
|
|
[]gobot.Connection{firmataAdaptor},
|
|
|
|
[]gobot.Device{wiichuck},
|
|
|
|
work,
|
|
|
|
)
|
|
|
|
|
2016-10-18 21:08:25 +02:00
|
|
|
robot.Start()
|
2014-04-26 03:11:51 -07:00
|
|
|
}
|