Einfacher spi Test ohne Messgeräte mit einem jumper Kabel

  • http://www.netzmafia.de/skript…ware/RasPi/RasPi_SPI.html


    Scheint SARS-CoV-2 bedingt in letzter Zeit viele Ambilight Probleme zu geben. Viele Ambilighter, oder solche die es werden wollen, haben nicht die passenden Messgeräte.

    Für alle, die testen wollen, ob an pin 19 (MOSI) und pin 21 (MISO) überhaupt ein signal raus - bzw. reinkommt hier ein simpler Test: (kopiert aus der obigen url)


    Für einen ersten Test können Sie den Loopbacktest verwenden. Dazu werden die Pins MOSI und MISO mit einem jumper (Drahtbrücke) verbunden. Laden Sie sich die aktuelle Version des Testprogramms auf den Raspberry und compilieren Sie es:

    Code
    wget https://raw.githubusercontent.com/torvalds/linux/master/tools/spi/spidev_test.c
    gcc -o spidev_test spidev_test.c

    Danach starten Sie das Programm

    Code
    ./spidev_test -D /dev/spidev0.0 -v
    
    Ohne den jumper zwischen pin 19 (MOSI) und pin 21 (MISO) erscheint folgender output:
    spi mode: 0x0
    bits per word: 8
    max speed: 500000 Hz (500 KHz)
    TX | FF FF FF FF FF FF 40 00 00 00 00 95 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F0 0D  |......@.........................|
    RX | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  |................................|
    
    Mit jumper zwischen pin 19 (MOSI) und pin 21 (MISO) sind die Zeilen TX und RX gleich

    Das Programm bietet zahlreiche Kommandozeilenoptionen:

    Wenn die TX line identisch zur RX line ist kann man davon ausgehen, dass SPI funktioniert.


    Auf einem pi3 B+ mit stretch getestet. Auch auf pi4 4GB mit buster.


    Ergänzend noch ein link ins Forum um weitere SPI devices (mit neuen pins) zu erhalten.

    MOSI wird dann pin 38 und SCLK pin 40. Testen wie oben beschrieben, dann allerdings mit /dev/spidev1.0

    RE: GPIO Nutzung ändern in Hyperion (Pin 35 ist dann MISO)


    hth

    Leroy

    Optimismus ist nur ein Mangel an Informationen🤓

    Edited 4 times, last by Leroy Cemoi: ergänzt um pin 35 MISO falls jemand 38 und 40 zum Test brückt🤪 ().

  • Ich klemme mich mal hier an, obwohl ich kein Ambilight habe.

    Ich versuche gerade diesen Test, aber weder an meinem Pi2, noch an meinem Pi4 kommt etwas zurück.

    SPI ist mit dtparam=spi=on in der /boot/config.txt aktiviert, Kabel ist richtig gejumpert.

    Treiber sind geladen:

    Code
    lsmod | grep -i spi
    spidev                 20480  0
    spi_bcm2835            24576  0

    Geräte werden gefunden:

    Code
    ls -l /dev/spi*
    crw-rw---- 1 root spi 153, 0 Sep  6 10:28 /dev/spidev0.0
    crw-rw---- 1 root spi 153, 1 Sep  6 10:28 /dev/spidev0.1

    Testprogramm runtergeladen und kompiliert:

    Code
    git clone https://github.com/rm-hull/spidev-test
    cd spidev-test
    gcc spidev_test.c -o spidev_test

    Und zur Sicherheit als root ausgeführt.

    Aber nichts passiert ! :wallbash: :@

    Woran kann das liegen ?

  • Moin fred0815,


    mhm, falsche SPI-Pins?


    bei mir geht es.

    Model : Raspberry Pi Model B Rev 2

    Raspbian Buster lite

    Anschlüsse: MoSi GPIO10(Pin 19), MiSo GPIO09(Pin 21)



    Auszug aus dem Readme

    73 de Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"

    Vielleicht trifft man sich in der RPi-Plauderecke.

  • mhm, falsche SPI-Pins?


    Anschlüsse: MoSi GPIO10(Pin 19), MiSo GPIO09(Pin 21)

    Mit GPIO 9 + 10 gehts, also definitiv die richtigen GPIOs.

    Aber er nimmt wohl für beide spidev0.0 und spidev0.1 die gleichen GPIOs.

    Laut pinout.xyz sollte es aber auch 19 und 20 sein.

    Egal Hauptsache es geht mit einem.

    BTW.: Habe das aktuelle Buster mit Desktop.

    gpio readall sagt:

    Nur GPIO BCM 9 + 10 gebrückt:

    Merkwürdig, habe ich vielleicht irgendein bestimmtes DT-Overlay übersehen ?

  • BCM 19 und 20 = 35 und 38

    Code
    SPI1 (available only on 40-pin J8 header)
    SPI Function    Header Pin    Broadcom Pin Name    Broadcom Pin Function
    MOSI    38    GPIO20    SPI1_MOSI
    MISO    35    GPIO19    SPI1_MISO

    Nu ja, es geht, beziehungsweise nicht, mein Fehler liegt woanders. :lol:

  • Du hast hier ein Missverständnis. spidev0.X ist IMMER das 0-Te SPI, also GPIO 9 und 10.


    Die Suffixe 0 oder 1 dahinter beziehen sich auch das Chipselect, CS0 und CS1. Nur die ändern sich!


    spidev1.X ist das zweite, also SPI1 auf 19/20

  • Natürlich kann das sein. Das du SPI1 nicht aktiviert hast, hat mit dieser Betrachtung nichts zu tun. Die beiden devices die du siehst sind SPI0 mit CS0 und CS1. Und haben nichts mit dem von dir #7 erwähnten SPI1 auf den anderen GPIOs zu tun.

  • Moin!


    ich weiß nicht,ich weiß nicht.....


    Also, ich habe via config.txt die SPI1 aktiviert. dtoverlay=spi1-1cs. Siehe

    Quote

    pi@bernd-test:~/spidev-test $ ls -l /dev/spi*

    crw-rw---- 1 root spi 153, 0 Sep 27 23:04 /dev/spidev0.0

    crw-rw---- 1 root spi 153, 1 Sep 27 23:04 /dev/spidev0.1

    crw-rw---- 1 root spi 153, 2 Sep 27 23:04 /dev/spidev1.0

    pi@bernd-test:~/spidev-test $

    Der Beweis:

    Testumgebung:

    Model : Raspberry Pi 3 Model B Plus Rev 1.3

    Raspbian Buster aktuell

    Brücke von GPIO20(Pin38) nach GPIO19(Pin35.


    Wer es genauer wissen will, siehe HIER.


    73 de Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"

    Vielleicht trifft man sich in der RPi-Plauderecke.

  • Ja und weil du das overlay angemacht hast, hast du auch ein spidev1.0. SPI1, mit einem chip select.


    Wo steht das im Widerspruch zu dem was ich sage?


    fred0815 schreibt

    Quote

    Aber er nimmt wohl für beide spidev0.0 und spidev0.1 die gleichen GPIOs.


    Laut pinout.xyz sollte es aber auch 19 und 20 sein.

    Und genau das stimmt eben nicht.


    Die erste Zahl in spidevX.Y gibt das hardware spi device an, von dem der Pi 3 hat, 0-2. Und die zweite das chip select.


    Alle spidev0.Y haben also GPIO 9 und 10, und alle spidev1.Y haben 19 und 20.

  • Moin!


    Och ja, und wieder ist es passiert! Einer hat sich den Schuh angezogen...


    Ich habe neutral geantwortet, aber.. Siehe eine Zeile höher


    73 de Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"

    Vielleicht trifft man sich in der RPi-Plauderecke.

  • Ich habe aufrichtig keine Ahnung was du meinst. Ich habe fred0815 lediglich auf ein Missverständnis hinweisen wollen. Was das mit Schuhen zu tun hat, keine Ahnung. Aber muss ja auch nix hier posten, macht ihr man.