A Python module to use most Arduino wiring functions on Intel® Arduino capable boards.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
docs
examples
.gitignore
Changes
LICENSE.txt
MANIFEST.in
Makefile
README.rst
setup.py
wiringx86.py

README.rst

Wiring-x86

Wiring-x86 is a Python module that lets you use Arduino like functionality on Intel® Arduino capable boards such as:

It provides a simple and unified API (similar to the WiringPi module) to talk to the GPIO pins on the board.

https://raw.githubusercontent.com/emutex/wiring-x86/master/docs/source/_images/galileo1.jpg

At the moment the Wiring-x86 library provides support to:

  • Writing to a GPIO pin configured as output.
  • Reading from a GPIO pin configured as high impedance input.
  • Reading from a GPIO pin configured as pullup input.
  • Reading from a GPIO pin configured as pulldown input.
  • Reading from a GPIO pin configured as analog input (ADC).
  • Writing to a GPIO pin configured as analog output (PWM).

Here is a simple example:

# Import the time module enable sleeps between turning the led on and off.
import time

# Import the GPIOEdison class from the wiringx86 module.
# In case you want to use a different board, simply the import right class
# below. The API is unified for all supported boards.
from wiringx86 import GPIOEdison as GPIO

# Create a new instance of the GPIOEdison class.
# Setting debug=True gives information about the interaction with sysfs.
gpio = GPIO(debug=False)
pin = 13
state = gpio.HIGH

# Set pin 13 to be used as an output GPIO pin.
print 'Setting up pin %d' % pin
gpio.pinMode(pin, gpio.OUTPUT)


print 'Blinking pin %d now...' % pin
try:
    while(True):
        # Write a state to the pin. ON or OFF.
        gpio.digitalWrite(pin, state)

        # Toggle the state.
        state = gpio.LOW if state == gpio.HIGH else gpio.HIGH

        # Sleep for a while.
        time.sleep(0.5)

# When you get tired of seeing the led blinking kill the loop with Ctrl-C.
except KeyboardInterrupt:
    # Leave the led turned off.
    print '\nCleaning up...'
    gpio.digitalWrite(pin, gpio.LOW)

    # Do a general cleanup. Calling this function is not mandatory.
    gpio.cleanup()

Full documentation can be found at wiring-x86 site on Read the Docs.

The original YOCTO Linux OS provided by Intel® must be used. For more information on how to get this software go to Intel® Makers site. This module will only work with that combination of boards and OS since it uses specific Intel® GPIO driver sysfs interface.