PiZeroW - unable to use as slave USB Device/OTG

Got my Pi0W last week and I’ve been banging my head against a brick wall with this ever since.

I wanted to setup my Pi0W as a slave USB device to emulate WiFi NICs, HID Devices, and Mass Storage - using the gadget modules on the Pi0W is perfect for this. So I followed this guide to get it setup:

but its not worked. The Pi boots ok, but isn’t recognised when I connect it as a USB device to my system.

I’ve tried different cables, different USB ports on my host, confirmed I was using the USB data port on the Pi0W, I’ve reflashed Jessie-Lite twice (jic) but still no luck.

When I connect the Pi0w to a HDMI monitor, power supply and a keyboard, it boots fine and I can connect to my wifi with no issues - ssh is showing as open - so no issue there and I can type normally - it all responds fine and stores any changes I make. Yet whenevr I connect it directly to my host as a USB device - it fails to be detected, mounted or anything else (even when I swap out the modules from G_Ether to G_HID or G_MASS_STORAGE - (and yes I did create a small mass storage block for it to use with the gadget as part of the command line mount).

Do I have a faulty Pi0W or what?

TIA

what host system are you using? I haven’t had much luck myself with OTG using my Linux ChromeBook, but my Mac is happy to deal with the same devices that failed there. In other words, it could be the host side not playing ball!

Tried it with both Windows 10 and Debian 9.

I’ve had loads of issues with this as well, I guess some systems just don’t want to play nice with it.

On your Win10 system, does it appear in the networking section of the Device Manager? It should show up as an RNDIS Ethernet Gadget. If there’s an Unknown Device there try unplugging the Zero and see if that disappears, that would suggest it sees the hardware but doesn’t know what it is.

Nope - Nothing gets mounted in Win 10 - no new unknown devices, no new Ethernet NICs, no Mass Storage, no HIDs :(

I’m hardly an expert here, but that would suggest to me that the issue is with the Zero. If the PC doesn’t even show the device it suggests it doesn’t know what it is or it isn’t talking on the USB bus at all.

The cmdline.txt file is apparently very fussy about formatting, did you check that was right? What did you open it with?

Are you sure your microUSB is plugged into the data port and not the power port, and are you sure your USB cable carries data? I have a couple which, for some absurd reason, only carry power.

I edited cmdline.txt with nano - when I hooked the Pi up to a keyboard, power source and HDMI screen to get it onto the WiFi - seemed happy enough. It looks exactly like the example here :
https://pastebin.com/WygSaptQ

I’ve tested both cables I’ve used with the Pi so far with other USB devices - they’ve been recognised and mounted on both Win and Nix systems with no problems - so neither cable is faulty or power only ones

I’ve also tried both the power and the USB ports on the Pi0W - both let it power on, neither gets it recognised as a device.

I’ve emailed a help ticket into Pimoroni but not had a response yet. Hoping they can help rather than have me go through the faff of returning it for another - as it means I’ll need to get another GPIO hammer too.

I should add - thanks for trying to help though. It’s appreciated.

Continuing to work on this issue. Here’s some of the configs I’ve pulled from the device, and pics of ports in use.


pi@raspberrypi:~ $ cat /boot/cmdline.txt
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

pi@raspberrypi:~ $ cat /boot/config.txt
# For more options and information see
# http://rpf.io/configtxtreadme
# Some settings may impact device functionality. See link above for details

# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1

# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
#disable_overscan=1

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720

# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1

# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1

# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2

# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4

# uncomment for composite PAL
#sdtv_mode=2

#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800

# Uncomment some or all of these to enable the optional hardware interfaces
#dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on

# Uncomment this to enable the lirc-rpi module
#dtoverlay=lirc-rpi

# Additional overlays and parameters are documented /boot/overlays/README

# Enable audio (loads snd_bcm2835)
dtparam=audio=on

dtoverlay=dwc2

dmesg
    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Linux version 4.9.24+ (dc4@dc4-XPS13-9333) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611) ) #993 Wed Apr 26 17:56:54 BST 2017
    [    0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
    [    0.000000] OF: fdt:Machine model: Raspberry Pi Zero W Rev 1.1
    [    0.000000] cma: Reserved 8 MiB at 0x1b400000
    [    0.000000] Memory policy: Data cache writeback
    [    0.000000] On node 0 totalpages: 114688
    [    0.000000] free_area_init_node: node 0, pgdat c0914814, node_mem_map db010000
    [    0.000000]   Normal zone: 1008 pages used for memmap
    [    0.000000]   Normal zone: 0 pages reserved
    [    0.000000]   Normal zone: 114688 pages, LIFO batch:31
    [    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
    [    0.000000] pcpu-alloc: [0] 0
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 113680
    [    0.000000] Kernel command line: 8250.nr_uarts=0 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbswap=1 smsc95xx.macaddr=B8:27:EB:EF:7C:97 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000  dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait modules-load=dwc2,g_ether
    [    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
    [    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
    [    0.000000] Memory: 435944K/458752K available (5942K kernel code, 489K rwdata, 1948K rodata, 404K init, 734K bss, 14616K reserved, 8192K cma-reserved)
    [    0.000000] Virtual kernel memory layout:
        vector  : 0xffff0000 - 0xffff1000   (   4 kB)
        fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
        vmalloc : 0xdc800000 - 0xff800000   ( 560 MB)
        lowmem  : 0xc0000000 - 0xdc000000   ( 448 MB)
        modules : 0xbf000000 - 0xc0000000   (  16 MB)
          .text : 0xc0008000 - 0xc05d5d7c   (5944 kB)
          .init : 0xc083f000 - 0xc08a4000   ( 404 kB)
          .data : 0xc08a4000 - 0xc091e6c8   ( 490 kB)
           .bss : 0xc091e6c8 - 0xc09d5ec8   ( 734 kB)
    [    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [    0.000000] NR_IRQS:16 nr_irqs:16 16
    [    0.000030] sched_clock: 32 bits at 1000kHz, resolution 1000ns, wraps every 2147483647500ns
    [    0.000073] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275 ns
    [    0.000170] bcm2835: system timer (irq = 27)
    [    0.000645] Console: colour dummy device 80x30
    [    0.001428] console [tty1] enabled
    [    0.001484] Calibrating delay loop... 697.95 BogoMIPS (lpj=3489792)
    [    0.060344] pid_max: default: 32768 minimum: 301
    [    0.060803] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.060872] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.061971] Disabling cpuset control group subsystem
    [    0.062244] CPU: Testing write buffer coherency: ok
    [    0.062352] ftrace: allocating 21708 entries in 64 pages
    [    0.179060] Setting up static identity map for 0x8200 - 0x8238
    [    0.181112] devtmpfs: initialized
    [    0.190130] VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5
    [    0.190619] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    0.190718] futex hash table entries: 256 (order: -1, 3072 bytes)
    [    0.192028] pinctrl core: initialized pinctrl subsystem
    [    0.193540] NET: Registered protocol family 16
    [    0.196066] DMA: preallocated 1024 KiB pool for atomic coherent allocations
    [    0.205850] hw-breakpoint: found 6 breakpoint and 1 watchpoint registers.
    [    0.205944] hw-breakpoint: maximum watchpoint size is 4 bytes.
    [    0.206087] Serial: AMBA PL011 UART driver
    [    0.208991] bcm2835-mbox 2000b880.mailbox: mailbox enabled
    [    0.209789] uart-pl011 20201000.serial: could not find pctldev for node /soc/gpio@7e200000/uart0_pins, deferring probe
    [    0.256713] bcm2835-dma 20007000.dma: DMA legacy API manager at dc80d000, dmachans=0x1
    [    0.259533] SCSI subsystem initialized
    [    0.259869] usbcore: registered new interface driver usbfs
    [    0.260043] usbcore: registered new interface driver hub
    [    0.260285] usbcore: registered new device driver usb
    [    0.269126] raspberrypi-firmware soc:firmware: Attached to firmware from 2017-04-27 17:19
    [    0.271125] clocksource: Switched to clocksource timer
    [    0.325470] VFS: Disk quotas dquot_6.6.0
    [    0.325668] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
    [    0.326006] FS-Cache: Loaded
    [    0.326408] CacheFiles: Loaded
    [    0.345960] NET: Registered protocol family 2
    [    0.347370] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
    [    0.347530] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
    [    0.347662] TCP: Hash tables configured (established 4096 bind 4096)
    [    0.347793] UDP hash table entries: 256 (order: 0, 4096 bytes)
    [    0.347861] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    [    0.348214] NET: Registered protocol family 1
    [    0.349001] RPC: Registered named UNIX socket transport module.
    [    0.349078] RPC: Registered udp transport module.
    [    0.349116] RPC: Registered tcp transport module.
    [    0.349151] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.350339] hw perfevents: enabled with armv6_1176 PMU driver, 3 counters available
    [    0.352959] workingset: timestamp_bits=14 max_order=17 bucket_order=3
    [    0.372750] FS-Cache: Netfs 'nfs' registered for caching
    [    0.374539] NFS: Registering the id_resolver key type
    [    0.374658] Key type id_resolver registered
    [    0.374701] Key type id_legacy registered
    [    0.379100] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
    [    0.379564] io scheduler noop registered
    [    0.379629] io scheduler deadline registered (default)
    [    0.380129] io scheduler cfq registered
    [    0.386182] BCM2708FB: allocated DMA memory 5b500000
    [    0.386314] BCM2708FB: allocated DMA channel 0 @ dc80d000
    [    0.394455] Console: switching to colour frame buffer device 82x26
    [    0.404800] bcm2835-rng 20104000.rng: hwrng registered
    [    0.407649] vc-cma: Videocore CMA driver
    [    0.410196] vc-cma: vc_cma_base      = 0x00000000
    [    0.412811] vc-cma: vc_cma_size      = 0x00000000 (0 MiB)
    [    0.415426] vc-cma: vc_cma_initial   = 0x00000000 (0 MiB)
    [    0.418453] vc-mem: phys_addr:0x00000000 mem_base=0x1ec00000 mem_size:0x20000000(512 MiB)
    [    0.448594] brd: module loaded
    [    0.463559] loop: module loaded
    [    0.466001] Loading iSCSI transport class v2.0-870.
    [    0.469258] usbcore: registered new interface driver smsc95xx
    [    0.471868] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
    [    0.474643] dwc_otg: FIQ enabled
    [    0.474651] dwc_otg: NAK holdoff enabled
    [    0.474656] dwc_otg: FIQ split-transaction FSM enabled
    [    0.474677] Module dwc_common_port init
    [    0.475109] usbcore: registered new interface driver usb-storage
    [    0.478076] mousedev: PS/2 mouse device common for all mice
    [    0.482253] bcm2835-wdt 20100000.watchdog: Broadcom BCM2835 watchdog timer
    [    0.485347] bcm2835-cpufreq: min=700000 max=1000000
    [    0.488508] sdhci: Secure Digital Host Controller Interface driver
    [    0.491206] sdhci: Copyright(c) Pierre Ossman
    [    0.494244] sdhost-bcm2835 20202000.sdhost: could not get clk, deferring probe
    [    0.499441] mmc-bcm2835 20300000.mmc: could not get clk, deferring probe
    [    0.502498] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.505785] ledtrig-cpu: registered to indicate activity on CPUs
    [    0.508711] hidraw: raw HID events driver (C) Jiri Kosina
    [    0.511812] usbcore: registered new interface driver usbhid
    [    0.514659] usbhid: USB HID core driver
    [    0.518772] vchiq: vchiq_init_state: slot_zero = 0xdb580000, is_master = 0
    [    0.524594] Initializing XFRM netlink socket
    [    0.527895] NET: Registered protocol family 17
    [    0.531335] Key type dns_resolver registered
    [    0.536700] registered taskstats version 1
    [    0.540133] vc-sm: Videocore shared memory driver
    [    0.543127] [vc_sm_connected_init]: start
    [    0.546916] [vc_sm_connected_init]: end - returning 0
    [    0.558479] 20201000.serial: ttyAMA0 at MMIO 0x20201000 (irq = 81, base_baud = 0) is a PL011 rev2
    [    0.566717] sdhost: log_buf @ db510000 (5b510000)
    [    0.641201] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1)
    [    0.646637] mmc-bcm2835 20300000.mmc: mmc_debug:0 mmc_debug2:0
    [    0.649541] mmc-bcm2835 20300000.mmc: DMA channel allocated
    [    0.684408] random: fast init done
    [    0.728647] mmc0: host does not support reading read-only switch, assuming write-enable
    [    0.734284] of_cfs_init
    [    0.737113] of_cfs_init: OK
    [    0.740558] Waiting for root device /dev/mmcblk0p2...
    [    0.749914] mmc0: new high speed SDHC card at address 0001
    [    0.755308] mmcblk0: mmc0:0001 0000 7.44 GiB
    [    0.760929]  mmcblk0: p1 p2
    [    0.769611] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
    [    0.774056] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
    [    0.778315] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
    [    0.783781] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
    [    0.864799] EXT4-fs (mmcblk0p2): INFO: recovery required on readonly filesystem
    [    0.867414] EXT4-fs (mmcblk0p2): write access will be enabled during recovery
    [    0.893555] mmc1: new high speed SDIO card at address 0001
    [    1.228850] EXT4-fs (mmcblk0p2): recovery complete
    [    1.237467] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
    [    1.242398] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
    [    1.255227] devtmpfs: mounted
    [    1.259089] Freeing unused kernel memory: 404K (c083f000 - c08a4000)
    [    1.261725] This architecture does not have kernel memory protection.
    [    1.620900] systemd[1]: systemd 215 running in system mode. (+PAM +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ -SECCOMP -APPARMOR)
    [    1.627140] systemd[1]: Detected architecture 'arm'.
    [    1.770829] NET: Registered protocol family 10
    [    1.775741] systemd[1]: Inserted module 'ipv6'
    [    1.781618] systemd[1]: Set hostname to <raspberrypi>.
    [    1.785084] systemd[1]: Initializing machine ID from random generator.
    [    1.788765] systemd[1]: Installed transient /etc/machine-id file.
    [    2.582221] systemd[1]: Cannot add dependency job for unit regenerate_ssh_host_keys.service, ignoring: Unit regenerate_ssh_host_keys.service failed to load: No such file or directory.
    [    2.592393] systemd[1]: Cannot add dependency job for unit display-manager.service, ignoring: Unit display-manager.service failed to load: No such file or directory.
    [    2.607499] systemd[1]: Starting Forward Password Requests to Wall Directory Watch.
    [    2.614852] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [    3.284547] 20980000.usb supply vusb_d not found, using dummy regulator
    [    3.284681] 20980000.usb supply vusb_a not found, using dummy regulator
    [    3.711326] dwc2 20980000.usb: EPs: 8, dedicated fifos, 4080 entries in SPRAM
    [    3.718760] dwc2 20980000.usb: DWC OTG Controller
    [    3.722061] dwc2 20980000.usb: new USB bus registered, assigned bus number 1
    [    3.727531] dwc2 20980000.usb: irq 33, io mem 0x00000000
    [    3.730682] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    [    3.733582] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    3.736176] usb usb1: Product: DWC OTG Controller
    [    3.738707] usb usb1: Manufacturer: Linux 4.9.24+ dwc2_hsotg
    [    3.741393] usb usb1: SerialNumber: 20980000.usb
    [    3.745968] hub 1-0:1.0: USB hub found
    [    3.753232] hub 1-0:1.0: 1 port detected
    [    3.902328] using random self ethernet address
    [    3.904963] using random host ethernet address
    [    3.908876] usb0: HOST MAC 6e:d7:ff:64:2a:86
    [    3.921535] usb0: MAC e6:51:e1:4c:e0:8a
    [    3.924079] using random self ethernet address
    [    3.926445] using random host ethernet address
    [    3.928870] g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
    [    3.931370] g_ether gadget: g_ether ready
    [    3.933646] dwc2 20980000.usb: bound driver g_ether
    [    4.034277] systemd-udevd[114]: starting version 215
    [    5.501609] gpiomem-bcm2835 20200000.gpiomem: Initialised: Registers at 0x20200000
    [    6.291817] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
    [    7.453859] usbcore: registered new interface driver brcmfmac
    [    7.764740] brcmfmac: Firmware version = wl0: May 27 2016 00:13:38 version 7.45.41.26 (r640327) FWID 01-df77e4a7
    [    8.216417] systemd-journald[110]: Received request to flush runtime journal from PID 1
    [   10.403413] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
    [   10.403505] brcmfmac: power management disabled
    [   10.424018] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
    [   11.343059] uart-pl011 20201000.serial: no DMA platform data
    [   12.206832] Adding 102396k swap on /var/swap.  Priority:-1 extents:5 across:200700k SSFS
    [   13.219949] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
    [   15.820438] Bluetooth: Core ver 2.22
    [   15.820573] NET: Registered protocol family 31
    [   15.820583] Bluetooth: HCI device and connection manager initialized
    [   15.828116] Bluetooth: HCI socket layer initialized
    [   15.828138] Bluetooth: L2CAP socket layer initialized
    [   15.828191] Bluetooth: SCO socket layer initialized
    [   15.847622] Bluetooth: HCI UART driver ver 2.3
    [   15.847638] Bluetooth: HCI UART protocol H4 registered
    [   15.847643] Bluetooth: HCI UART protocol Three-wire (H5) registered
    [   15.847842] Bluetooth: HCI UART protocol Broadcom registered
    [   16.417520] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
    [   16.417533] Bluetooth: BNEP filters: protocol multicast
    [   16.417561] Bluetooth: BNEP socket layer initialized

 cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)

# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'

# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

auto lo
iface lo inet loopback

iface eth0 inet manual

allow-hotplug wlan0
iface wlan0 inet dhcp
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
    metric 10

allow-hotplug wlan1
iface wlan1 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

allow-hotplug usb0
iface usb0 inet static
        address 192.168.7.2
        netmask 255.255.255.0
        network 192.168.7.0
        broadcast 192.168.7.255
        gateway 192.168.7.1

pi@raspberrypi:~ $  ifconfig
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr b8:27:eb:ba:29:c2
          inet addr:192.168.0.22  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::31be:c8e0:e3ab:d3a1/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6557 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10995 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:506736 (494.8 KiB)  TX bytes:1858404 (1.7 MiB)
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:44 errors:0 dropped:0 overruns:0 frame:0
          TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:4576 (4.4 KiB)  TX bytes:4576 (4.4 KiB)

usb0      Link encap:Ethernet  HWaddr e6:51:e1:4c:e0:8a
          inet addr:192.168.7.2  Bcast:192.168.7.255  Mask:255.255.255.0
          inet6 addr: fe80::3996:e7fd:f8ac:7678/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr b8:27:eb:ba:29:c2
          inet addr:192.168.0.22  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::31be:c8e0:e3ab:d3a1/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6602 errors:0 dropped:0 overruns:0 frame:0
          TX packets:11028 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:512300 (500.2 KiB)  TX bytes:1865674 (1.7 MiB)

Test with cable 1:

(there is a pic of test with cable 2 but can only upload 1 pic per post apparently).


Connections to raspberrypi.local appear to go via the wifi ipv6 interface, not the USB cable - ping shows this:

Pinging raspberrypi.local [fe80::31be:c8e0:e3ab:d3a1%11] with 32 bytes of data:
Reply from fe80::31be:c8e0:e3ab:d3a1%11: time=19ms
Reply from fe80::31be:c8e0:e3ab:d3a1%11: time=96ms
Reply from fe80::31be:c8e0:e3ab:d3a1%11: time=7ms
Reply from fe80::31be:c8e0:e3ab:d3a1%11: time=95ms

Ping statistics for fe80::31be:c8e0:e3ab:d3a1%11:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 7ms, Maximum = 96ms, Average = 54ms

At no point do I get the option to install drivers, or even get notified that I have an unknown USB device attached - i.e. I get no recognition that the Pi exists.

Hi, newbie here.

I was just about start a new thread, however noticed you’re having the same issues as me.

In my case I have a Pi Zero with USB Stem and it has been working really well right up until last week. That is it appeared as USB RNDIS Ethernet Gadget in Device manager and I was able to give Usb0 an IP as expected, with no issues.

Now it no longer gets detected by the host, in my case Windows 7 and 10 machines. Device manager doesn’t even acknowledge anything is connected. (Unless I leave the SD card out, in which case it shows up as unknown device - BCM2708 Boot)

I can still SSH using wifi. ifconfig shows usb0, but no IP. Device Manager shows nothing on a couple of machines I have tried.

Nothing has changed that I am aware of.

Anyway, not wanting to hijack your thread, more to highlight that you’re not the only one having issues. Hopefully someone will have an idea how to move forward.

ETA: Just borrowed another Pi0W, connected via USB and using my SD Card, it was detected by the host with no issue. Device manager showed the new device and I was able to SSH raspberrypi.local.

Defective Pi Zero W maybe?