This is something that I was long awaited for. Analog Devices introduced the first digital isolator for USB ports, ADuM4160, meaning that now complete decoupling is possible between USB host and device, including the ground common being separated. Why is it useful?
- The possibility for removing ground loops thus achieving lower noise levels which is handy for low noise instrumentation or high end audio electronics (in fact, it is especially useful for external sound cards plugged on USB);
- Decoupling the device from the computer host might protect the computer if anything goes wrong in the device, i. e. high voltage level appears in the digital parts due to malfunction.
The principle of operation is discussed here, the main point is that a CMOS-integrated transformer couples the output to the input. This is not that simple for USB however, as data flow has to be ensured in both directions, so additional logic circuit is necessary.
There is one additional goal: to ensure power supply for bus-powered USB devices. For this purpose, I used ADuM5000, which shares the same transformer coupling technique for transferring power to the decoupled part. Sadly enough, the efficiency is quite low, only around 33%. The maximum output is 100mA at 5V but this can be improved by hooking up these circuits in parallel as suggested by the datasheet. I used two devices in the scheme to make use the entire 500mA available on each port which leads to around 200mA maximum output which is still enough for a plenty of kinds of devices.
The schematics is quite straightforward, the most important thing is to decouple power supply pins with 100nF capacitors near the integrated circuit. The PCB is easy as well, a small two sided board is enough. The only guideline is to make sure that there are no nearby copper lines from the parts which could endanger the isolation for high voltages.
I tested the circuit and it worked pretty well with my 1GB flash drive, and it made use of the 12Mb/s Full Speed bandwidth. There were other devices, including USB mice that ended up with a "USB device not recognized" error message upon plug-in. The reason I suspect is the power supply: USB devices can allocate up to 500mA on each port, which should prevent overloading the port. I assume if much more is used just after plugging in the device, the USB controller might inhibit the device in question. Here this could easily happen, as the power supply efficiency is only around 30% (factor of three!).
To check this, I used a self-powered USB hub between the isolator the device (i.e. mouse), and in this fashion, everything worked out for all devices I could test.
There is, however another side effect of the low efficiency of the ADuM5000: if operated on the edge, they can heat up quite easily. I think this can be addressed by gluing some sort of heat sink on the top of the IC.Yet, the heat sink has to be isolated from everything as well!
Update: I tested the board with a small piece of heat sink glued on the two ADuM5000s. I put some thermally conductive adhesive on the top of the ICs, installed the heat sink and glued it together with some two component epoxy which is also useful against accidental shorts and other problems with an unprotected PCB. I tested the device afterward and not it is stable no matter what the load is.
Update: I tested the board with a small piece of heat sink glued on the two ADuM5000s. I put some thermally conductive adhesive on the top of the ICs, installed the heat sink and glued it together with some two component epoxy which is also useful against accidental shorts and other problems with an unprotected PCB. I tested the device afterward and not it is stable no matter what the load is.
In conclusion, the circuit worked pretty well for me, the only improvement could be a better power supply, or a USB2.0 high speed device... But still, this kind of portfolio is quite unique on the market.