Chopper HUB

USB HUB with VBUS and D+/D- switches emulates cable connected/disconnected between host and device

Similar projects worth following
Chopper HUB just looks like a standard USB HUB but there is special function. It can emulate cable connected/disconnected status electrically. This function is useful for specific use case, for example, reset bus-powered device remotely, and test target device automatically. It is realized by VBUS and D+/D- switches and micro-processor on board. When Chopper HUB is connected to host, PC recognizes it as HUB and HID device. To control plug/unplug status of each device port, you just send some command to HID device by software. Cross platform SDK will be prepared. I hope this gadget and SDK will contribute to built test automation environment.

Chopper HUB specifications


  • USB HUB controller IC
  • micro-processor
  • Load switch to connect/disconnect VBUS
  • Analog switch to connect/disconnect D+/D-
  • Power switch to select self or bus powered mode



  • Dual-licensed under the LGPL version 3 and the Apache License version 2.0

Cross Platform SDK


  • OS Linux/Mac/Windows
  • Compiler: GCC, MinGW and MS Visual C++
  • Command line tool chain
  • API for C++/Python/Ruby
  • Sample program


  • GPL v2


First prototype

Adobe Portable Document Format - 48.15 kB - 06/22/2016 at 08:22


  • GUI application

    Max12/29/2016 at 12:32 0 comments

    I'm making SDK and application to control Chopper HUB. It can just connect/disconnect each USB port by toggle buttons. The cross platform GUI is realized by wxWidgets. I like this library because it keeps OS native look and feel as follows as:

    It has been long time since I started this project, but I need more time to brush up source codes and documents.

  • Create project

    Max06/22/2016 at 17:26 0 comments

    This is my second project released in website. Chopper HUB is designed to improve productivity of daily work in office. I often have to plug and unplug USB cable between PC and a target device to test it. This operation is manipulated by hands so it makes difficult to build automatic test environment. If each USB port was enabled/disabled by software, test sequence would be automated.

    The first prototype has already been built, and then I verified that USB HUB controller IC works without problem, and micro-processor is recognized as USB device after flashing bootloader. Next step is to make firmware to control switches. Specification of API is very important for usability. I'm thinking about it now.

View all 2 project logs

Enjoy this project?



Consultant wrote 07/15/2016 at 17:29 point

I just finished a project that does this.  I used the TI TPS2546.  A couple of IOs into the device and you can switch from charge sources or host connect.  When you change the modes it disconnects the power and reconnects for you.  60 cents I think.  Small package.

It might give you some ideas if nothing else.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates