Arduino nano über den Raspberry Pi ansteuern

  • Hallo,
    ich habe mir folgende LEDs bestellt und sie mir an die Decke geklebt(http://www.ebay.de/itm/322414849524). Diese habe ich erfolgreich an einem Arduino nano angeschlossen und kann sie auch ohne Probleme ansteuern. Nun möchte ich aber den LED strip über meinen Raspberry Pi steuern. Habe schon versucht den Arduino über USB an den Pi anzuschließen, doch das hat leider nicht funktioniert. Kennt irgendwer vielleicht eine andere Möglichkeit die LEDs über den Pi zu steuern?

    Gesendet von meinem ONEPLUS A3003 mit Tapatalk


  • Nanu ... ist Deine Suchfunktion kaputt :s
    Dazu gibts hier sogar ein Tutorial ... -> click ...
    Für's nächste mal: ein bisschen Eigen-Initiative kann nicht schade :fies:

    cu,
    -ds-


    Das Tutorial ist NICHT für meine LEDs. Aber trotzdem danke....

    Gesendet von meinem ONEPLUS A3003 mit Tapatalk


  • Habe schon versucht den Arduino über USB an den Pi anzuschließen, doch das hat leider nicht funktioniert.

    WAS hat nicht funktioniert? (ich liebe so präzise Fehlerbeschreibungen)

    der nano kann doch am USB prima serial spielen, also schicke vom PI Kommandos welche der nano ausführt

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • WAS hat nicht funktioniert? (ich liebe so präzise Fehlerbeschreibungen)

    der nano kann doch am USB prima serial spielen, also schicke vom PI Kommandos welche der nano ausführt

    Ich habe versucht über python den arduino nano anzusteuern. Dort kamen aber immer diverse Fehlermeldungen.

    Code
    Traceback (most recent call last):
     File "test.py", line 5, in <module>
       s.open()
     File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 271, in open
       raise SerialException("Port is already open.")
    serial.serialutil.SerialException: Port is already open.


    Bei folgendem Script:

  • python kenne ich nicht, habe gerade mal Kommandos über cutecom zum nano geschickt

    lsusb sagt dir was dran ist

    pi@raspbianPI3:~ $ lsusb
    Bus 001 Device 012: ID 8564:1000
    Bus 001 Device 011: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
    Bus 001 Device 018: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter

    ersteres ein RS232 zu USB
    letzteres der china nano mit 340er Chip

    das nutze ich um es dem OS mitzuteilen

    pi@raspbianPI3:~ $ sudo modprobe usbserial vendor=0x1a86 product=0x7523

    und grep sagt mir wie ich den nutzen kann

    pi@raspbianPI3:~ $ dmesg | grep "USB Serial support"
    [1710272.010240] usbserial: USB Serial support registered for ch341-uart

    OK dazu muss man wissen das die seriell Treiber 340/341 gleichwertig sind

    nun suche ich den Pfad zum device in /dev/serial/by-id

    und kopiere den

    /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0

    damit ich ihn in cutecom eintragen kann

    öffne ich nun in cutecom mit dem richtigen device und baudrate dann kann ich Kommandos schicken:

    help liefert:

    help -> erkannt

    commands:

    setd2015/01/15
    getd
    sett17:22:30
    gett
    hellp
    hellm
    res

    und gett (für gettime, mir geht der flash aus deswegen Kurzform) liefert:

    gett -> erkannt
    13:52:01 Uhr

    das war es für mich

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (11. März 2017 um 13:53)

  • Vielen Dank erstmal!
    Ich bin jetzt mit CuteCom mit dem nano verbunden.
    Wie kann ich jetzt Befehle oder scripte an den nano senden, sodass er zum Beispiel die Farbe der LEDs ändert?

  • Hallo j43nk !

    Wenn Du /dev/AMA(0), der neuerdings /dev/S(0) heisst, also die TX und RX Pins der seriellen Schnittstelle zur Kommunikarion mit dem Arduino verwendest nusst Du nur beachten, dass am RX Pin des raspi nie mehr als 3,3 Volt ankommen. Wenn Du aber nur einseitig vom pi TX an RX Arduino serielle Befehle absendest, also ohne RX am raspi zu verwenden, ist es wahrscheinlich möglich, dass auch ein 5 V Arduino am RX die 3,3 V des raspi eindeutig als high erkennt (habe ich irgendo gelesen).

    Servus !

    RTFM = Read The Factory Manual, oder so


  • Hallo j43nk !

    hallor RTFM

    Das ist hier kein Thema weil wird den nano über USB anbinden, das ist erstens sinnvoll für eine bidirektionale Kommunikation und zweitens gehts nicht anders, erstens weil Pegelwandler fehlen und zweitens weil der CH340 den Rx immer auf high hält also Empfang vom nano nicht möglich ist, hatte ich schon mal probiert.

    Es könnte höchsten ein Umweg über die 2te Serielle gehen die nicht zum flashen aus der IDE genutzt wird und nur beim mega2560 vorhanden ist, aber da hat man dann das Pegelproblem 3,3V zu 5V, das könnte man mit Pegelwandler erschlagen oder meine Trickschaltung

    RaspiDo
    23. November 2013 um 20:54

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)


  • Ich habe versucht über python den arduino nano anzusteuern. Dort kamen aber immer diverse Fehlermeldungen.

    Code
    Traceback (most recent call last):
     File "test.py", line 5, in <module>
       s.open()
     File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 271, in open
       raise SerialException("Port is already open.")
    serial.serialutil.SerialException: Port is already open.

    Die Fehlermeldung ist eindeutig: Port is already open.
    Irgend ein Prozess greift bereits auf den /dev/ttyUSB0 Port zu und kann daher nicht erneut gebunden werden. Sowas ist immer exklusiv und kann nur ein mal geöffnet/verbunden werden.


    Übrigens wird es schwierig dir genauere zu sagen wie du nun deine LEDs steuern kannst da wir das Programm auf Deinem Arduino nicht kennen... Lass dir bitte nicht alles aus der Nase ziehen.


    PS: Bitte nicht Beiträge vollständig quoten/zitieren, vor allem wenn diese genau da drüber stehen.


  • Ich wüsste ja auch gerne welches Script ich auf meinem nano machen soll, damit er auf den pi hört....

    auf dem nano laufen kein Scripte, das sind Programme!

    Dann solltest du dich damit beschäftigen

    https://www.google.de/search?q=ardui…4Iauo8wfTyoGIDA

    mein Code:


    Code kann Fehler enthalten weil gekürzt, der komplette Code ist zu umfangreich.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (12. März 2017 um 16:02)

  • Hyperion... damit kannst du diese direkt ansteuern oder halt mit deinem Arduino.
    Jaja ich weiß Ambilight Software undso.. Jedoch hat Hyperion viele Effekte und eine App (Android, offiziell, IOS inoffiziell) worüber man die Leds via Farbrad eine gewisse Farbe zuweisen kann.

    Wenn's brennt 112 hilft weiter!

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!