Create a singleton class, which your forms will all share. The forms can register/deregister for events as they come up/down. Since the PhidgetBridge object isn't owned by your forms, you will need to handle Invoke yourself if you need to access the form directly from and Phidget events. For example...
If you want to get Node.JS running on an SBC2/3 you would need to compile/cross-compile it yourself. Also, you would need to use the old 0.10 branch, as the newer branches require ARMv6 or newer, and the SBC3 only support ARMv5.
This generally happen if you have the bridge data event handler set up, and then close the bridge in a form closing event. This will cause a deadlock. You need to deregister the event 1st, then call Application.DoEvents(), then close the bridge.
If 1067 is disconnecting as well, it's EMI. Maybe wiring with usb cables tightly zip-tied in? Installing the diodes might help a little. I would recommend you put plenty of ferrites on USB cables, from hub to pc, hub to devices, and the hub-5v power supply line. No reason they can't put 5 ferrites a...
It's not EMI, there is actually a real USB detach happening. Have you tried connecting the 1012 directly to the PC to rule out hub issues? Have you tried swapping out the USB cable? Can you provide a diagram of exactly how the I/O on the 1012 is connected? Are you using both digital inputs and outpu...