Pi Zero OTG nicht erkannt

  • Hey Leute,


    hab heute meinen Pi Zero bekomme und versucht den OTG Modus zu aktivieren (nach der anleitung: )
    Der Pi bootet auch mit diesen Einstellungen es liegt also hoffe ich keinen Fehler in der cmdline oder config vor( per HDMI angeschlossen sieht alles gut aus und ich bekomme auch den PIxel desktop).


    Schließe ich den Pi dann per USB(Data nicht Pwr) z.B an meinen Win10 PC an wird dieser immer als COM Seriel Device erkannt und nie überhaupt als Ethernet aufgeführt...
    Schließe ich den Pi an meinen Linux Laptop an so bekomme ich eine Ethernet Verbindung angezeigt aber ein ping zu "raspberrypi.local" bleibt erfolglos...


    Hab beide Raspbian Versionen versucht(also Lite und Full) bei beides gab es keinen Unterschied.
    Ich weiß langsam nicht mehr was ich da noch machen soll...hab alles geprüft was sonst so im Internet stand.



    Edit: Auf meinem Linux kann ich meinen Pi anpingen ( 169.254.234.132 ) bei dem ssh 169.254.234.132 bekomme ich jedoch ein connection refused... ein nmap scan zeigt auch das alle ports geschlossen sind...


    Falls ihr noch irgendetwas benötigt einfach bescheid sagen. (bei den Tutorials im Internet ging das alles immer sofort :D)

  • was steht in cmdline.txt?
    was steht in /etc/modules?


    Kann es sein das du beide OTG Module lädst? Ethernet und serial? Keine Ahnung was dann passiert, hätte gedacht das das nicht geht.


    SSH muss ja beim neuen Image extra aktiviert werden ( If you want to enable SSH, all you need to do is to put a file called ssh in the /boot/ directory. )
    Mit den neuen Image sind alle Anleitungen im Internet unvollständig - leider.

    Edited once, last by evil ().

  • cmdline:

    Code
    dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait modules-load=dwc2,g_ether quiet splash plymouth.ignore-serial-consoles


    /etc/modules:

    Code
    # /etc/modules: kernel modules to load at boot time.
    #
    # This file contains the names of kernel modules that should be loaded
    # at boot time, one per line. Lines beginning with "#" are ignored.
    i2c-dev


    muss das g_ether evtl auch in /etc/modules?
    danke mit der ssh datei funktioniert es nun und ich komme auf meinen pi.


    Hab da noch eine kurze Frage hab gelesen ich kann auch das Wifi von meinem laptop dann für den Pi sharen. Jedoch gibt es bei mir (Gallium OS) im netzwerk manager bei der IPv4 Config des entsprechenden Netzwerkes nicht die Option "Dieses Netzwerk teilen" oder ähnliches. Geht das auch anders?


  • Schließe ich den Pi dann per USB(Data nicht Pwr) z.B an meinen Win10 PC an wird dieser immer als COM Seriel Device erkannt und nie überhaupt als Ethernet aufgeführt...


    Tach'chen,


    unter Windoofs musst Du im Device Manager einen anderen Treiber auswählen, d.h. unter Microsoft Corporation -> Remote NDIS Compatible Device auswählen. Natürlich muss der Bonjour Service auch gestartet sein, damit Du die .local Domain verwenden kannst. IMHO ist auch zeroconf erforderlich,
    bin mir aber nicht 100% sicher.


    Wenn Du Internet auf dem Zero über OTG haben willst, muss unter Windows 'Internet Connection Sharing' für die Netzwerk-Karte auf dem Host-PC aktiviert sein. Auf dem Pi muss man dann noch den Gateway einstellen mit

    Code
    sudo route add default gw 169.254.9.176 usb0



    wobei Du hier die IP verwenden musst, die das NDIS Compatible Device auf dem Host-PC bekommen hat. In die /etc/resolvconf.conf
    auf dem Zero trägst Du die IP Deines Routers ein: z.B. name_servers=192.168.188.1


    Für das Connection Sharing unter Linux musst Du IPV4 forwarding auf dem Host-PC aktivieren.
    Bei manchen Distris scheitert das an der Firewall, unter SuSE musste ich die FW abschalten (war mir zu aufwändig Ausnahmeregeln festzulegen).


    Ob forwarding aktiviert ist kann man mit

    Code
    cat /proc/sys/net/ipv4/ip_forward



    prüfen. Wenn eine '1' angezeigt wird, ist es aktiviert.


    Auf dem Host-PC unter Linux stellt man dann noch:


    Code
    iptables -t nat -A POSTROUTING -s 169.254.0.0/16 -o wlan0 -j MASQUERADE


    ein. Wenn man das permanent aktivieren will, trägst Du es in der /etc/init.d/boot.local oder rc.local ein.

    Beste Grüße,
    /luetzel

  • Hey,


    danke für deine Antwort. Unter Linux funktioniert das ssh schonmal jedoch will das Network sharing nicht. nen Ping vom Pi funktioniert nicht. "unknown host" evtl was wegen dns server der ähnliches?
    Das iptables command ging auch super durch... aber irgendwie...



    Der Pi wird unter Windows immernoch nur als COM Device angezeigt dh ich kann dort auch keinen Remote NDIS Compatible Device Treiber installieren. Nur
    "Serielles USB-Gerät"
    "Serielles USB-Modem"
    "Standardmäßige Seriell-über-Bluetooth-Verbindung"


    Das ist das einzige Problem was ich gerade noch habe...

  • Habe das inzwischen nun auch unter Windows 10 probiert und das ist wirklich so, der Pi Zero mit OTG wird als "Serielles USB-Gerät" erkannt, obwohl das Ethernet Modul aktiviert ist.
    Unter Windows 7 ist das nicht so.


    Auf jedenfall muss man den Treiber austauschen. Hier kann leider nicht der vorgesehene Linux Treiber verwendet werden da nur signierte Treiber zugelassen sind.
    Ich hab diesen Treiber verwendet:
    http://download.windowsupdate.…371af0837f939a71271ea.cab


    also rechte Maustaste auf "Serielles USB-Gerät (Com X)". Treiber aktualisieren und dann den entpackten Treiber von der extrahierten CAB-Datei angeben.


    Für die weitere Konfiguration (IP-Adresse) gibt es viele Möglichkeiten. Ich verwendet eine fixe Konfiguration über dhcp-Client (inklusive DNS) von der Pi Zero
    /etc/dhcpcd.conf:


    # define static profile for Pi Zero
    profile static_usb0
    static ip_address=192.168.137.10/24
    static routers=192.168.137.1
    static domain_name_servers=8.8.8.8
    # static profile on usb0
    interface usb0
    fallback static_usb0


    Der Host (Windows PC) wird entweder fix auf 192.168.137.1 oder über einen DHCP-Server von der Zero parametriert.
    Eine Freigabe des Internetzugriffs ist in Windows dann leicht möglich.


    "Microsoft Corporation -> Remote NDIS Compatible Device auswählen" funktioniert unter Windows 10 nicht!

    Edited once, last by evil ().