Persistent Issues with Adafruit Grand Central M4 Express via VirtualHere on Windows 11 to iMac

Hello everyone,

I'm reaching out for assistance with an ongoing issue I've been facing while trying to connect my Adafruit Grand Central M4 Express board to my M3 iMac through VirtualHere, using a Windows 11 laptop as the server. Despite several attempts and troubleshooting on my own, the connection remains unstable, and the device repeatedly binds and unbinds, among other errors.

Server Side (Windows 11):

  • The device [Adafruit Industries, Grand Central M4 Express] shows repeated cycles of being bound and unbound from connections (e.g., connection 26, 28, 31, etc.).
  • Received several BIND_ERROR messages, along with specific errors like Error 13 in line 165, The data is invalid. (0x0000000d) and Error 50 calling hub power cycle for device, The request is not supported. (0x00000032).
  • Notable warnings about failing to release claimed devices and issues completing the capture of the device, suggesting it never reappeared.

Client Side (iMac):

  • Frequent inability to enumerate the device at various addresses (e.g., addresses 6, 7, 14), accompanied by warnings such as Port 1 failed to reset (error -1).
  • Attempts to retry using the device at new addresses following failures, but these also end with errors and the inability to enumerate the device.

Given these challenges, I'm looking for any insights, recommendations, or similar experiences that could help me stabilize this connection. Specifically, I'm puzzled by the repeated bind/unbind events, the failure to enumerate the device, and the various error messages that seem to indicate deeper compatibility or communication issues between the server and client.

Has anyone encountered similar problems with VirtualHere or with connecting Adafruit hardware in a similar setup? Any suggestions on resolving the enumeration and binding errors would be greatly appreciated. I'm also curious if there are specific settings or configurations in VirtualHere that could mitigate these issues.

Thank you in advance for your time and help!

Server Log:

2024-03-31 08:36:24 INFO :Device 6 [239a:0031] UNBOUND from connection 22
2024-03-31 08:36:25 INFO :Device 6 [239a:0031] UNBOUND from connection 22
2024-03-31 08:36:27 INFO :Connection 22 successfully removed (reason:server shutdown)
2024-03-31 08:36:28 INFO :Unmanaging device 6 [239a:0031]
2024-03-31 08:36:41 INFO :Listening on all network interfaces at TCP port 7575 (IPv6 dual-stack)
2024-03-31 08:36:58 INFO :fe80::428:10c7:28a0:c4f2 connected as connection 26 (Standard TCP)
2024-03-31 08:37:02 INFO :Found Full speed device [239a:0031] "Adafruit Industries, Grand Central M4 Express" at address 6
2024-03-31 08:37:26 INFO :Device 6 [239a:0031] BOUND to connection 26
2024-03-31 08:39:28 INFO :Device 6 [239a:0031] UNBOUND from connection 26
2024-03-31 08:40:12 INFO :Connection 26 remotely disconnected gracefully (rx msg size)
2024-03-31 08:40:21 INFO :Connection 26 successfully removed (reason:timeout)
2024-03-31 08:52:44 INFO :Unmanaging device 6 [239a:0031]
2024-03-31 08:52:46 INFO :Listening on all network interfaces at TCP port 7575 (IPv6 dual-stack)
2024-03-31 08:52:46 INFO :Found Full speed device [239a:0031] "Adafruit Industries, Grand Central M4 Express" at address 6
2024-03-31 08:53:19 INFO :192.168.10.6 connected as connection 28 (Standard TCP)
2024-03-31 08:53:58 INFO :Device 6 [239a:0031] BOUND to connection 28
2024-03-31 08:56:12 INFO :Device 6 [239a:0031] UNBOUND from connection 28
2024-03-31 08:56:26 INFO :Device 6 [239a:0031] BOUND to connection 28
2024-03-31 08:57:38 INFO :Connection 28 remotely disconnected gracefully (rx msg size)
2024-03-31 08:58:21 INFO :192.168.10.6 connected as connection 31 (Standard TCP)
2024-03-31 08:58:40 INFO :Device 6 [239a:0031] UNBOUND from connection 28
2024-03-31 08:59:12 INFO :Unmanaging device 6 [239a:0031]
2024-03-31 08:59:12 INFO :Device 6 [239a:0031] UNBOUND from connection 28
2024-03-31 08:59:13 INFO :Connection 28 successfully removed (reason:timeout)
2024-03-31 08:59:18 ERROR :Cannot complete the capture of device 6, it never reappeared?
2024-03-31 08:59:18 ERROR :Error binding device 6 [239a:0031] to connection 31, BIND_ERROR
2024-03-31 08:59:28 INFO :Found Full speed device [239a:0031] "Adafruit Industries, Grand Central M4 Express" at address 6
2024-03-31 08:59:36 INFO :Device 6 [239a:0031] BOUND to connection 31
2024-03-31 09:01:51 INFO :Device 6 [239a:0031] UNBOUND from connection 31
2024-03-31 09:01:52 INFO :Device 6 [239a:0031] BOUND to connection 31
2024-03-31 09:03:02 INFO :Device 6 [239a:0031] UNBOUND from connection 31
2024-03-31 09:03:03 INFO :Device 6 [239a:0031] SURPRISE UNBOUND from connection 31
2024-03-31 09:03:03 INFO :Unmanaging device 6 [239a:0031]
2024-03-31 09:03:08 ERROR :Cannot complete the capture of device 6, it never reappeared?
2024-03-31 09:03:08 ERROR :Error binding device 6 [239a:0031] to connection 31, BIND_ERROR
2024-03-31 09:03:15 INFO :Found Full speed device [239a:0031] "Adafruit Industries, Grand Central M4 Express" at address 7
2024-03-31 09:03:16 ERROR :Error 13 in line 165, The data is invalid. (0x0000000d)
2024-03-31 09:03:16 ERROR :Error 50 calling hub powercycle for device 7, The request is not supported. (0x00000032)
2024-03-31 09:03:16 ERROR :Error binding device 7 [239a:0031] to connection 31, BIND_ERROR
2024-03-31 09:03:19 INFO :Device 7 [239a:0031] BOUND to connection 31
2024-03-31 09:05:27 INFO :Device 7 [239a:0031] UNBOUND from connection 31
2024-03-31 09:05:27 INFO :Unmanaging device 7 [239a:0031]
2024-03-31 09:05:32 ERROR :Cannot complete the capture of device 7, it never reappeared?
2024-03-31 09:05:32 ERROR :Error binding device 7 [239a:0031] to connection 31, BIND_ERROR
2024-03-31 09:05:32 INFO :Found Super speed device [0bda:0411] "Generic, USB3.2 Hub" at address 9
2024-03-31 09:05:34 INFO :Found High speed device [0bda:5411] "Generic, USB2.1 Hub" at address 10
2024-03-31 09:05:34 ERROR :Error loading string descriptor (not string) for device on port 1
2024-03-31 09:05:34 INFO :Found High speed device [05e3:0618] "0x05e3, USB2.0 Hub" at address 11
2024-03-31 09:05:34 INFO :Found High speed device [05e3:0752] "0x05e3, 0x0752" at address 12
2024-03-31 09:05:34 INFO :Found Full speed device [048d:5212] "ITE Tech. Inc., ITE BillBoard" at address 13
2024-03-31 09:05:41 INFO :Unmanaging device 13 [048d:5212]
2024-03-31 09:05:58 INFO :Device 12 [05e3:0752] BOUND to connection 31
2024-03-31 09:06:53 INFO :Found Full speed device [239a:0031] "Adafruit Industries, Grand Central M4 Express" at address 14
2024-03-31 09:06:54 ERROR :Error 13 in line 165, The data is invalid. (0x0000000d)
2024-03-31 09:06:54 ERROR :Error 50 calling hub powercycle for device 14, The request is not supported. (0x00000032)
2024-03-31 09:06:54 ERROR :Error binding device 14 [239a:0031] to connection 31, BIND_ERROR
2024-03-31 09:06:57 INFO :Device 14 [239a:0031] BOUND to connection 31
2024-03-31 09:09:10 INFO :Device 14 [239a:0031] UNBOUND from connection 31
2024-03-31 09:09:12 INFO :Device 14 [239a:0031] BOUND to connection 31
2024-03-31 09:11:25 INFO :Device 14 [239a:0031] UNBOUND from connection 31
2024-03-31 09:11:27 INFO :Device 14 [239a:0031] BOUND to connection 31
2024-03-31 09:13:40 INFO :Device 14 [239a:0031] UNBOUND from connection 31
2024-03-31 09:13:42 INFO :Device 14 [239a:0031] BOUND to connection 31
2024-03-31 09:15:50 INFO :Device 14 [239a:0031] UNBOUND from connection 31
2024-03-31 09:15:50 WARNING :Failed to release claimed device USB\VID_05E3&PID_0618\6&1DFB032D&0&1,USB\VID_05E3&PID_0752\7&5692831&0&1,1 while uncapturing, The device does not recognize the command. (0x00000016)
2024-03-31 09:15:52 INFO :Unmanaging device 10 [0bda:5411]
2024-03-31 09:15:52 INFO :Unmanaging device 11 [05e3:0618]
2024-03-31 09:15:52 ERROR :DiInstallDevice failed, (0xe000020b)
2024-03-31 09:15:53 INFO :Device 12 [05e3:0752] UNBOUND from connection 31
2024-03-31 09:15:53 INFO :Device 12 [05e3:0752] SURPRISE UNBOUND from connection 31
2024-03-31 09:15:53 INFO :Unmanaging device 12 [05e3:0752]
2024-03-31 09:15:53 INFO :Unmanaging device 14 [239a:0031]
2024-03-31 09:15:53 INFO :Unmanaging device 9 [0bda:0411]
2024-03-31 09:15:58 ERROR :Cannot complete the capture of device 14, it never reappeared?
2024-03-31 09:15:58 ERROR :Error binding device 14 [239a:0031] to connection 31, BIND_ERROR
2024-03-31 09:16:12 INFO :Found Full speed device [239a:0031] "Adafruit Industries, Grand Central M4 Express" at address 7
2024-03-31 09:16:13 ERROR :Error 13 in line 165, The data is invalid. (0x0000000d)
2024-03-31 09:16:13 ERROR :Error 50 calling hub powercycle for device 7, The request is not supported. (0x00000032)
2024-03-31 09:16:13 ERROR :Error binding device 7 [239a:0031] to connection 31, BIND_ERROR
2024-03-31 09:16:16 INFO :Device 7 [239a:0031] BOUND to connection 31
2024-03-31 09:18:31 INFO :Device 7 [239a:0031] UNBOUND from connection 31
2024-03-31 09:18:32 INFO :Device 7 [239a:0031] BOUND to connection 31

Client Log:

2024-03-31 08:59:49 INFO  :Unable to enumerate device at address 6
2024-03-31 08:59:50 INFO  :Warning: Port 1 failed to reset (error -1)
2024-03-31 08:59:50 INFO  :Unable to enumerate device at address 6
2024-03-31 08:59:51 INFO  :Warning: Port 1 failed to reset (error -1)
2024-03-31 08:59:51 INFO  :Unable to enumerate device at address 6
2024-03-31 08:59:52 INFO  :Warning: Port 1 failed to reset (error -1)
2024-03-31 08:59:52 INFO  :Unable to enumerate device at address 6
2024-03-31 08:59:53 INFO  :Warning: Port 1 failed to reset (error -1)
2024-03-31 08:59:53 INFO  :Unable to enumerate device at address 6
2024-03-31 08:59:54 INFO  :Warning: Port 1 failed to reset (error -1)
2024-03-31 08:59:54 INFO  :Unable to enumerate device at address 6
2024-03-31 08:59:56 INFO  :Warning: Port 1 failed to reset (error -1)
2024-03-31 08:59:56 INFO  :Unable to enumerate device at address 6
2024-03-31 08:59:57 INFO  :Warning: Port 1 failed to reset (error -1)
2024-03-31 08:59:57 INFO  :Unable to enumerate device at address 6
2024-03-31 09:02:05 INFO  :Unable to enumerate device at address 6
2024-03-31 09:02:06 INFO  :Warning: Port 2 failed to reset (error -1)
2024-03-31 09:02:06 INFO  :Unable to enumerate device at address 6
2024-03-31 09:02:07 INFO  :Warning: Port 2 failed to reset (error -1)
2024-03-31 09:02:07 INFO  :Unable to enumerate device at address 6
2024-03-31 09:02:08 INFO  :Warning: Port 2 failed to reset (error -1)
2024-03-31 09:02:08 INFO  :Unable to enumerate device at address 6
2024-03-31 09:02:09 INFO  :Warning: Port 2 failed to reset (error -1)
2024-03-31 09:02:09 INFO  :Unable to enumerate device at address 6
2024-03-31 09:02:10 INFO  :Warning: Port 2 failed to reset (error -1)
2024-03-31 09:02:11 INFO  :Unable to enumerate device at address 6
2024-03-31 09:02:12 INFO  :Warning: Port 2 failed to reset (error -1)
2024-03-31 09:02:12 INFO  :Unable to enumerate device at address 6
2024-03-31 09:02:13 INFO  :Warning: Port 2 failed to reset (error -1)
2024-03-31 09:02:13 INFO  :Unable to enumerate device at address 6
2024-03-31 09:03:17 INFO  :Retrying to use device at address 7 on server Windows Hub (HVRND.local.:7575), the previous bind failed with an error (see server log)
2024-03-31 09:03:32 INFO  :Unable to enumerate device at address 7
2024-03-31 09:03:33 INFO  :Warning: Port 3 failed to reset (error -1)
2024-03-31 09:03:33 INFO  :Unable to enumerate device at address 7
2024-03-31 09:03:34 INFO  :Warning: Port 3 failed to reset (error -1)
2024-03-31 09:03:34 INFO  :Unable to enumerate device at address 7
2024-03-31 09:03:35 INFO  :Warning: Port 3 failed to reset (error -1)
2024-03-31 09:03:35 INFO  :Unable to enumerate device at address 7
2024-03-31 09:03:36 INFO  :Warning: Port 3 failed to reset (error -1)
2024-03-31 09:03:36 INFO  :Unable to enumerate device at address 7
2024-03-31 09:03:37 INFO  :Warning: Port 3 failed to reset (error -1)
2024-03-31 09:03:37 INFO  :Unable to enumerate device at address 7
2024-03-31 09:03:39 INFO  :Warning: Port 3 failed to reset (error -1)
2024-03-31 09:03:39 INFO  :Unable to enumerate device at address 7
2024-03-31 09:03:40 INFO  :Warning: Port 3 failed to reset (error -1)
2024-03-31 09:03:40 INFO  :Unable to enumerate device at address 7
2024-03-31 09:06:55 INFO  :Retrying to use device at address 14 on server Windows Hub (HVRND.local.:7575), the previous bind failed with an error (see server log)
2024-03-31 09:07:10 INFO  :Unable to enumerate device at address 14
2024-03-31 09:07:11 INFO  :Warning: Port 5 failed to reset (error -1)
2024-03-31 09:07:11 INFO  :Unable to enumerate device at address 14
2024-03-31 09:07:12 INFO  :Warning: Port 5 failed to reset (error -1)
2024-03-31 09:07:12 INFO  :Unable to enumerate device at address 14
2024-03-31 09:07:13 INFO  :Warning: Port 5 failed to reset (error -1)
2024-03-31 09:07:13 INFO  :Unable to enumerate device at address 14
2024-03-31 09:07:14 INFO  :Warning: Port 5 failed to reset (error -1)
2024-03-31 09:07:14 INFO  :Unable to enumerate device at address 14
2024-03-31 09:07:15 INFO  :Warning: Port 5 failed to reset (error -1)
2024-03-31 09:07:15 INFO  :Unable to enumerate device at address 14
2024-03-31 09:07:16 INFO  :Warning: Port 5 failed to reset (error -1)
2024-03-31 09:07:16 INFO  :Unable to enumerate device at address 14
2024-03-31 09:07:17 INFO  :Warning: Port 5 failed to reset (error -1)
2024-03-31 09:07:17 INFO  :Unable to enumerate device at address 14
2024-03-31 09:08:28 INFO  :containerID=00000000000000000000000000000000
2024-03-31 09:08:28 INFO  :parentContainerID=00000000000000000000000000000000
2024-03-31 09:09:06 INFO  :containerID=00000000000000000000000000000000
2024-03-31 09:09:06 INFO  :parentContainerID=00000000000000000000000000000000
2024-03-31 09:09:25 INFO  :Unable to enumerate device at address 14
2024-03-31 09:09:26 INFO  :Warning: Port 6 failed to reset (error -1)
2024-03-31 09:09:26 INFO  :Unable to enumerate device at address 14
2024-03-31 09:09:27 INFO  :Warning: Port 6 failed to reset (error -1)
2024-03-31 09:09:27 INFO  :Unable to enumerate device at address 14
2024-03-31 09:09:28 INFO  :Warning: Port 6 failed to reset (error -1)
2024-03-31 09:09:28 INFO  :Unable to enumerate device at address 14
2024-03-31 09:09:29 INFO  :Warning: Port 6 failed to reset (error -1)
2024-03-31 09:09:29 INFO  :Unable to enumerate device at address 14
2024-03-31 09:09:30 INFO  :Warning: Port 6 failed to reset (error -1)
2024-03-31 09:09:30 INFO  :Unable to enumerate device at address 14
2024-03-31 09:09:31 INFO  :Warning: Port 6 failed to reset (error -1)
2024-03-31 09:09:31 INFO  :Unable to enumerate device at address 14
2024-03-31 09:09:32 INFO  :Warning: Port 6 failed to reset (error -1)
2024-03-31 09:09:32 INFO  :Unable to enumerate device at address 14
2024-03-31 09:11:39 INFO  :Unable to enumerate device at address 14
2024-03-31 09:11:40 INFO  :Warning: Port 7 failed to reset (error -1)
2024-03-31 09:11:40 INFO  :Unable to enumerate device at address 14
2024-03-31 09:11:41 INFO  :Warning: Port 7 failed to reset (error -1)
2024-03-31 09:11:42 INFO  :Unable to enumerate device at address 14
2024-03-31 09:11:43 INFO  :Warning: Port 7 failed to reset (error -1)
2024-03-31 09:11:43 INFO  :Unable to enumerate device at address 14
2024-03-31 09:11:44 INFO  :Warning: Port 7 failed to reset (error -1)
2024-03-31 09:11:44 INFO  :Unable to enumerate device at address 14
2024-03-31 09:11:45 INFO  :Warning: Port 7 failed to reset (error -1)
2024-03-31 09:11:45 INFO  :Unable to enumerate device at address 14
2024-03-31 09:11:46 INFO  :Warning: Port 7 failed to reset (error -1)
2024-03-31 09:11:46 INFO  :Unable to enumerate device at address 14
2024-03-31 09:11:47 INFO  :Warning: Port 7 failed to reset (error -1)
2024-03-31 09:11:47 INFO  :Unable to enumerate device at address 14
2024-03-31 09:13:54 INFO  :Unable to enumerate device at address 14
2024-03-31 09:13:55 INFO  :Warning: Port 8 failed to reset (error -1)
2024-03-31 09:13:55 INFO  :Unable to enumerate device at address 14
2024-03-31 09:13:56 INFO  :Warning: Port 8 failed to reset (error -1)
2024-03-31 09:13:56 INFO  :Unable to enumerate device at address 14
2024-03-31 09:13:57 INFO  :Warning: Port 8 failed to reset (error -1)
2024-03-31 09:13:57 INFO  :Unable to enumerate device at address 14
2024-03-31 09:13:58 INFO  :Warning: Port 8 failed to reset (error -1)
2024-03-31 09:13:58 INFO  :Unable to enumerate device at address 14
2024-03-31 09:14:00 INFO  :Warning: Port 8 failed to reset (error -1)
2024-03-31 09:14:00 INFO  :Unable to enumerate device at address 14
2024-03-31 09:14:01 INFO  :Warning: Port 8 failed to reset (error -1)
2024-03-31 09:14:01 INFO  :Unable to enumerate device at address 14
2024-03-31 09:14:02 INFO  :Warning: Port 8 failed to reset (error -1)
2024-03-31 09:14:02 INFO  :Unable to enumerate device at address 14
2024-03-31 09:15:52 INFO  :Warning: Port 4 failed to reset (error -1)
2024-03-31 09:15:52 INFO  :Unable to enumerate device at address 12
2024-03-31 09:15:53 INFO  :Warning: Port 4 failed to reset (error -1)
2024-03-31 09:15:53 INFO  :Unable to enumerate device at address 12
2024-03-31 09:15:54 INFO  :Warning: Port 4 failed to reset (error -1)
2024-03-31 09:15:54 INFO  :Unable to enumerate device at address 12
2024-03-31 09:16:14 INFO  :Retrying to use device at address 7 on server Windows Hub (HVRND.local.:7575), the previous bind failed with an error (see server log)
2024-03-31 09:16:29 INFO  :Unable to enumerate device at address 7
2024-03-31 09:16:30 INFO  :Warning: Port 9 failed to reset (error -1)
2024-03-31 09:16:30 INFO  :Unable to enumerate device at address 7
2024-03-31 09:16:31 INFO  :Warning: Port 9 failed to reset (error -1)
2024-03-31 09:16:31 INFO  :Unable to enumerate device at address 7
2024-03-31 09:16:32 INFO  :Warning: Port 9 failed to reset (error -1)
2024-03-31 09:16:32 INFO  :Unable to enumerate device at address 7
2024-03-31 09:16:33 INFO  :Warning: Port 9 failed to reset (error -1)
2024-03-31 09:16:33 INFO  :Unable to enumerate device at address 7
2024-03-31 09:16:34 INFO  :Warning: Port 9 failed to reset (error -1)
2024-03-31 09:16:34 INFO  :Unable to enumerate device at address 7
2024-03-31 09:16:35 INFO  :Warning: Port 9 failed to reset (error -1)
2024-03-31 09:16:36 INFO  :Unable to enumerate device at address 7
2024-03-31 09:16:37 INFO  :Warning: Port 9 failed to reset (error -1)
2024-03-31 09:16:37 INFO  :Unable to enumerate device at address 7

#2

Can you try the virtualhere server from the microsoft store. That works slightly differently and might improve compatibility. Let me know how it goes.

#3

Hi Michael,

  How does the software make use of the Bonjour service? I didn't have any more luck using the VirtualHere server from the Microsoft Store. However, I did notice in the client logs that it was using Bonjour. I remember doing some spring cleaning on my Windows laptop and removed Bonjour. I'm wondering if that could be the cause of the issue.

2024-03-31 20:42:12 INFO  :VirtualHere Client 5.6.0 starting (Compiled: Mar 28 2024 07:52:09)
2024-03-31 20:42:12 INFO  :Client OS is macOS Sonoma Version 14.3.1 (Build 23D60)
2024-03-31 20:42:12 INFO  :Using config at /Users/Seth/Library/Preferences/vhui Preferences
2024-03-31 20:42:12 INFO  :IPC available at /tmp/vhclient
2024-03-31 20:42:13 INFO  :Auto-find using Bonjour - on
2024-03-31 20:42:13 INFO  :Auto-find using Bonjour SSL - on
2024-03-31 20:42:39 INFO  :interestHandler mt=3758096641
2024-03-31 20:42:53 INFO  :Unable to enumerate device at address 6
2024-03-31 20:42:54 INFO  :Unable to enumerate device at address 6
2024-03-31 20:42:55 INFO  :Unable to enumerate device at address 6
2024-03-31 20:42:56 INFO  :Unable to enumerate device at address 6
2024-03-31 20:42:57 INFO  :Unable to enumerate device at address 6
2024-03-31 20:42:58 INFO  :Unable to enumerate device at address 6
2024-03-31 20:42:59 INFO  :Unable to enumerate device at address 6
2024-03-31 20:43:00 INFO  :Unable to enumerate device at address 6
 

#4

Bonjour is how virtualhere Auto-Find servers. Bonjour is built into windows now and there is no extra install needed.

If you tried the store version and it still doesn't work, i dont know the issue sorry. My guess is that its probably expecting very simple USB commands and when these are re-sent after the device is redirected, it causes the firmware in the board to crash or reset.