Raspberry und Arduino mit Firmata verbinden (auch AtTiny85)

Firmata ist ein Protokoll um mit Mikrocontrollern zu kommunizieren:
http://firmata.org/wiki/Main_Page

Damit kann man mit dem Arduino über einen Raspberry kommunizieren.
http://playground.arduino.cc/Interfacing/Firmata

# pyFirmata installieren https://github.com/tino/pyFirmata
sudo apt-get update && sudo apt-get install python-serial git-core
git clone git://github.com/tino/pyFirmata
cd pyFirmata
sudo python setup.py install

Alternativer Python-Install:

sudo apt-get update && sudo apt-get install python-pip
sudo pip install pyfirmata

PyFirmata unterstützt Firmata 2.1 (Aktuelle Firmata-Version = 2.2)

Beispiel für Aufruf in Python (auf dem Raspberry):

from pyfirmata import Arduino, util

board = Arduino('/dev/ttyUSB0')

# Schreiben und Lesen digitaler Pin
board.digital[2].write(1)
print board.digital[2].read()

# mit get_pin()
pin2 = board.getpin('d:2:o')
pin2.write(1)

# Analoge Daten mit Iterator lesen, damit Serielle Schnittstelle nicht blockiert wird
iter = util.Iterator(board)
    iter.start()
    board.analog[0].enable_reporting()
    board.analog[0].read()
    #iter.stop()

# um Datenstrom zu stoppen:
    board.analog[0].disable_reporting()

Schreibe einen Kommentar