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.

    Bash
    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.

    Bash
    sudo pip install pifacecommon
    sudo pip install pifacedigitalio


    Und wer möchte auch für Python 3.5

    Bash
    sudo pip3 install pifacecommon
    sudo pip3 install pifacedigitalio


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

    Bash
    cd /usr/local/lib/python2.7/dist-packages/pifacecommon
    sudo nano spi.py

    Und zwar suchen wir uns die Zeilen:

    Python
    # create the spi transfer struct
            transfer = spi_ioc_transfer(
                tx_buf=ctypes.addressof(wbuffer),
                rx_buf=ctypes.addressof(rbuffer),
                len=ctypes.sizeof(wbuffer)
            )

    und ersetzen sie durch:


    Python
    # create the spi transfer struct
            transfer = spi_ioc_transfer(
                tx_buf=ctypes.addressof(wbuffer),
                rx_buf=ctypes.addressof(rbuffer),
                len=ctypes.sizeof(wbuffer),
                speed_hz=ctypes.c_uint32(15000)
            )

    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:

    Bash
    cd /usr/local/lib/python3.5/dist-packages/pifacecommon
    sudo nano spi.py

    Nun sollte das PiFace mit DoorPi laufen. :thumbup: