diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 975aca7..b26f838 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -3,7 +3,7 @@ This actually is really simple. A few simple guidelines and we can break for dinner: * EMBD is designed with a lot of affection, with utmost importance given to the dev experience (read: the API feel and style.) So always think from that angle when creating the pull request -* [Documentation](https://godoc.org/github.com/kidoman/embd) helps drive adoption. No exceptions +* [Documentation](https://godoc.org/github.com/zlowred/embd) helps drive adoption. No exceptions When it comes to the code: diff --git a/README.md b/README.md index f37b5b5..0d8ba31 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# embd [![Build Status](https://travis-ci.org/kidoman/embd.svg?branch=master)](https://travis-ci.org/kidoman/embd) [![GoDoc](http://godoc.org/github.com/kidoman/embd?status.png)](http://godoc.org/github.com/kidoman/embd) +# embd [![Build Status](https://travis-ci.org/kidoman/embd.svg?branch=master)](https://travis-ci.org/kidoman/embd) [![GoDoc](http://godoc.org/github.com/zlowred/embd?status.png)](http://godoc.org/github.com/zlowred/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/kidoman/embd/wiki/Why-Go) +Also, you might be interested in: [Why Golang?](https://github.com/zlowred/embd/wiki/Why-Go) [Blog post introducing EMBD](http://kidoman.io/framework/embd.html) @@ -20,8 +20,8 @@ package main import ( "time" - "github.com/kidoman/embd" - _ "github.com/kidoman/embd/host/rpi" // This loads the RPi driver + "github.com/zlowred/embd" + _ "github.com/zlowred/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/kidoman/embd + $ go get github.com/zlowred/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/kidoman/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/zlowred/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/kidoman/embd/embd + go get github.com/zlowred/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/kidoman/embd/tree/master/samples) folder, +Although samples are all present in the [samples](https://github.com/zlowred/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/kidoman/embd" -import _ "github.com/kidoman/embd/host/all" +import "github.com/zlowred/embd" +import _ "github.com/zlowred/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/kidoman/embd" -import _ "github.com/kidoman/embd/host/all" +import "github.com/zlowred/embd" +import _ "github.com/zlowred/embd/host/all" ... embd.InitLED() defer embd.CloseLED() @@ -130,8 +130,8 @@ embd.ToggleLED(3) BBB + **PWM**: ```go -import "github.com/kidoman/embd" -import _ "github.com/kidoman/embd/host/all" +import "github.com/zlowred/embd" +import _ "github.com/zlowred/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/kidoman/embd" -import _ "github.com/kidoman/embd/host/all" +import "github.com/zlowred/embd" +import _ "github.com/zlowred/embd/host/all" ... embd.InitGPIO() defer embd.CloseGPIO() @@ -158,8 +158,8 @@ embd.DigitalWrite(10, embd.High) Could also do: ```go -import "github.com/kidoman/embd" -import _ "github.com/kidoman/embd/host/all" +import "github.com/zlowred/embd" +import _ "github.com/zlowred/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/kidoman/embd" -import "github.com/kidoman/embd/sensor/bmp085" -import _ "github.com/kidoman/embd/host/all" +import "github.com/zlowred/embd" +import "github.com/zlowred/embd/sensor/bmp085" +import _ "github.com/zlowred/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/kidoman/embd" -import "github.com/kidoman/embd/sensor/lsm303" -import _ "github.com/kidoman/embd/host/all" +import "github.com/zlowred/embd" +import "github.com/zlowred/embd/sensor/lsm303" +import _ "github.com/zlowred/embd/host/all" ... bus := embd.NewI2CBus(1) ... @@ -204,28 +204,28 @@ platforms. ## Protocols Supported -* **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) +* **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) ## Sensors Supported -* **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) +* **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) -* **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) +* **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) -* **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) +* **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) -* **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) +* **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) -* **L3GD20** Gyroscope [Documentation](http://godoc.org/github.com/kidoman/embd/sensor/l3gd20), [Datasheet](http://www.adafruit.com/datasheets/L3GD20.pdf) +* **L3GD20** Gyroscope [Documentation](http://godoc.org/github.com/zlowred/embd/sensor/l3gd20), [Datasheet](http://www.adafruit.com/datasheets/L3GD20.pdf) -* **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) +* **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) -* **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) +* **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) ## Interfaces @@ -233,11 +233,11 @@ platforms. ## Controllers -* **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) +* **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) -* **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) +* **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) -* **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) +* **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) ## Convertors @@ -245,10 +245,10 @@ platforms. ## Contributing -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! +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! -File an [issue](https://github.com/kidoman/embd/issues), open a [pull request](https://github.com/kidoman/embd/pulls). We are waiting. +File an [issue](https://github.com/zlowred/embd/issues), open a [pull request](https://github.com/zlowred/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/kidoman/embd/blob/master/AUTHORS). We also have a list of [CONTRIBUTORS](https://github.com/kidoman/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/zlowred/embd/blob/master/AUTHORS). We also have a list of [CONTRIBUTORS](https://github.com/zlowred/embd/blob/master/CONTRIBUTORS). diff --git a/controller/hd44780/hd44780.go b/controller/hd44780/hd44780.go index 88032d5..5e12430 100644 --- a/controller/hd44780/hd44780.go +++ b/controller/hd44780/hd44780.go @@ -16,7 +16,7 @@ import ( "time" "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) type entryMode byte diff --git a/controller/hd44780/hd44780_test.go b/controller/hd44780/hd44780_test.go index b05dddc..34ef629 100644 --- a/controller/hd44780/hd44780_test.go +++ b/controller/hd44780/hd44780_test.go @@ -6,7 +6,7 @@ import ( "testing" "time" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) const ( diff --git a/controller/mcp4725/mcp4725.go b/controller/mcp4725/mcp4725.go index 1dcaa91..8727a54 100644 --- a/controller/mcp4725/mcp4725.go +++ b/controller/mcp4725/mcp4725.go @@ -5,7 +5,7 @@ import ( "sync" "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) const ( diff --git a/controller/pca9685/pca9685.go b/controller/pca9685/pca9685.go index 9a9407d..20a2966 100644 --- a/controller/pca9685/pca9685.go +++ b/controller/pca9685/pca9685.go @@ -7,8 +7,8 @@ import ( "time" "github.com/golang/glog" - "github.com/kidoman/embd" - "github.com/kidoman/embd/util" + "github.com/zlowred/embd" + "github.com/zlowred/embd/util" ) const ( diff --git a/convertors/mcp3008/mcp3008.go b/convertors/mcp3008/mcp3008.go index e5ecb99..d363fe7 100644 --- a/convertors/mcp3008/mcp3008.go +++ b/convertors/mcp3008/mcp3008.go @@ -3,7 +3,7 @@ package mcp3008 import ( "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) // MCP3008 represents a mcp3008 8bit DAC. diff --git a/descriptor.go b/descriptor.go index b891008..ccc9f09 100644 --- a/descriptor.go +++ b/descriptor.go @@ -15,6 +15,7 @@ type Descriptor struct { I2CDriver func() I2CDriver LEDDriver func() LEDDriver SPIDriver func() SPIDriver + W1Driver func() W1Driver } // The Describer type is a Descriptor provider. diff --git a/detect.go b/detect.go index a92ff4e..3eb6f1d 100644 --- a/detect.go +++ b/detect.go @@ -122,6 +122,6 @@ func DetectHost() (host Host, rev int, err error) { case strings.Contains(hardware, "BCM2708") || strings.Contains(hardware, "BCM2709"): return HostRPi, rev, nil default: - return HostNull, 0, fmt.Errorf(`embd: your host "%v:%v" is not supported at this moment. request support at https://github.com/kidoman/embd/issues`, host, model) + return HostNull, 0, fmt.Errorf(`embd: your host "%v:%v" is not supported at this moment. request support at https://github.com/zlowred/embd/issues`, host, model) } } diff --git a/doc.go b/doc.go index 80118d4..0b05449 100644 --- a/doc.go +++ b/doc.go @@ -7,7 +7,7 @@ Use the LED driver to toggle LEDs on the BBB: - import "github.com/kidoman/embd" + import "github.com/zlowred/embd" ... embd.InitLED() defer embd.CloseLED() @@ -18,7 +18,7 @@ Even shorter while prototyping: - import "github.com/kidoman/embd" + import "github.com/zlowred/embd" ... embd.InitLED() defer embd.CloseLED() @@ -27,7 +27,7 @@ BBB + PWM: - import "github.com/kidoman/embd" + import "github.com/zlowred/embd" ... embd.InitGPIO() defer embd.CloseGPIO() @@ -39,7 +39,7 @@ Control GPIO pins on the RaspberryPi / BeagleBone Black: - import "github.com/kidoman/embd" + import "github.com/zlowred/embd" ... embd.InitGPIO() defer embd.CloseGPIO() @@ -49,7 +49,7 @@ Could also do: - import "github.com/kidoman/embd" + import "github.com/zlowred/embd" ... embd.InitGPIO() defer embd.CloseGPIO() @@ -61,8 +61,8 @@ Or read data from the Bosch BMP085 barometric sensor: - import "github.com/kidoman/embd" - import "github.com/kidoman/embd/sensor/bmp085" + import "github.com/zlowred/embd" + import "github.com/zlowred/embd/sensor/bmp085" ... bus := embd.NewI2CBus(1) ... @@ -73,8 +73,8 @@ Even find out the heading from the LSM303 magnetometer: - import "github.com/kidoman/embd" - import "github.com/kidoman/embd/sensor/lsm303" + import "github.com/zlowred/embd" + import "github.com/zlowred/embd/sensor/lsm303" ... bus := embd.NewI2CBus(1) ... diff --git a/embd/detect.go b/embd/detect.go index 6659980..671543f 100644 --- a/embd/detect.go +++ b/embd/detect.go @@ -5,7 +5,7 @@ import ( "os" "github.com/codegangsta/cli" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) func detect(c *cli.Context) { diff --git a/embd/main.go b/embd/main.go index 7ea7424..67082e6 100644 --- a/embd/main.go +++ b/embd/main.go @@ -4,7 +4,7 @@ import ( "os" "github.com/codegangsta/cli" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) var version = "0.1.0" diff --git a/host/all/all.go b/host/all/all.go index 5bfd7a9..e29411c 100644 --- a/host/all/all.go +++ b/host/all/all.go @@ -2,6 +2,6 @@ package all import ( - _ "github.com/kidoman/embd/host/bbb" - _ "github.com/kidoman/embd/host/rpi" + _ "github.com/zlowred/embd/host/bbb" + _ "github.com/zlowred/embd/host/rpi" ) diff --git a/host/bbb/analogpin.go b/host/bbb/analogpin.go index e12b9dd..2326601 100644 --- a/host/bbb/analogpin.go +++ b/host/bbb/analogpin.go @@ -9,7 +9,7 @@ import ( "strconv" "strings" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) type analogPin struct { diff --git a/host/bbb/analogpin_test.go b/host/bbb/analogpin_test.go index 49f22cb..702e41d 100644 --- a/host/bbb/analogpin_test.go +++ b/host/bbb/analogpin_test.go @@ -3,7 +3,7 @@ package bbb import ( "testing" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) func TestAnalogPinClose(t *testing.T) { diff --git a/host/bbb/bbb.go b/host/bbb/bbb.go index f909627..c9ccf27 100644 --- a/host/bbb/bbb.go +++ b/host/bbb/bbb.go @@ -16,8 +16,8 @@ import ( "strings" "github.com/golang/glog" - "github.com/kidoman/embd" - "github.com/kidoman/embd/host/generic" + "github.com/zlowred/embd" + "github.com/zlowred/embd/host/generic" ) var pins = embd.PinMap{ diff --git a/host/bbb/pwmpin.go b/host/bbb/pwmpin.go index 1bd6c95..73cc81b 100644 --- a/host/bbb/pwmpin.go +++ b/host/bbb/pwmpin.go @@ -11,8 +11,8 @@ import ( "time" "github.com/golang/glog" - "github.com/kidoman/embd" - "github.com/kidoman/embd/util" + "github.com/zlowred/embd" + "github.com/zlowred/embd/util" ) const ( diff --git a/host/bbb/pwmpin_test.go b/host/bbb/pwmpin_test.go index 1c07ff3..fd27b9c 100644 --- a/host/bbb/pwmpin_test.go +++ b/host/bbb/pwmpin_test.go @@ -3,7 +3,7 @@ package bbb import ( "testing" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) func TestPWMPinClose(t *testing.T) { diff --git a/host/generic/digitalpin.go b/host/generic/digitalpin.go index 80a81ea..2dbb252 100644 --- a/host/generic/digitalpin.go +++ b/host/generic/digitalpin.go @@ -12,7 +12,7 @@ import ( "strconv" "time" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) type digitalPin struct { diff --git a/host/generic/digitalpin_test.go b/host/generic/digitalpin_test.go index 18e900e..df5c99e 100644 --- a/host/generic/digitalpin_test.go +++ b/host/generic/digitalpin_test.go @@ -3,7 +3,7 @@ package generic import ( "testing" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) func TestDigitalPinClose(t *testing.T) { diff --git a/host/generic/i2cbus.go b/host/generic/i2cbus.go index dc8e74c..1cb10d4 100644 --- a/host/generic/i2cbus.go +++ b/host/generic/i2cbus.go @@ -12,7 +12,7 @@ import ( "unsafe" "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) const ( diff --git a/host/generic/interrupt.go b/host/generic/interrupt.go index 4052283..3eba081 100644 --- a/host/generic/interrupt.go +++ b/host/generic/interrupt.go @@ -8,7 +8,7 @@ import ( "sync" "syscall" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) const ( diff --git a/host/generic/led.go b/host/generic/led.go index 67f56c9..21826bc 100644 --- a/host/generic/led.go +++ b/host/generic/led.go @@ -8,7 +8,7 @@ import ( "os" "strings" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) type led struct { diff --git a/host/generic/spibus.go b/host/generic/spibus.go index ad3bcec..99755ab 100644 --- a/host/generic/spibus.go +++ b/host/generic/spibus.go @@ -8,7 +8,7 @@ import ( "unsafe" "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) const ( diff --git a/host/rpi/onewirebus.go b/host/rpi/onewirebus.go new file mode 100644 index 0000000..48e4d0d --- /dev/null +++ b/host/rpi/onewirebus.go @@ -0,0 +1,192 @@ +// I²C support. + +package rpi + +import ( + "fmt" + "os" + "sync" + + "github.com/golang/glog" + "github.com/zlowred/embd" + "io/ioutil" +) + +type w1Bus struct { + l byte + busMap map[string]embd.W1Device + mu sync.Mutex + + initialized bool +} + +type w1Device struct { + file *os.File + addr string + mu sync.Mutex + + initialized bool +} + +func NewW1Bus(l byte) embd.W1Bus { + fmt.Println("new w1 bus") + return &w1Bus{l: l, busMap: make(map[string]embd.W1Device)} +} + +func (b *w1Bus) init() error { + if b.initialized { + return nil + } + + var err error + if _, err = os.Stat("/sys/bus/w1"); os.IsNotExist(err) { + return err + } + + glog.V(2).Infof("onewire: bus %v initialized", b.l) + + b.initialized = true + + return nil +} + +func (d *w1Device) init() error { + if d.initialized { + return nil + } + + var err error + if d.file, err = os.OpenFile(fmt.Sprintf("/sys/bus/w1/devices/%s/rw", d.addr), os.O_RDWR, os.ModeExclusive); err != nil { + return err + } + + glog.V(2).Infof("onewire: device %s initialized", d.addr) + + d.initialized = true + + return nil +} + +func (d *w1Device) ReadByte() (byte, error) { + d.mu.Lock() + defer d.mu.Unlock() + + if err := d.init(); err != nil { + return 0, err + } + + bytes := make([]byte, 1) + n, _ := d.file.Read(bytes) + + if n != 1 { + return 0, fmt.Errorf("onewire: Unexpected number (%v) of bytes read in ReadByte", n) + } + + return bytes[0], nil +} + +func (d *w1Device) WriteByte(value byte) error { + d.mu.Lock() + defer d.mu.Unlock() + + if err := d.init(); err != nil { + return err + } + + n, err := d.file.Write([]byte{value}) + + if n != 1 { + err = fmt.Errorf("onewire: Unexpected number (%v) of bytes written in WriteByte", n) + } + + return err +} + +func (d *w1Device) WriteBytes(value []byte) error { + d.mu.Lock() + defer d.mu.Unlock() + + if err := d.init(); err != nil { + return err + } + + for i := range value { + n, err := d.file.Write([]byte{value[i]}) + + if n != 1 { + return fmt.Errorf("onewire: Unexpected number (%v) of bytes written in WriteBytes", n) + } + if err != nil { + return err + } + } + + return nil +} + +func (d *w1Device) ReadBytes(number int) (value []byte, err error) { + d.mu.Lock() + defer d.mu.Unlock() + + if err := d.init(); err != nil { + return nil, err + } + + bytes := make([]byte, number) + n, _ := d.file.Read(bytes) + + if n != number { + return nil, fmt.Errorf("onewire: Unexpected number (%v) of bytes read in ReadBytes", n) + } + + return bytes, nil +} + +func (b *w1Bus) ListDevices() (devices []string, err error) { + dir, err := ioutil.ReadDir("/sys/bus/w1/devices/") + if err != nil { + return nil, err + } + devs := make([]string, len(dir)) + + for index, element := range dir { + devs[index] = element.Name() + } + + return devs, nil +} + +func (b *w1Bus) Open(address string) (device embd.W1Device, err error) { + b.mu.Lock() + defer b.mu.Unlock() + + if d, ok := b.busMap[address]; ok { + return d, nil + } + + d := &w1Device{addr: address} + b.busMap[address] = d + return d, nil +} + +func (b *w1Bus) Close() error { + b.mu.Lock() + defer b.mu.Unlock() + + for _, b := range b.busMap { + b.Close() + } + + return nil +} + +func (b *w1Device) Close() error { + b.mu.Lock() + defer b.mu.Unlock() + + if !b.initialized { + return nil + } + + return b.file.Close() +} diff --git a/host/rpi/rpi.go b/host/rpi/rpi.go index 0a82a4b..84acb1b 100644 --- a/host/rpi/rpi.go +++ b/host/rpi/rpi.go @@ -5,12 +5,14 @@ GPIO (digital (rw)) I²C LED + W1 - make sure that w1-gpio kernel module is loaded. If you wish to use it with sensors directly (e.g. DS18B20 etc) make sure to disable respective kernel modules (e.g. w1-therm) in /etc/modprobe.d/blacklist.conf. */ package rpi import ( - "github.com/kidoman/embd" - "github.com/kidoman/embd/host/generic" + "github.com/zlowred/embd" + "github.com/zlowred/embd/host/generic" + "fmt" ) var spiDeviceMinor = byte(0) @@ -73,6 +75,7 @@ var ledMap = embd.LEDMap{ } func init() { + fmt.Println("registering RPI") embd.Register(embd.HostRPi, func(rev int) *embd.Descriptor { // Refer to http://elinux.org/RPi_HardwareHistory#Board_Revision_History // for details. @@ -97,6 +100,10 @@ func init() { SPIDriver: func() embd.SPIDriver { return embd.NewSPIDriver(spiDeviceMinor, generic.NewSPIBus, nil) }, + W1Driver: func() embd.W1Driver { + return embd.NewW1Driver(NewW1Bus) + }, } }) + fmt.Println("registered") } diff --git a/interface/keypad/matrix4x3/matrix4x3.go b/interface/keypad/matrix4x3/matrix4x3.go index 6ef984f..cb268b4 100644 --- a/interface/keypad/matrix4x3/matrix4x3.go +++ b/interface/keypad/matrix4x3/matrix4x3.go @@ -6,7 +6,7 @@ import ( "sync" "time" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) type Key int diff --git a/motion/servo/servo.go b/motion/servo/servo.go index c0876d2..5bb51f9 100644 --- a/motion/servo/servo.go +++ b/motion/servo/servo.go @@ -3,7 +3,7 @@ package servo import ( "github.com/golang/glog" - "github.com/kidoman/embd/util" + "github.com/zlowred/embd/util" ) const ( diff --git a/onewire.go b/onewire.go new file mode 100644 index 0000000..9907a78 --- /dev/null +++ b/onewire.go @@ -0,0 +1,78 @@ +//OneWire support. + +package embd + +// W1Bus interface is used to interact with the OneWire bus. +type W1Bus interface { + + // List devices on the bus + ListDevices() (devices []string, err error) + + // Open a device + Open(address string) (device W1Device, err error) + + // Close releases the resources associated with the bus. + Close() error +} + +// W1Device interface is user to interact with the OneWire device. +type W1Device interface { + // ReadByte reads a byte from the device. + ReadByte() (value byte, err error) + // ReadByte number of bytes from the device. + ReadBytes(number int) (value []byte, err error) + // WriteByte writes a byte to the device. + WriteByte(value byte) error + // WriteBytes writes a slice bytes to the device. + WriteBytes(value []byte) error + + // Close releases the resources associated with the device. + Close() error +} + +// W1Driver interface interacts with the host descriptors to allow us +// control of OneWire communication. +type W1Driver interface { + Bus(l byte) W1Bus + + // Close releases the resources associated with the driver. + Close() error +} + +var w1DriverInitialized bool +var w1DriverInstance W1Driver + +// InitW1 initializes the W1 driver. +func InitW1() error { + if w1DriverInitialized { + return nil + } + + desc, err := DescribeHost() + if err != nil { + return err + } + + if desc.W1Driver == nil { + return ErrFeatureNotSupported + } + + w1DriverInstance = desc.W1Driver() + w1DriverInitialized = true + + return nil +} + +// CloseW1 releases resources associated with the OneWire driver. +func CloseW1() error { + return w1DriverInstance.Close() +} + +// NewW1Bus returns a W1Bus. +func NewW1Bus(l byte) W1Bus { + if err := InitW1(); err != nil { + panic(err) + } + + return w1DriverInstance.Bus(l) +} diff --git a/onewiredriver.go b/onewiredriver.go new file mode 100644 index 0000000..38ed5e8 --- /dev/null +++ b/onewiredriver.go @@ -0,0 +1,44 @@ +// Generic OneWire driver. + +package embd + +import "sync" + +type w1BusFactory func(byte) W1Bus + +type w1Driver struct { + busMap map[byte]W1Bus + busMapLock sync.Mutex + + ibf w1BusFactory +} + +// NewW1Driver returns a W1Driver interface which allows control +// over the OneWire subsystem. +func NewW1Driver(ibf w1BusFactory) W1Driver { + return &w1Driver{ + busMap: make(map[byte]W1Bus), + ibf: ibf, + } +} + +func (i *w1Driver) Bus(l byte) W1Bus { + i.busMapLock.Lock() + defer i.busMapLock.Unlock() + + if b, ok := i.busMap[l]; ok { + return b + } + + b := i.ibf(l) + i.busMap[l] = b + return b +} + +func (i *w1Driver) Close() error { + for _, b := range i.busMap { + b.Close() + } + + return nil +} diff --git a/samples/28bjy-48.go b/samples/28bjy-48.go index 456b7db..f49be5f 100644 --- a/samples/28bjy-48.go +++ b/samples/28bjy-48.go @@ -18,8 +18,8 @@ import ( "os/signal" "time" - "github.com/kidoman/embd" - _ "github.com/kidoman/embd/host/rpi" + "github.com/zlowred/embd" + _ "github.com/zlowred/embd/host/rpi" ) func main() { diff --git a/samples/analog.go b/samples/analog.go index 687ecd5..b935e2a 100644 --- a/samples/analog.go +++ b/samples/analog.go @@ -9,9 +9,9 @@ import ( "os/signal" "time" - "github.com/kidoman/embd" + "github.com/zlowred/embd" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/analogshort.go b/samples/analogshort.go index 064be32..501224a 100644 --- a/samples/analogshort.go +++ b/samples/analogshort.go @@ -6,9 +6,9 @@ import ( "flag" "fmt" - "github.com/kidoman/embd" + "github.com/zlowred/embd" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/bh1750fvi.go b/samples/bh1750fvi.go index 83e9a72..1b7139a 100644 --- a/samples/bh1750fvi.go +++ b/samples/bh1750fvi.go @@ -7,10 +7,10 @@ import ( "fmt" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/sensor/bh1750fvi" + "github.com/zlowred/embd" + "github.com/zlowred/embd/sensor/bh1750fvi" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/bmp085.go b/samples/bmp085.go index 0fa56ad..7860a39 100644 --- a/samples/bmp085.go +++ b/samples/bmp085.go @@ -7,10 +7,10 @@ import ( "fmt" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/sensor/bmp085" + "github.com/zlowred/embd" + "github.com/zlowred/embd/sensor/bmp085" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/bmp180.go b/samples/bmp180.go index 845e771..f39ae2b 100644 --- a/samples/bmp180.go +++ b/samples/bmp180.go @@ -7,10 +7,10 @@ import ( "fmt" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/sensor/bmp180" + "github.com/zlowred/embd" + "github.com/zlowred/embd/sensor/bmp180" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/characterdisplay.go b/samples/characterdisplay.go index 7a054aa..5b14410 100644 --- a/samples/characterdisplay.go +++ b/samples/characterdisplay.go @@ -6,11 +6,11 @@ import ( "flag" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/controller/hd44780" - "github.com/kidoman/embd/interface/display/characterdisplay" + "github.com/zlowred/embd" + "github.com/zlowred/embd/controller/hd44780" + "github.com/zlowred/embd/interface/display/characterdisplay" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/fullblinker.go b/samples/fullblinker.go index 7e43b36..2e07e39 100644 --- a/samples/fullblinker.go +++ b/samples/fullblinker.go @@ -11,8 +11,8 @@ import ( "os/signal" "time" - "github.com/kidoman/embd" - _ "github.com/kidoman/embd/host/rpi" + "github.com/zlowred/embd" + _ "github.com/zlowred/embd/host/rpi" ) func main() { diff --git a/samples/gpio.go b/samples/gpio.go index b3769eb..ab5c1fa 100644 --- a/samples/gpio.go +++ b/samples/gpio.go @@ -6,9 +6,9 @@ import ( "flag" "time" - "github.com/kidoman/embd" + "github.com/zlowred/embd" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/gpiodetect.go b/samples/gpiodetect.go index 8bc5f78..f709667 100644 --- a/samples/gpiodetect.go +++ b/samples/gpiodetect.go @@ -6,9 +6,9 @@ import ( "flag" "time" - "github.com/kidoman/embd" + "github.com/zlowred/embd" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/gpiodirect.go b/samples/gpiodirect.go index 85bd22c..d4d3002 100644 --- a/samples/gpiodirect.go +++ b/samples/gpiodirect.go @@ -6,9 +6,9 @@ import ( "flag" "time" - "github.com/kidoman/embd" + "github.com/zlowred/embd" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/gpiointerrupt.go b/samples/gpiointerrupt.go index 9b6ccc9..ebf4386 100644 --- a/samples/gpiointerrupt.go +++ b/samples/gpiointerrupt.go @@ -6,9 +6,9 @@ import ( "flag" "fmt" - "github.com/kidoman/embd" + "github.com/zlowred/embd" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/gpioshort.go b/samples/gpioshort.go index b1c5c2c..a05c449 100644 --- a/samples/gpioshort.go +++ b/samples/gpioshort.go @@ -5,9 +5,9 @@ package main import ( "flag" - "github.com/kidoman/embd" + "github.com/zlowred/embd" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/hd44780.go b/samples/hd44780.go index 418fa7e..aecd01d 100644 --- a/samples/hd44780.go +++ b/samples/hd44780.go @@ -6,10 +6,10 @@ import ( "flag" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/controller/hd44780" + "github.com/zlowred/embd" + "github.com/zlowred/embd/controller/hd44780" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/keypad/matrix4x3.go b/samples/keypad/matrix4x3.go index 9b4feda..9d54dea 100644 --- a/samples/keypad/matrix4x3.go +++ b/samples/keypad/matrix4x3.go @@ -5,8 +5,8 @@ package main import ( "fmt" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/interface/keypad/matrix4x3" + "github.com/zlowred/embd" + "github.com/zlowred/embd/interface/keypad/matrix4x3" ) func main() { diff --git a/samples/l3gd20.go b/samples/l3gd20.go index f0a94e6..2710d39 100644 --- a/samples/l3gd20.go +++ b/samples/l3gd20.go @@ -9,10 +9,10 @@ import ( "os/signal" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/sensor/l3gd20" + "github.com/zlowred/embd" + "github.com/zlowred/embd/sensor/l3gd20" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/led.go b/samples/led.go index 82650d0..6cacd1e 100644 --- a/samples/led.go +++ b/samples/led.go @@ -11,9 +11,9 @@ import ( "os/signal" "time" - "github.com/kidoman/embd" + "github.com/zlowred/embd" - _ "github.com/kidoman/embd/host/bbb" + _ "github.com/zlowred/embd/host/bbb" ) func main() { diff --git a/samples/ledshort.go b/samples/ledshort.go index 64a01ce..8cd2c2c 100644 --- a/samples/ledshort.go +++ b/samples/ledshort.go @@ -8,9 +8,9 @@ import ( "flag" "time" - "github.com/kidoman/embd" + "github.com/zlowred/embd" - _ "github.com/kidoman/embd/host/bbb" + _ "github.com/zlowred/embd/host/bbb" ) func main() { diff --git a/samples/lsm303.go b/samples/lsm303.go index e4461de..d08b11b 100644 --- a/samples/lsm303.go +++ b/samples/lsm303.go @@ -7,10 +7,10 @@ import ( "fmt" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/sensor/lsm303" + "github.com/zlowred/embd" + "github.com/zlowred/embd/sensor/lsm303" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/mcp3008.go b/samples/mcp3008.go index 791d56a..eedf3be 100644 --- a/samples/mcp3008.go +++ b/samples/mcp3008.go @@ -8,9 +8,9 @@ import ( "fmt" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/convertors/mcp3008" - _ "github.com/kidoman/embd/host/all" + "github.com/zlowred/embd" + "github.com/zlowred/embd/convertors/mcp3008" + _ "github.com/zlowred/embd/host/all" ) const ( diff --git a/samples/mcp4725.go b/samples/mcp4725.go index ad80967..7dbc8f7 100644 --- a/samples/mcp4725.go +++ b/samples/mcp4725.go @@ -9,10 +9,10 @@ import ( "os" "os/signal" - "github.com/kidoman/embd" - "github.com/kidoman/embd/controller/mcp4725" + "github.com/zlowred/embd" + "github.com/zlowred/embd/controller/mcp4725" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/onewire.go b/samples/onewire.go new file mode 100644 index 0000000..e213bb3 --- /dev/null +++ b/samples/onewire.go @@ -0,0 +1,72 @@ +// +build ignore + +package main + +import ( + "fmt" + + "github.com/zlowred/embd" + _ "github.com/zlowred/embd/host/all" +) + +func main() { + if err := embd.InitW1(); err != nil { + panic(err) + } + defer embd.CloseW1() + + w1 := embd.NewW1Bus(0) + + devs, err := w1.ListDevices() + + if err != nil { + panic(err) + } + + for _, dev := range devs { + fmt.Println("OneWire device: %s", dev) + } + + w1d, err := w1.Open("28-011572120bff") + + if err != nil { + panic(err) + } + + fmt.Printf("%v\n", w1d) + + err = w1d.WriteByte(0x44) + + if err != nil { + panic(err) + } + + for ret, err := w1d.ReadByte(); ret == 0 && err != nil; {} + + if err != nil { + panic(err) + } + + err = w1d.WriteByte(0xBE) + + if err != nil { + panic(err) + } + + res, err := w1d.ReadBytes(9) + + if err != nil { + panic(err) + } + + fmt.Print("res: ") + for _, val := range res { + fmt.Printf("0x%02X ", val) + } + fmt.Println() + + var temp float64 = float64(float64(res[1]) * 256. + float64(res[0])) / 16. + fmt.Printf("%f\n", temp) + + fmt.Println("Done") +} diff --git a/samples/pca9685.go b/samples/pca9685.go index 9976340..aca5db3 100644 --- a/samples/pca9685.go +++ b/samples/pca9685.go @@ -8,10 +8,10 @@ import ( "os/signal" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/controller/pca9685" + "github.com/zlowred/embd" + "github.com/zlowred/embd/controller/pca9685" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/pwm.go b/samples/pwm.go index cecbc4d..86f62f3 100644 --- a/samples/pwm.go +++ b/samples/pwm.go @@ -8,10 +8,10 @@ import ( "flag" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/host/bbb" + "github.com/zlowred/embd" + "github.com/zlowred/embd/host/bbb" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/servo.go b/samples/servo.go index 2e82dd8..a451d97 100644 --- a/samples/servo.go +++ b/samples/servo.go @@ -8,11 +8,11 @@ import ( "os/signal" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/controller/pca9685" - "github.com/kidoman/embd/motion/servo" + "github.com/zlowred/embd" + "github.com/zlowred/embd/controller/pca9685" + "github.com/zlowred/embd/motion/servo" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/servobbb.go b/samples/servobbb.go index fbf0db1..ba4ecdd 100644 --- a/samples/servobbb.go +++ b/samples/servobbb.go @@ -8,10 +8,10 @@ import ( "os/signal" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/motion/servo" + "github.com/zlowred/embd" + "github.com/zlowred/embd/motion/servo" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/servoblaster.go b/samples/servoblaster.go index b2d4cdf..777c673 100644 --- a/samples/servoblaster.go +++ b/samples/servoblaster.go @@ -8,10 +8,10 @@ import ( "os/signal" "time" - "github.com/kidoman/embd/controller/servoblaster" - "github.com/kidoman/embd/motion/servo" + "github.com/zlowred/embd/controller/servoblaster" + "github.com/zlowred/embd/motion/servo" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/simpleblinker.go b/samples/simpleblinker.go index 9e4f780..8ef0e5a 100644 --- a/samples/simpleblinker.go +++ b/samples/simpleblinker.go @@ -8,8 +8,8 @@ package main import ( "time" - "github.com/kidoman/embd" - _ "github.com/kidoman/embd/host/rpi" // This loads the RPi driver + "github.com/zlowred/embd" + _ "github.com/zlowred/embd/host/rpi" // This loads the RPi driver ) func main() { diff --git a/samples/spi.go b/samples/spi.go index 298acc4..8a76c0d 100644 --- a/samples/spi.go +++ b/samples/spi.go @@ -5,8 +5,8 @@ package main import ( "fmt" - "github.com/kidoman/embd" - _ "github.com/kidoman/embd/host/all" + "github.com/zlowred/embd" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/spimcp3008.go b/samples/spimcp3008.go index 394243e..fee3274 100644 --- a/samples/spimcp3008.go +++ b/samples/spimcp3008.go @@ -7,8 +7,8 @@ import ( "fmt" "time" - "github.com/kidoman/embd" - _ "github.com/kidoman/embd/host/all" + "github.com/zlowred/embd" + _ "github.com/zlowred/embd/host/all" ) const ( diff --git a/samples/tmp006.go b/samples/tmp006.go index 6252b00..2ce5190 100644 --- a/samples/tmp006.go +++ b/samples/tmp006.go @@ -8,10 +8,10 @@ import ( "os" "os/signal" - "github.com/kidoman/embd" - "github.com/kidoman/embd/sensor/tmp006" + "github.com/zlowred/embd" + "github.com/zlowred/embd/sensor/tmp006" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/universalblinker.go b/samples/universalblinker.go index 190ae1d..03f2ccd 100644 --- a/samples/universalblinker.go +++ b/samples/universalblinker.go @@ -10,8 +10,8 @@ import ( "os/signal" "time" - "github.com/kidoman/embd" - _ "github.com/kidoman/embd/host/all" + "github.com/zlowred/embd" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/us020.go b/samples/us020.go index f0e7537..7406b7c 100644 --- a/samples/us020.go +++ b/samples/us020.go @@ -9,10 +9,10 @@ import ( "os/signal" "time" - "github.com/kidoman/embd" - "github.com/kidoman/embd/sensor/us020" + "github.com/zlowred/embd" + "github.com/zlowred/embd/sensor/us020" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/samples/watersensor.go b/samples/watersensor.go index ff4ba8a..4890a60 100644 --- a/samples/watersensor.go +++ b/samples/watersensor.go @@ -7,10 +7,10 @@ import ( "time" "github.com/golang/glog" - "github.com/kidoman/embd" - "github.com/kidoman/embd/sensor/watersensor" + "github.com/zlowred/embd" + "github.com/zlowred/embd/sensor/watersensor" - _ "github.com/kidoman/embd/host/all" + _ "github.com/zlowred/embd/host/all" ) func main() { diff --git a/sensor/bh1750fvi/bh1750fvi.go b/sensor/bh1750fvi/bh1750fvi.go index 6903bb8..f774211 100644 --- a/sensor/bh1750fvi/bh1750fvi.go +++ b/sensor/bh1750fvi/bh1750fvi.go @@ -5,7 +5,7 @@ import ( "sync" "time" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) //accuracy = sensorValue/actualValue] (min = 0.96, typ = 1.2, max = 1.44 diff --git a/sensor/bmp085/bmp085.go b/sensor/bmp085/bmp085.go index b58b37b..c8c184d 100644 --- a/sensor/bmp085/bmp085.go +++ b/sensor/bmp085/bmp085.go @@ -8,7 +8,7 @@ import ( "time" "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) const ( diff --git a/sensor/bmp180/bmp180.go b/sensor/bmp180/bmp180.go index fdc46f3..bcab5b3 100644 --- a/sensor/bmp180/bmp180.go +++ b/sensor/bmp180/bmp180.go @@ -8,7 +8,7 @@ import ( "time" "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) const ( diff --git a/sensor/l3gd20/l3gd20.go b/sensor/l3gd20/l3gd20.go index c3ad94a..c59e2c8 100644 --- a/sensor/l3gd20/l3gd20.go +++ b/sensor/l3gd20/l3gd20.go @@ -8,7 +8,7 @@ import ( "time" "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) const ( diff --git a/sensor/lsm303/lsm303.go b/sensor/lsm303/lsm303.go index 583a0a8..d390045 100644 --- a/sensor/lsm303/lsm303.go +++ b/sensor/lsm303/lsm303.go @@ -7,7 +7,7 @@ import ( "time" "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) const ( diff --git a/sensor/tmp006/tmp006.go b/sensor/tmp006/tmp006.go index 842204b..f6347e9 100644 --- a/sensor/tmp006/tmp006.go +++ b/sensor/tmp006/tmp006.go @@ -9,7 +9,7 @@ import ( "time" "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) const ( diff --git a/sensor/us020/us020.go b/sensor/us020/us020.go index b7d400a..83e581b 100644 --- a/sensor/us020/us020.go +++ b/sensor/us020/us020.go @@ -6,7 +6,7 @@ import ( "time" "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) const ( diff --git a/sensor/watersensor/watersensor.go b/sensor/watersensor/watersensor.go index c83628e..7b1dfe5 100644 --- a/sensor/watersensor/watersensor.go +++ b/sensor/watersensor/watersensor.go @@ -5,7 +5,7 @@ import ( "sync" "github.com/golang/glog" - "github.com/kidoman/embd" + "github.com/zlowred/embd" ) // WaterSensor represents a water sensor.