Beiträge von mcflay

    Guten Morgen,
    nachdem ich zwei Tage des Suchens darauf verwendet habe das PiFace Digital 2 unter Raspbian Stretch zum laufen zu bekommen,
    möchte ich Euch meinen Lösungsweg hier mal beschreiben.


    Als erstes setze ich vorraus das SPI in der raspi-config auf "Enabled" gesetzt ist.


    Nun erstmal PyPi installieren, falls noch nicht bei der Installation von DoorPi geschehen.

    Shell-Script
    1. sudo apt-get install python{,3}-pip


    Jetzt holen wir uns die Piface-Dateien.
    Für Python 2.7, würde für DoorPi reichen.

    Shell-Script
    1. sudo pip install pifacecommon
    2. sudo pip install pifacedigitalio


    Und wer möchte auch für Python 3.5

    Shell-Script
    1. sudo pip3 install pifacecommon
    2. sudo pip3 install pifacedigitalio


    Nun müssen wir die spi.py noch anpassen.

    Shell-Script
    1. cd /usr/local/lib/python2.7/dist-packages/pifacecommon
    2. sudo nano spi.py

    Und zwar suchen wir uns die Zeilen:

    Python
    1. # create the spi transfer struct
    2. transfer = spi_ioc_transfer(
    3. tx_buf=ctypes.addressof(wbuffer),
    4. rx_buf=ctypes.addressof(rbuffer),
    5. len=ctypes.sizeof(wbuffer)
    6. )

    und ersetzen sie durch:


    Python
    1. # create the spi transfer struct
    2. transfer = spi_ioc_transfer(
    3. tx_buf=ctypes.addressof(wbuffer),
    4. rx_buf=ctypes.addressof(rbuffer),
    5. len=ctypes.sizeof(wbuffer),
    6. speed_hz=ctypes.c_uint32(15000)
    7. )

    Es wird ein Komma und "speed_hz=ctypes.c_uint32(15000)" eingefügt, damit wird die SPI Geschwindigkeit angepasst.




    Wer das auch für Python 3.5 machen möchte macht das Gleiche nur hier:

    Shell-Script
    1. cd /usr/local/lib/python3.5/dist-packages/pifacecommon
    2. sudo nano spi.py

    Nun sollte das PiFace mit DoorPi laufen. :thumbup: