edison

package
v2.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 5, 2024 License: Apache-2.0, Apache-2.0 Imports: 8 Imported by: 0

README

Edison

The Intel Edison is a WiFi and Bluetooth enabled development platform for the Internet of Things. It packs a robust set of features into its small size and supports a broad spectrum of I/O and software support.

For more info about the Edison platform click here.

How to Install

Please refer to the main README.md

Setting up your Intel Edison

Everything you need to get started with the Edison is in the Intel Getting Started Guide:

https://software.intel.com/en-us/iot/library/edison-getting-started

Don't forget to configure your Edison's wifi connection and flash your Edison with the latest firmware image!

The recommended way to connect to your device is via wifi, for that follow the directions here:

https://software.intel.com/en-us/connecting-your-intel-edison-board-using-wifi

If you don't have a wifi network available, the Intel documentation explains how to use another connection type, but note that this guide assumes you are using wifi connection.

You can obtain the IP address of your Edison, by running the floowing command:

ip addr show | grep inet

Don't forget to setup the a password for the device otherwise you won't be able to connect using SSH. From within the screen session, run the following command:

configure_edison --password

Note that you MUST setup a password otherwise SSH won't be enabled. If later on you aren't able to scp to the device, try to reset the password. This password will obviously be needed next time you connect to your device.

How To Use

package main

import (
  "time"

  "gobot.io/x/gobot/v2"
  "gobot.io/x/gobot/v2/drivers/gpio"
  "gobot.io/x/gobot/v2/platforms/intel-iot/edison"
)

func main() {
  e := edison.NewAdaptor()
  led := gpio.NewLedDriver(e, "13")

  work := func() {
    gobot.Every(1*time.Second, func() {
      if err := led.Toggle(); err != nil {
				fmt.Println(err)
			}
    })
  }

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

  if err := robot.Start(); err != nil {
		panic(err)
	}
}

You can read the full API documentation online.

How to Connect

Compiling

Compile your Gobot program on your workstation like this:

GOARCH=386 GOOS=linux go build examples/edison_blink.go

Once you have compiled your code, you can you can upload your program and execute it on the Intel Edison from your workstation using the scp and ssh commands like this:

scp edison_blink root@<IP of your device>:/home/root/
ssh -t root@<IP of your device> "./edison_blink"

At this point you should see one of the onboard LEDs blinking. Press control + c to exit.

To update the program after you made a change, you will need to scp it over once again and start it from the command line (via screen).

Documentation

Overview

Package edison contains the Gobot adaptor for the Intel Edison.

For further information refer to intel-iot README: https://github.com/hybridgroup/gobot/blob/release/platforms/intel-iot/edison/README.md

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Adaptor

type Adaptor struct {
	*adaptors.AnalogPinsAdaptor
	*adaptors.PWMPinsAdaptor
	*adaptors.I2cBusAdaptor
	// contains filtered or unexported fields
}

Adaptor represents a Gobot Adaptor for an Intel Edison

func NewAdaptor

func NewAdaptor(opts ...interface{}) *Adaptor

NewAdaptor returns a new Edison Adaptor of the given type. Supported types are: "arduino", "miniboard", "sparkfun", an empty string defaults to "arduino"

Optional parameters for PWM, see [adaptors.NewPWMPinsAdaptor]

func (*Adaptor) AnalogRead

func (a *Adaptor) AnalogRead(pin string) (int, error)

AnalogRead returns value from analog reading of specified pin

func (*Adaptor) Connect

func (a *Adaptor) Connect() error

Connect initializes the Edison for use with the Arduino breakout board

func (*Adaptor) DigitalPin

func (a *Adaptor) DigitalPin(id string) (gobot.DigitalPinner, error)

DigitalPin returns a digital pin. If the pin is initially acquired, it is an input. Pin direction and other options can be changed afterwards by pin.ApplyOptions() at any time.

func (*Adaptor) DigitalRead

func (a *Adaptor) DigitalRead(pin string) (int, error)

DigitalRead reads digital value from pin

func (*Adaptor) DigitalWrite

func (a *Adaptor) DigitalWrite(pin string, val byte) error

DigitalWrite writes a value to the pin. Acceptable values are 1 or 0.

func (*Adaptor) Finalize

func (a *Adaptor) Finalize() error

Finalize releases all i2c devices and exported analog, digital, pwm pins.

func (*Adaptor) Name

func (a *Adaptor) Name() string

Name returns the adaptors name

func (*Adaptor) SetName

func (a *Adaptor) SetName(n string)

SetName sets the adaptors name

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL