Adding an external power supply to a cheap USB hub

Hi again! In this post I’m going to show you how to add an external power supply to a cheap USB hub. 🙂
usb hub with power connector
I’ve been running some experiments with two Logitech Quickcam for Notebooks Pro and the Raspberry Pi and unfortunately I haven’t been getting any good results. I can’t get many fps and some of the captured frames contain corrupted data but I think I may have found out the reason for that. After some reading I verified that the USB ports of the Raspberry Pi can only source 100mA to a device and maybe the cameras are consuming more than that. To bypass that problem I went out to buy a USB hub with external power supply.

However, I verified that hubs with external power supply can be quite more expensive than the ones that don’t have external power supply. No big deal, “I’ll just by a cheap one and add the external power supply”, I thought. And that’s what I did! After all I just had to add a wire on VCC, another on GND and cut the VCC wire of the USB cable that connects to the computer… So, I went to a shop and bought the cheaper USB2.0 USB hub that I found and took it home for some small hacking.
The hacking started with a close inspection of the device, which made me realize that maybe the small hacking was going to be even easier than I thought it would be. The USB hub has the shape of a 4-pointed star and in one of the corners there’s the USB cable. However, I noticed that on another corner of the enclosure there was just a small hole. “Weird! Why is this hole here?”, I thought. I opened the case and right next to that unexpected hole, there were three holes in the PCB without any component inserted on them. I started to guess that those holes in the PCB and the hole in the enclosure were to solder the connector for an external power supply. I used my multimeters’ sound probe to verify if my suspicion was correct and fortunately it was! 🙂 Two of the holes were on a GND trace and the another one was on the VCC trace.
strange opening in usb hub casethree strange holes in usb hub pcb
Probably there are two versions of the same USB hub being the only difference the presence or the absence of the external power supply connector. I guess it’s a lot cheaper for companies to manufacture a big amount of a single printed circuit board than to order smaller amounts of two different boards 🙂
So, after this finding I began to search for a fitting connector and luckily I had one that I had scavenged from some other device. I soldered the connector and cut the VCC (red) wire of the USB cable that connects to the computer and the hacking was complete. I plugged in the regulated 5V power supply, the green led of the USB hub turned on. Everything OK 🙂 I plugged in the USB cable on the computer and entered “lsusb” in the terminal, USB hub successfully recognized! Still everything OK 🙂 At last I plugged in the webcams and opened the “/dev/video0” and “/dev/video1” streams in VLC and I had two webcams streaming in my screen! Hacking complete and some bucks saved! 🙂
Response code is 404
You can do this hack in any USB hub, even if the hub doesn’t come with holes to place the connector. The only things you have to do are:
  1. Locate the GND and VCC traces and solder a wire to each one of them.
  2. Solder a connector to the wires.
  3. Cut the VCC (red) wire of the USB cable that connects the hub to the computer.
The USB hub also works with the Raspberry Pi. However I didn’t test the webcams with the Raspberry Pi yet. If you want you can check my previous post about my first impressions on the Raspberry Pi.
And that’s it! Hope you liked this simple hack and found it useful for your own projects 🙂 Take care!
Update (04/06/12): This project is also available on . You can see it here.
Update (25/05/13): This project has been featured on Hackaday . You can see it here.

Did you find this post helpful? Do you wish to contribute to other projects regarding computer science, electronics, robotics or mechatronics that will be posted in this blog? If you wish to do so, you can donate via paypal using the button below. Thanks! 🙂