Hi, we have a custom PCB which runs WEC2013. The PCB includes a miniPCIe interface into which we plug a wireless modem. This miniPCIe is connected to a USB hub on the PCB.
When the wireless modem is first inserted, it is detected and a serial port (COM9:) is created on the system (we can see the entry under HKLM\Drivers\Active).
We have the ability to toggle the power supply to the miniPCIe card through software. When we turn the power off, we see that the registry is updated and COM9: disappears. When we power it back on, the registry is again updated and COM9: reappears.
But if we do this repeatedly (sometimes after 30 repeats, sometimes after 3000 repeats) then the registry no longer updates and COM9: becomes 'stuck' in the registry. Our application is able to open COM9: (because it is present in the registry) but
we can't communicate with the modem. So it looks as though the registry is frozen. However, if we plug a USB memory stick into another USB port (on another USB hub), then this does appear under HKLM\Drivers\Active, and our app can read/write
to the USB memory stick.
Can someone point me at a description of the stages followed in handling the insertion of a USB device, or suggest how we can overcome this? Our system needs to run reliably over a long period of time and rebooting the system is not really an option
to being it back into operation.