Skip to content

ev3go/ev3dev

Repository files navigation

Gopherbrick

ev3dev is an idiomatic Go interface to an ev3dev device

Build Status Coverage Status GoDoc

The goal is to implement a simple Go style ev3dev API and helpers for common tasks.

github.com/ev3go/ev3dev depends on ev3dev stretch and has been tested on kernel 4.14.61-ev3dev-2.2.2-ev3. For jessie support see the ev3dev-jessie branch.

For device-specific functions see EV3 and BrickPi.

Currently supported:

Low level API

  • Automatic identification of attached devices
  • Buttons /dev/input/by-path/platform-gpio_keys-event
  • Power supply /sys/class/power_supply
  • LED /sys/class/leds
  • LCD /dev/fb0
  • Lego Port /sys/class/lego-port
  • Sensor /sys/class/lego-sensor
  • DC motor /sys/class/dc-motor
  • Linear actuator /sys/class/tacho-motor
  • Servo motor /sys/class/servo-motor
  • Tacho motor /sys/class/tacho-motor

Common tasks

  • Steering helper similar to EV-G steering block

Quick start compiling for a brick

Compiling for a brick can be done on the platform itself if Go is installed there, but it is generally quicker on your computer. This requires that you prefix the go build invocation with GOOS=linux GOARCH=arm GOARM=5. For example, to build the demo program you can do this:

$ GOOS=linux GOARCH=arm GOARM=5 go build github.com/ev3go/ev3dev/examples/demo

This will leave a demo executable (from the name of the package path) in your current directory. You can then copy the executable over to your brick using scp.


LEGO® is a trademark of the LEGO Group of companies which does not sponsor, authorize or endorse this software.

About

ev3dev is a simple interface to the Lego Mindstorms ev3 robotics platform

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages