mirror of
https://github.com/kidoman/embd
synced 2025-07-04 12:27:45 +02:00
import point to original repo
This commit is contained in:
parent
d8c3f57dc1
commit
4a75b30fcc
69 changed files with 177 additions and 177 deletions
86
README.md
86
README.md
|
@ -1,4 +1,4 @@
|
|||
# embd [](https://travis-ci.org/kidoman/embd) [](http://godoc.org/github.com/zlowred/embd)
|
||||
# embd [](https://travis-ci.org/kidoman/embd) [](http://godoc.org/github.com/kidoman/embd)
|
||||
|
||||
**embd** is a hardware abstraction layer (HAL) for embedded systems.
|
||||
|
||||
|
@ -6,7 +6,7 @@ It allows you to start your hardware hack on easily available hobby boards (like
|
|||
|
||||
Development supported and sponsored by [**SoStronk**](https://www.sostronk.com) and [**ThoughtWorks**](http://www.thoughtworks.com/)
|
||||
|
||||
Also, you might be interested in: [Why Golang?](https://github.com/zlowred/embd/wiki/Why-Go)
|
||||
Also, you might be interested in: [Why Golang?](https://github.com/kidoman/embd/wiki/Why-Go)
|
||||
|
||||
[Blog post introducing EMBD](http://kidoman.io/framework/embd.html)
|
||||
|
||||
|
@ -20,8 +20,8 @@ package main
|
|||
import (
|
||||
"time"
|
||||
|
||||
"github.com/zlowred/embd"
|
||||
_ "github.com/zlowred/embd/host/rpi" // This loads the RPi driver
|
||||
"github.com/kidoman/embd"
|
||||
_ "github.com/kidoman/embd/host/rpi" // This loads the RPi driver
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
@ -34,7 +34,7 @@ func main() {
|
|||
|
||||
Then install the EMBD package (go1.2 and greater is required):
|
||||
|
||||
$ go get github.com/zlowred/embd
|
||||
$ go get github.com/kidoman/embd
|
||||
|
||||
Build the binary*:
|
||||
|
||||
|
@ -58,7 +58,7 @@ Then run the program with ```sudo```*:
|
|||
* We are instructing the ```go``` compiler to create a binary which will run on the RaspberryPi processor
|
||||
* Assuming your RaspberryPi has an IP address of ```192.168.2.2```. Substitute as necessary
|
||||
* ```sudo``` (root) permission is required as we are controlling the hardware by writing to special files
|
||||
* This sample program is optimized for brevity and does not clean up after itself. Click here to see the [full version](https://github.com/zlowred/embd/blob/master/samples/fullblinker.go)
|
||||
* This sample program is optimized for brevity and does not clean up after itself. Click here to see the [full version](https://github.com/kidoman/embd/blob/master/samples/fullblinker.go)
|
||||
|
||||
## Getting Help
|
||||
|
||||
|
@ -76,7 +76,7 @@ Join the [mailing list](https://groups.google.com/forum/#!forum/go-embd)
|
|||
|
||||
## The command line tool
|
||||
|
||||
go get github.com/zlowred/embd/embd
|
||||
go get github.com/kidoman/embd/embd
|
||||
|
||||
will install a command line utility ```embd``` which will allow you to quickly get started with prototyping. The binary should be available in your ```$GOPATH/bin```. However, to be able to run this on a ARM based device, you will need to build it with ```GOOS=linux``` and ```GOARCH=arm``` environment variables set.
|
||||
|
||||
|
@ -96,14 +96,14 @@ Package **embd** provides a hardware abstraction layer for doing embedded progra
|
|||
on supported platforms like the Raspberry Pi and BeagleBone Black. Most of the examples below
|
||||
will work without change (i.e. the same binary) on all supported platforms. How cool is that?
|
||||
|
||||
Although samples are all present in the [samples](https://github.com/zlowred/embd/tree/master/samples) folder,
|
||||
Although samples are all present in the [samples](https://github.com/kidoman/embd/tree/master/samples) folder,
|
||||
we will show a few choice examples here.
|
||||
|
||||
Use the **LED** driver to toggle LEDs on the BBB:
|
||||
|
||||
```go
|
||||
import "github.com/zlowred/embd"
|
||||
import _ "github.com/zlowred/embd/host/all"
|
||||
import "github.com/kidoman/embd"
|
||||
import _ "github.com/kidoman/embd/host/all"
|
||||
...
|
||||
embd.InitLED()
|
||||
defer embd.CloseLED()
|
||||
|
@ -116,8 +116,8 @@ led.Toggle()
|
|||
Even shorter when quickly trying things out:
|
||||
|
||||
```go
|
||||
import "github.com/zlowred/embd"
|
||||
import _ "github.com/zlowred/embd/host/all"
|
||||
import "github.com/kidoman/embd"
|
||||
import _ "github.com/kidoman/embd/host/all"
|
||||
...
|
||||
embd.InitLED()
|
||||
defer embd.CloseLED()
|
||||
|
@ -130,8 +130,8 @@ embd.ToggleLED(3)
|
|||
BBB + **PWM**:
|
||||
|
||||
```go
|
||||
import "github.com/zlowred/embd"
|
||||
import _ "github.com/zlowred/embd/host/all"
|
||||
import "github.com/kidoman/embd"
|
||||
import _ "github.com/kidoman/embd/host/all"
|
||||
...
|
||||
embd.InitGPIO()
|
||||
defer embd.CloseGPIO()
|
||||
|
@ -145,8 +145,8 @@ pwm.SetDuty(1000)
|
|||
Control **GPIO** pins on the RaspberryPi / BeagleBone Black:
|
||||
|
||||
```go
|
||||
import "github.com/zlowred/embd"
|
||||
import _ "github.com/zlowred/embd/host/all"
|
||||
import "github.com/kidoman/embd"
|
||||
import _ "github.com/kidoman/embd/host/all"
|
||||
...
|
||||
embd.InitGPIO()
|
||||
defer embd.CloseGPIO()
|
||||
|
@ -158,8 +158,8 @@ embd.DigitalWrite(10, embd.High)
|
|||
Could also do:
|
||||
|
||||
```go
|
||||
import "github.com/zlowred/embd"
|
||||
import _ "github.com/zlowred/embd/host/all"
|
||||
import "github.com/kidoman/embd"
|
||||
import _ "github.com/kidoman/embd/host/all"
|
||||
...
|
||||
embd.InitGPIO()
|
||||
defer embd.CloseGPIO()
|
||||
|
@ -173,9 +173,9 @@ pin.Write(embd.High)
|
|||
Or read data from the **Bosch BMP085** barometric sensor:
|
||||
|
||||
```go
|
||||
import "github.com/zlowred/embd"
|
||||
import "github.com/zlowred/embd/sensor/bmp085"
|
||||
import _ "github.com/zlowred/embd/host/all"
|
||||
import "github.com/kidoman/embd"
|
||||
import "github.com/kidoman/embd/sensor/bmp085"
|
||||
import _ "github.com/kidoman/embd/host/all"
|
||||
...
|
||||
bus := embd.NewI2CBus(1)
|
||||
...
|
||||
|
@ -188,9 +188,9 @@ altitude, err := baro.Altitude()
|
|||
Even find out the heading from the **LSM303** magnetometer:
|
||||
|
||||
```go
|
||||
import "github.com/zlowred/embd"
|
||||
import "github.com/zlowred/embd/sensor/lsm303"
|
||||
import _ "github.com/zlowred/embd/host/all"
|
||||
import "github.com/kidoman/embd"
|
||||
import "github.com/kidoman/embd/sensor/lsm303"
|
||||
import _ "github.com/kidoman/embd/host/all"
|
||||
...
|
||||
bus := embd.NewI2CBus(1)
|
||||
...
|
||||
|
@ -204,28 +204,28 @@ platforms.
|
|||
|
||||
## Protocols Supported
|
||||
|
||||
* **Digital GPIO** [Documentation](http://godoc.org/github.com/zlowred/embd#DigitalPin)
|
||||
* **Analog GPIO** [Documentation](http://godoc.org/github.com/zlowred/embd#AnalogPin)
|
||||
* **PWM** [Documentation](http://godoc.org/github.com/zlowred/embd#PWMPin)
|
||||
* **I2C** [Documentation](http://godoc.org/github.com/zlowred/embd#I2CBus)
|
||||
* **LED** [Documentation](http://godoc.org/github.com/zlowred/embd#LED)
|
||||
* **SPI** [Documentation](http://godoc.org/github.com/zlowred/embd#SPIBus)
|
||||
* **Digital GPIO** [Documentation](http://godoc.org/github.com/kidoman/embd#DigitalPin)
|
||||
* **Analog GPIO** [Documentation](http://godoc.org/github.com/kidoman/embd#AnalogPin)
|
||||
* **PWM** [Documentation](http://godoc.org/github.com/kidoman/embd#PWMPin)
|
||||
* **I2C** [Documentation](http://godoc.org/github.com/kidoman/embd#I2CBus)
|
||||
* **LED** [Documentation](http://godoc.org/github.com/kidoman/embd#LED)
|
||||
* **SPI** [Documentation](http://godoc.org/github.com/kidoman/embd#SPIBus)
|
||||
|
||||
## Sensors Supported
|
||||
|
||||
* **TMP006** Thermopile sensor [Documentation](http://godoc.org/github.com/zlowred/embd/sensor/tmp006), [Datasheet](http://www.adafruit.com/datasheets/tmp006.pdf), [Userguide](http://www.adafruit.com/datasheets/tmp006ug.pdf)
|
||||
* **TMP006** Thermopile sensor [Documentation](http://godoc.org/github.com/kidoman/embd/sensor/tmp006), [Datasheet](http://www.adafruit.com/datasheets/tmp006.pdf), [Userguide](http://www.adafruit.com/datasheets/tmp006ug.pdf)
|
||||
|
||||
* **BMP085** Barometric pressure sensor [Documentation](http://godoc.org/github.com/zlowred/embd/sensor/bmp085), [Datasheet](https://www.sparkfun.com/datasheets/Components/General/BST-BMP085-DS000-05.pdf)
|
||||
* **BMP085** Barometric pressure sensor [Documentation](http://godoc.org/github.com/kidoman/embd/sensor/bmp085), [Datasheet](https://www.sparkfun.com/datasheets/Components/General/BST-BMP085-DS000-05.pdf)
|
||||
|
||||
* **BMP180** Barometric pressure sensor [Documentation](http://godoc.org/github.com/zlowred/embd/sensor/bmp180), [Datasheet](http://www.adafruit.com/datasheets/BST-BMP180-DS000-09.pdf)
|
||||
* **BMP180** Barometric pressure sensor [Documentation](http://godoc.org/github.com/kidoman/embd/sensor/bmp180), [Datasheet](http://www.adafruit.com/datasheets/BST-BMP180-DS000-09.pdf)
|
||||
|
||||
* **LSM303** Accelerometer and magnetometer [Documentation](http://godoc.org/github.com/zlowred/embd/sensor/lsm303), [Datasheet](https://www.sparkfun.com/datasheets/Sensors/Magneto/LSM303%20Datasheet.pdf)
|
||||
* **LSM303** Accelerometer and magnetometer [Documentation](http://godoc.org/github.com/kidoman/embd/sensor/lsm303), [Datasheet](https://www.sparkfun.com/datasheets/Sensors/Magneto/LSM303%20Datasheet.pdf)
|
||||
|
||||
* **L3GD20** Gyroscope [Documentation](http://godoc.org/github.com/zlowred/embd/sensor/l3gd20), [Datasheet](http://www.adafruit.com/datasheets/L3GD20.pdf)
|
||||
* **L3GD20** Gyroscope [Documentation](http://godoc.org/github.com/kidoman/embd/sensor/l3gd20), [Datasheet](http://www.adafruit.com/datasheets/L3GD20.pdf)
|
||||
|
||||
* **US020** Ultrasonic proximity sensor [Documentation](http://godoc.org/github.com/zlowred/embd/sensor/us020), [Product Page](http://www.digibay.in/sensor/object-detection-and-proximity?product_id=239)
|
||||
* **US020** Ultrasonic proximity sensor [Documentation](http://godoc.org/github.com/kidoman/embd/sensor/us020), [Product Page](http://www.digibay.in/sensor/object-detection-and-proximity?product_id=239)
|
||||
|
||||
* **BH1750FVI** Luminosity sensor [Documentation](http://godoc.org/github.com/zlowred/embd/sensor/bh1750fvi), [Datasheet](http://www.elechouse.com/elechouse/images/product/Digital%20light%20Sensor/bh1750fvi-e.pdf)
|
||||
* **BH1750FVI** Luminosity sensor [Documentation](http://godoc.org/github.com/kidoman/embd/sensor/bh1750fvi), [Datasheet](http://www.elechouse.com/elechouse/images/product/Digital%20light%20Sensor/bh1750fvi-e.pdf)
|
||||
|
||||
## Interfaces
|
||||
|
||||
|
@ -233,11 +233,11 @@ platforms.
|
|||
|
||||
## Controllers
|
||||
|
||||
* **PCA9685** 16-channel, 12-bit PWM Controller with I2C protocol [Documentation](http://godoc.org/github.com/zlowred/embd/controller/pca9685), [Datasheet](http://www.adafruit.com/datasheets/PCA9685.pdf), [Product Page](http://www.adafruit.com/products/815)
|
||||
* **PCA9685** 16-channel, 12-bit PWM Controller with I2C protocol [Documentation](http://godoc.org/github.com/kidoman/embd/controller/pca9685), [Datasheet](http://www.adafruit.com/datasheets/PCA9685.pdf), [Product Page](http://www.adafruit.com/products/815)
|
||||
|
||||
* **MCP4725** 12-bit DAC [Documentation](http://godoc.org/github.com/zlowred/embd/controller/mcp4725), [Datasheet](http://www.adafruit.com/datasheets/mcp4725.pdf), [Product Page](http://www.adafruit.com/products/935)
|
||||
* **MCP4725** 12-bit DAC [Documentation](http://godoc.org/github.com/kidoman/embd/controller/mcp4725), [Datasheet](http://www.adafruit.com/datasheets/mcp4725.pdf), [Product Page](http://www.adafruit.com/products/935)
|
||||
|
||||
* **ServoBlaster** RPi PWM/PCM based PWM controller [Documentation](http://godoc.org/github.com/zlowred/embd/controller/servoblaster), [Product Page](https://github.com/richardghirst/PiBits/tree/master/ServoBlaster)
|
||||
* **ServoBlaster** RPi PWM/PCM based PWM controller [Documentation](http://godoc.org/github.com/kidoman/embd/controller/servoblaster), [Product Page](https://github.com/richardghirst/PiBits/tree/master/ServoBlaster)
|
||||
|
||||
## Convertors
|
||||
|
||||
|
@ -245,10 +245,10 @@ platforms.
|
|||
|
||||
## Contributing
|
||||
|
||||
We look forward to your pull requests, but contributions which abide by the [guidelines](https://github.com/zlowred/embd/blob/master/CONTRIBUTING.md) will get a free beer!
|
||||
We look forward to your pull requests, but contributions which abide by the [guidelines](https://github.com/kidoman/embd/blob/master/CONTRIBUTING.md) will get a free beer!
|
||||
|
||||
File an [issue](https://github.com/zlowred/embd/issues), open a [pull request](https://github.com/zlowred/embd/pulls). We are waiting.
|
||||
File an [issue](https://github.com/kidoman/embd/issues), open a [pull request](https://github.com/kidoman/embd/pulls). We are waiting.
|
||||
|
||||
## About
|
||||
|
||||
EMBD is affectionately designed/developed by Karan Misra ([kidoman](https://github.com/kidoman)), Kunal Powar ([kunalpowar](https://github.com/kunalpowar)) and [FRIENDS](https://github.com/zlowred/embd/blob/master/AUTHORS). We also have a list of [CONTRIBUTORS](https://github.com/zlowred/embd/blob/master/CONTRIBUTORS).
|
||||
EMBD is affectionately designed/developed by Karan Misra ([kidoman](https://github.com/kidoman)), Kunal Powar ([kunalpowar](https://github.com/kunalpowar)) and [FRIENDS](https://github.com/kidoman/embd/blob/master/AUTHORS). We also have a list of [CONTRIBUTORS](https://github.com/kidoman/embd/blob/master/CONTRIBUTORS).
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue