Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ev3go/ev3dev
ev3dev is a simple interface to the Lego Mindstorms ev3 robotics platform
https://github.com/ev3go/ev3dev
Last synced: 2 months ago
JSON representation
ev3dev is a simple interface to the Lego Mindstorms ev3 robotics platform
- Host: GitHub
- URL: https://github.com/ev3go/ev3dev
- Owner: ev3go
- License: other
- Created: 2016-04-17T04:53:59.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-02-18T22:31:58.000Z (almost 2 years ago)
- Last Synced: 2024-07-05T15:40:48.412Z (6 months ago)
- Language: Go
- Homepage:
- Size: 2.32 MB
- Stars: 70
- Watchers: 8
- Forks: 17
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Authors: AUTHORS
Awesome Lists containing this project
- awesome-lego-mindstorms - ev3dev - An idiomatic Go interface to an ev3dev device. (EV3)
README
![Gopherbrick](gopherbrick.png)
# ev3dev is an idiomatic Go interface to an [ev3dev](http://ev3dev.org) device[![Build Status](https://travis-ci.org/ev3go/ev3dev.svg?branch=master)](https://travis-ci.org/ev3go/ev3dev) [![Coverage Status](https://coveralls.io/repos/ev3go/ev3dev/badge.svg?branch=master&service=github)](https://coveralls.io/github/ev3go/ev3dev?branch=master) [![GoDoc](https://godoc.org/github.com/ev3go/ev3dev?status.svg)](https://godoc.org/github.com/ev3go/ev3dev)
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](https://github.com/ev3go/ev3dev/tree/ev3dev-jessie).
For device-specific functions see [EV3](https://github.com/ev3go/ev3) and [BrickPi](https://github.com/ev3go/brickpi).
## Currently supported:
### Low level API
- [x] Automatic identification of attached devices
- [x] Buttons `/dev/input/by-path/platform-gpio_keys-event`
- [x] Power supply `/sys/class/power_supply`
- [x] LED `/sys/class/leds`
- [x] LCD `/dev/fb0`
- [x] Lego Port `/sys/class/lego-port`
- [x] Sensor `/sys/class/lego-sensor`
- [x] DC motor `/sys/class/dc-motor`
- [x] Linear actuator `/sys/class/tacho-motor`
- [x] Servo motor `/sys/class/servo-motor`
- [x] Tacho motor `/sys/class/tacho-motor`### Common tasks
- [x] 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](https://github.com/ev3go/ev3dev/tree/master/examples/demo) 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.