USB Port deaktivieren

  • Hallo Meigrafd,

    auf den Reset-TASTER des Arduino habe ich in #5 bereits hingewiesen. Darauf gab es aber keine Rückmeldung von Arokh12.

    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Hallo Arokh12,

    Möglichkeit 1:
    Reset-Taster auf den Arduino drücken - wie in Beitrag #5 geschrieben

    Möglichkeit 2:
    a) Strippen ziehen
    ___RPi-GND auf Arduino-GND
    ___irgendeinen freien RPi-GPIO (in u.a. Programm GPIO27) ggf. über einen 330 - 680 Ohm-Widerstand auf Arduino-RESET-Pin
    b) Programm starten

    Code
    link GPIO
    
    
    procedure main()
       GPIO(27,1,5)
    end


    gibt einen HIGH-Pegel auf den RESET-Pin des Arduino für 5 ms. Eventuell musst Du mit den 5 ms ein wenig experimentieren. Ist so ein Schätzwert von mir.


    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    Einmal editiert, zuletzt von Andreas (17. November 2015 um 23:47)

  • Hallo,
    Ich habe das jetzt mal ausprobiert mit dem redet Taster. Wenn ich diesen Drücke, egal wie lange, dann passiert nichts. Mit nichts meine ich, er wird danach nicht vom Pi erkannt.

    Hast du ne Ahnung woran das liegt?

    arokh12


  • gibt einen HIGH-Pegel auf den RESET-Pin des Arduino für 5 ms. Eventuell musst Du mit den 5 ms ein wenig experimentieren. Ist so ein Schätzwert von mir.

    der Arduino reset muss nach low!


    Ich habe das jetzt mal ausprobiert mit dem redet Taster. Wenn ich diesen Drücke, egal wie lange, dann passiert nichts. Mit nichts meine ich, er wird danach nicht vom Pi erkannt.
    Hast du ne Ahnung woran das liegt?
    arokh12

    dann muss wohl der Aruino vom PI getrennt werden, wie schrieb ich ja schon,

    1. VCC unterbrechen als ersten Versuch,
    2. den Arduino ganz abziehen Relaistrenner o.ä. per GPIO schalten

    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)

  • Hallo Arokh12,

    warum sollte der Raspberry Pi die Betätigung eines Reset-Taster am Arduino erkennen können?

    Das war auch gar nicht Bestandteil des Ausgangsproblems...


    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.


  • Hallo Arokh12,
    warum sollte der Raspberry Pi die Betätigung eines Reset-Taster am Arduino erkennen können?

    mich wunderte ja dein Vorschlag auch


    Hallo Arokh12,
    was passiert, wenn Du den Reset-Taster des Arduino betätigst? Das sollte eigentlich den gleichen Effekt haben, wie das USB-Kabel zu ziehen und wieder einzustecken.

    aber was weiss ich schon

    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)

  • Hallo Jar,

    in Beitrag #4 schrieb


    Ich habe am Pi einen Arduino angeschlossen mit FTDI Chip. Dieser wird aber beim starten nicht erkannt. Es hilft im Moment nur den Arduino herausziehen und neu reinstecken.

    Das heißt für mich, dass Durch einen Neustart / Reset des Arduino das Problem behoben ist. Statt USB-Kabel raus-rein sollte es ein beherzter Druck auf den Reset-Taster des Arduino auch tun.

    Der Raspberry Pi hat damit gar nichts zu tun. Der RPi muss weder den Reset-Vorgang des Arduino bemerken noch darauf reagieren.

    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Zitat

    Ich habe am Pi einen Arduino angeschlossen mit FTDI Chip. Dieser wird aber beim starten nicht erkannt. Es hilft im Moment nur den Arduino herausziehen und neu reinstecken.

    Du könntest auch den USB Bus ausschalten und wieder einschalten - ggf. hilft das?

    echo 0 > /sys/devices/platform/soc/http://20980000.usb/buspower
    sleep 5
    echo 1 > /sys/devices/platform/soc/http://20980000.usb/buspower

    Bitte beachte, dass dann auch der LAN Adapter ausgeschaltet wird. (Wenigstens bei Version RPi B, A+)

    Einmal editiert, zuletzt von WernerPI (18. November 2015 um 19:18)

  • Ich glaube da habe ich mich falsch ausgedrückt.
    Ich habe den Raspberry neu gestartet. Nach dem Neustart hat der Pi den Arduino nicht erkannt.

    Laut deinem Beitrag #5 habe ich es so verstanden, dass wenn ich den Reset Taster am Arduino drücke, dass dann der Pi diesen erkennt.

    Nach dem Drücken auf dem Reset Taster am Arduino passierte aber nichts, das heißt der Pi hat den Arduino immer noch nicht erkannt.

    Ich hoffe ich hab es jetzt besser erklärt.

    arokh12

    Einmal editiert, zuletzt von arokh12 (18. November 2015 um 19:25)

  • @WernerPI: Das hatten wir bereits auf der ersten Seite behandelt...


    Also bei mir ist das wie folgt:

    Unveränderter Arduino NANO v3, nackt, via USB Kabel an meinen Pi2 angeschlossen.
    Laut dmesg erkannt.
    Nach brücken des RST nach GND: laut dmesg getrennt und nicht mehr ansprechbar.

    Desweiteren wird der Arduino auch jedes mal resettet sobald man die Serielle Schnittstelle öffnet.

    Siehe dazu auch:
    http://playground.arduino.cc/Main/ArduinoReset
    http://playground.arduino.cc/Main/Disabling…erialConnection
    https://opensourcehardwaregroup.com/how-to-use-an-…n-with-arduino/
    http://stackoverflow.com/questions/5290…n-arduino-board


    Es besteht aber auch die Möglichkeit auf den USB-Chip des Arduino's (sofern vorhanden) eine andere Firmware zu flashen. Hast du das vielleicht gemacht?
    Wofür wird der Arduino bei dir denn verwendet? Was ist da alles dran angeschlossen?
    Was für ein Arduino hast du überhaupt?
    Wie sprichst du den Arduino an?

    Bitte so detailliert wie möglich antworten.

  • Ich habe mir aus dem Arduino einen CUL433 gebaut, Am Arduino ist dann ein CC1101 Chip mit passender Antenne abgebaut. Was das für ein Typ ist, kann ich dir im Moment nicht sagen, muss ich morgen nachgucken. Ist auf jeden fall kein originaler

  • meigrafd *rotwerd*

    @TE: Ist es wirklich ein FTDI Chip? Den FTDI Chip haben im Normalfall nur die "originalen" Arduinos. Die China Nachbauten verwenden oft einen CH340 Chip...


  • Was liefert ein "lsusb" auf dem PI, wenn der Arduino noch erkannt wird?

    Und was, wenn er nicht mehr erkannt wird?

    Also wenn er erkannt ist, liefert er:

    Code
    Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
    Bus 001 Device 004: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC

    Wenn nicht, gibt er das zurück:

    Code
    Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.

    Ich hoffe ihr könnt damit was anfangen

    arokh12

  • vielleicht hilft es dir, wenn mein PI die webcam nicht mehr erkennt am USB starte ich den PI per putty neu und die Webcam ist wieder anwesend, wenn es bei dir auch mit dem arduino klappt wäre es ja ne Möglichkeit.

    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)

  • Mahlzeit,

    ich habe heute mal versucht, die USB Ports zu deaktivieren, per Script (siehe Beitrag #13). Dabei wird das Ethernet und co auch alles unterbrochen, aber der Arduino wird nach dem Einschalten immer noch nicht vom Pi erkannt. Ich habe auch mal die Pause zwischen ausschalten der Ports und Einschalten von 5 auf 60. danach hatte ich das gleiche Resultat wie vorher.

    Ich denke mal am einfachsten ist es jetzt den Arduino die Spannungsversorgung wegzunehmen. Dieses wurde ja in Beitrag #19 ja schonmal erwähnt. Allerdings wird da ein Treibertransistor dafür vorgeschlagen.

    Jetzt mal meine Frage benötigt man diesen überhaupt, oder kann man nicht von dem GPIO direkt auf den Arduino gehen? Wahrscheinlich sind die GPIOs da nicht für ausgelegt, oder?

    Vielen Dank im voraus

    arokh12

    Einmal editiert, zuletzt von arokh12 (20. November 2015 um 12:37)


  • .....Ich denke mal am einfachsten ist es jetzt den Arduino die Spannungsversorgung wegzunehmen. Dieses wurde ja in Beitrag #19 ja schonmal erwähnt. Allerdings wird da ein Treibertransistor dafür vorgeschlagen.

    Jetzt mal meine Frage benötigt man diesen überhaupt, oder kann man nicht von dem GPIO direkt auf den Arduino gehen? Wahrscheinlich sind die GPIOs da nicht für ausgelegt, oder?

    ein PI GPIO liefert nur 3,3V als high und sollte nur mit 2mA belastet werden, das reicht üblicherweise nicht für eine 5V Versorgung und auch nicht für den Arduinistrom >2mA

    Ein Photomos braucht aber 10-20 mA für die IR Diode, ist dafür aber für Lastströme bis 2,5A ausgelegt und hat wenig Schaltverluste, ein Optokoppler kann zwar bei gutem CTR mit 2mA betriben werden aber auf der entkoppelten Seite nur bis 8mA treiben zu wenig für einen Arduino.

    Ergo braucht man für mehr Strom und Spannung Treiber und weil du ja highside schalten willst mit anderen Spannungen müssen wir entkoppeln, das kann auch mit einem Relais erfolgen aber auch das Relais braucht Steuerstrom, mehr als ein GPIO treiben kann.

    Übliche Treiberschaltungen per Transistor oder ULN2803a gibt es ja zu Hauf, wenn du einen Plan machst können wir die Dimensionierung durchsprechen.

    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 frage noch mal: Welchen Arduino hast du?
    Bitte so genau wie möglich angeben, mit revision usw.

    Wie sprichst du den Arduino an? Bitte Code posten und auch beschreiben wie du dies automatisch startest - ebenfalls den exakten Eintrag posten.

    Bist du unbedingt auf USB angewiesen? Man könnte nämlich auch via UART pins kommunizieren - je nachdem um was für einen Arduino es sich handelt und was für ein Programm geflasht wurde...

    Stromversorgung kann man ebenfalls über die I/O Leiste des Arduino gewährleisten und dann reicht auch ein Transistor um diese zu schalten - aber erneut: je nachdem um was für einen Arduino es sich handelt und was an den Arduino angeschlossen ist. Diese Info erfragte ich schon mal da dies für weiteres wichtig ist. Hilfe kann nur so gut sein wie die bekannten Informationen ...

Jetzt mitmachen!

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