We work with some dangerous circuits in the pursuit of cool hacks. High voltage, high current, all demand some respect. We can protect our bodies easily enough, but what about that fancy new laptop or Macbook? [David] is here to help with his isolated versatile FTDI circuit.
Our computers are often wired directly into the circuits we’re hacking on. In days past that might have been a parallel or serial port. Today it’s almost always USB, specifically serial over USB. USB has some safety features built-in, such as current limiting. However, it isn’t too hard to blow up a USB port, or even a motherboard with high voltage. Galvanic isolation is a method of removing any electrical connection between two circuits. Connections can still be made through optical, magnetic, or capacitive methods, just to name a few. One of the simplest methods of galvanic isolation is the humble optocoupler.
Isolating a high-speed USB connection can get somewhat complex. [David] wisely chose to isolate things on the serial side of the FTDI USB to serial converter. He started with SparkFun’s open source FTDI Basic Breakout. Galvanic isolation is through either an Analog Devices ADuM 1402 or ADuM 5402. The 1402 needs a bit of power on the isolated side, while the 5402 includes an isolated DC/DC converter to provide up to 60mA.
[David] didn’t just stop at galvanic isolation. He also added ESD protection, over current protection, and multiple options which can be selected when the board is built. Nice work [David]! Now we don’t have to worry about our laptop frying when we’re blowing up wires.
“what about that fancy new laptop or Macbook?”
A Macbook isn’t a laptop?
laptops are computers that can be disassembled and repaired and upgraded.
and then there are macbooks
Really, that’s what makes a laptop a laptop? Someone should tell Sony, who sent out a tech to fix my friend’s laptop. Covered a table with the parts as he disassembled it to replace a fan, and couldn’t get it to work when he reassembled it.
Yikes. Any idea which model?
Macbooks can’t be disassembled, upgraded and repaired? Tell my macbook with self replaced battery, hdd, ram, fan and touchpad….. Much more easier then on my previous dell and ibm…
I’m so sick of the Mac vs Windows back-and-forth banter. I dual boot both on one machine, I disassemble/replace/repair/upgrade my wife’s mac book. I use windows to game, Mac OS to work. Hackintosh! it’s sums up the whole point of this community, then gets downed on by THIS community. I really don’t understand. Stop being fanboys (of either side) and use what works best for any given situation. Most people who down on Mac OS have never used it, many have never even tried linux! Some of the mac fan boys haven’t touched windows since 98 and have no idea how it flies in 7 on a core i7.
It’s just like programming languages. People don’t want to use the best tool for the situation, they want their favourite tool to always be the best and nobody better say any different.
I hate to say it, but the root cause for a lot of that is emotional investment in our choices. It’s the same reason you find people getting into fist-fights about how their favorite sports team is “the best”, or their favorite car manufacturer is better than all the others. High functioning autistics (that’s most of us here, sorry.) aren’t immune to emotions, and often actually have a lower level of emotional intelligence because we’re not used to dealing with them. That’s why you see us acting like body-paint covered sports fans when we’re deep in a flamewar over Python vs C++, or Emacs vs Vi.
Some aspects of a product or technology are very satisfying to us, beyond just fulfilling technical requirements, and we attach emotions to it and start identifying with it. An attack on our favored tool is an attack on our emotions, on us.
Almost like my NoLoop http://www.vagrearg.org/content/noloop just with added FTDI chip. However, I added the DC/DC converter to the design.
Every USB soundcard should have this kind of isolation!
Much easier to isolate the output. Actually, the optical S/PDIF output is intrinsically isolated.
“USB has some safety features built-in, such as current limiting.”
Not really.
The standard has, but so far I haven’t found a computer that would actually respect the current limits. You can pretty much draw as much current as you want without negotiating anything save for actually shorting it out.
Go ahead and connect an 8 Ohm resistor across the outermost leads of your USB port for a brief moment. What should be happening is your OS should shriek warnings and the USB port should turn off. What really happens is the resistor between your finger turns hot.
What’s even better is when the system pays enough attention to the negotiation to be able to report how much current the device says it should be taking, but just supplies whatever the device wants anyway. They got so close, but got lazy at the last moment.
I suspect that the computer manufacturers are in a tough spot. A lot of USB peripherals violate the spec. Either by drawing more current than is allowed or by drawing more current than they report they will. Enforcing the USB power rules would probably result in a lot of unhappy customers. So they probably opt for just trying to protect their own electronics.
I’m not sure what the limits are (I suspect they are much higher than 500 mA), but both an older Macbook and my current Pro will shutdown a port when I draw too much current.
They got lazy because the standard current limits on USB are way too low. Something like 2.5A would have been much more reasonable as a current limit.
You can’t run a coffee mug warmer on 100mA. Well, 500mA isn’t all that much either, but needing to have chip in all of your useless USB toys to negotiate current would be a bit annoying.
There are quite a few PC/motherboards that has PTC on the USB ports. I have scraped
Megabyte, ASUS, IBM, Compaq, Dell boards for parts. Some of these factory business class computers have UL CSA etc safety certification which don’t look too kindly on ports without current limits.
Now whether or not the PTC are per USB specs is a different matter. It is a hard thing to specify a tight spec on them – parts to parts tolerance and temperature variation. (vs an IC USB switch, but you can’t get safety for that)
The polyfuses are usually 1 amp. In theory the OS should shut the port down due to overcurrent before the fuse trips.
There are some limits, but i still have never seen anything that will measure the actual power and send the data back to the OS. I have only seen the following:
No protection, mostly on cheap laptops and netbooks such as some EEEPCs. My EEEPC has the 5V rail straight out on USB, if a USB device with a good cable shorts out the computer shuts down, if i do the same with a cheap cable the cable starts to bubble…
Permanent fuses can be found on some very early USB motherboards, i know several people who ended up with non-functioning USB ports after trying to use a USB powered 2.5″ HDD (2-4A startup current)
PTC polyfuse, the most common protection, it has a small initial resistance that will prevent a complete system shutdown if the port is shorted, and if the short persists the polyfuse will turn off power.
Electronic protection, this seems to be more common these days, a single chip or a controller and a FET that measures current and sometimes voltage, and shuts down if the values are out of specifications. These are very similar to protection chips for rechargeable lithium batteries.
Many ports today will handle 2A fine, but i personally would avoid drawing more than 1A continously from a USB port on a modern computer unless specifications say otherways.
Macs have overcurrent protection. The error message displayed is “To prevent damaging your computer, the USB device drawing too much power has been disabled. Other devices may have also been disabled. When you disconnect the device drawing too much power, your other USB devices will be enabled again.”
I’ve seen it a couple times, usually dealing with bus powered drives.
Macs will do this, complete with a popup saying “disconnect the problematic device”.
Suppose you’re isolating a USB device which is capable of high speed (480 Mbit/s), which neither isolator chip supports; but can fall back to full speed (12 Mbit/s), which both support. Does USB have any “intermediate” speeds that would make the faster ADuM1402 a better choice in this situation?
http://www.nve.com/spintronics.php
IL700 series handles up to 150Mbps using GMR (Giant Magneto-resistance) isolators. Isolation is comparable opto-isolator equivalent.
This is a great project and I use a similar method every day as I have to have ground isolation for my projects.
What I use is significantly cheaper in volume but does not have some of the features of this project. I run the FTDI chip right off of USB and have the TX, RX, DTR, etc run though optocouplers. This brings the cost down to roughly a max additional cost of $0.45 to add isolation in ones and twos. The project will have to be powered but it works great for me.
+1 for the Analog ADuM IC’s. I’ve used them on quite a few projects with great success.
This would be great for those whose 3D printer or similar device dies when lights/fridge/whatever are turned on/off nearby. Catalin who designed the Shapeoko had this issue and was showing me his own galvanic isolation circuit a few weeks ago at sh-hackspace.
the ONLY usb port ive ever seen that cuts off power on short is my
LCD monitor with built-in USB hub.
so i use that for my 5v projects,
added bonus is it has VERY clean power,
compared to cell chargers/garbage.
I use these and they’re ggggreeeat! http://ack6.com/product/ack6-iso-usb-uart-078a/
The ISO7221 is also a good (and affordable) alternative for UART isolation; it’s what I’m using in the Re:load Pro.
I was working on a similar one around the FT4232H while this article was posted, you can see how mine is different here https://github.com/adamjvr/FTDIToolKit
Would using a
usb hub provide any protection?
yes