hybridgroup.gobot/platforms/raspi
Adrian Zankich 52e3ffc735 Rename test helpers so they don't impact coverage 2014-12-18 14:07:48 -08:00
..
README.md update readmes for import script 2014-12-12 10:32:52 -08:00
doc.go Add raspi support 2014-11-04 17:14:36 -08:00
raspi_adaptor.go Refactor raspi revision detection 2014-12-17 13:21:09 -08:00
raspi_adaptor_test.go Rename test helpers so they don't impact coverage 2014-12-18 14:07:48 -08:00

README.md

Raspi

The Raspberry Pi is an inexpensive and popular ARM based single board computer with digital & PWM GPIO, and i2c interfaces built in.

The Raspberry Pi is a credit-card-sized single-board computer developed in the UK by the Raspberry Pi Foundation with the intention of promoting the teaching of basic computer science in schools

For more info about the Raspberry Pi platform, click here.

How to Install

First you must install the appropriate Go packages

go get -d -u github.com/hybridgroup/gobot/... && go install github.com/hybridgroup/gobot/platforms/raspi

Cross compiling for the Raspberry Pi

You must first configure your Go environment for linux cross compiling

$ cd $GOROOT/src
$ GOOS=linux GOARCH=arm ./make.bash --no-clean

Then compile your Gobot program with

$ GOARM=6 GOARCH=arm GOOS=linux examples/raspi_blink.go

Then you can simply upload your program over the network from your host computer to the Raspi

$ scp raspi_blink pi@192.168.1.xxx:/home/pi/

and execute it on your Raspberry Pi with

$ ./raspi_blink

How to Use

package main

import (
        "time"

        "github.com/hybridgroup/gobot"
        "github.com/hybridgroup/gobot/platforms/gpio"
        "github.com/hybridgroup/gobot/platforms/raspi"
)

func main() {
        gbot := gobot.NewGobot()

        r := raspi.NewRaspiAdaptor("raspi")
        led := gpio.NewLedDriver(r, "led", "7")

        work := func() {
                gobot.Every(1*time.Second, func() {
                        led.Toggle()
                })
        }

        robot := gobot.NewRobot("blinkBot",
                []gobot.Connection{r},
                []gobot.Device{led},
                work,
        )

        gbot.AddRobot(robot)

        gbot.Start()
}