Overengineering A USB Hub

hub

Like many of us, I’m sure, [Nick] doesn’t like digging around behind his computer case for a spare USB port and ended up buying a small USB hub for his desk. The hub worked perfectly, but then [Nick] realized an Ethernet port would be a nice addition. And a DC power supply. Then feature creep set in.

What [Nick] ended up building is a monstrosity of a desk hub with two 24V,  5V, 3.3V 50 Watt DC outputs on banana plugs, a five-port USB hub, four-port Ethernet switch, three mains sockets, 32 digital I/Os, UART, SPI, and I2C ports, a 24×4 LCD or displaying DC current usage and serial input, cooling fans, and a buzzer just or kicks.

The case is constructed out of 6mm laser cut acrylic, and the electronics are admittedly a bit messy. That said, this box does seem very useful and even plays the theme from Mario Brothers, as seen in  the video below.

Continue reading “Overengineering A USB Hub”

Software-Controlled Per-Port Power Switching For USB Hubs

[Befi] wanted to add a second stage backup disk to his ODROID embedded-board server, which typically draws ~1.5W at idle. After adding the disk, he saw power consumption increase by 2W when the new disk wasn’t spinning. He thought about using one of those USB hubs with the adorable little rocker switches for each port and replacing them with transistors, but that was going to be messy. After some poking around in the USB standard, he found that most support per-port power switching (PPPS), and set about to hack a USB hub to enable software-controlled per-port switching.

[Befi]’s NEC hub uses a uPD720112 chip which supports PPPS according to the datasheet. After tying the configuration pin labeled GANG_B to +3.3V, the hub declared itself PPPS-compatible. Of course, the manufacturer saved a penny or two by omitting the  individual switches, so [Befi] added an open-drain NMOS to each port. He is using this program to switch the port on and off and made the switching transparent with autofs. [Befi]’s current script has the bus ID and device ID of the hub hard-coded, but he intends to update it to find them automatically. This hack saves him 10W on average, which is about €30 ($40) per year.

If your hub is under powered, you could try adding an external power supply.

Pimp My Keyboard: Automatic Lift Kit And More

Cherry-keyboard-with-lifts

Wondering what the heck a lift kit is? You know those low-riding cars that bounce? That’s the idea with this hack. [Justblair] added automatic height adjustment to his Cherry G80, and hid a few other extras while he was at it. Since there’s a fair amount of room inside the case of this model he was able to hide everything and keep just a single cord to run it all.

Certainly what catches your eye is the keyboard’s ability to rise to a typing height automatically. This is accomplished with a few servo motors and some 3D printed replacement feet. There were some hiccups along the way with under-powered servos, but bulking up to some HXT 900 9G models provide more power than is currently necessary. The automatic feature is thanks to a capacitive sensor built with a wire that loops the perimeter of the keyboard.

Of course to monitor the sensor and drive the servos you need some kind of brain. For that [Justblair] went with an ATmega32U4 breakout board. Since he had to patch into USB for power anyway he added a USB hub and routed one of the ports out the left side of the keyboard as a convenient way to connect other peripherals. There was even room to include an RFID reader which he uses to unlock his sessions (similar to the desk install from earlier this year). There’s still a lot of potential left in that hardware. To make future improvements easier the hack includes an IDC socket as an auxiliary port.

[Justblair] did a great job of sharing his work. His post links to a Github repo for the code and a Thingiverse project for the 3D printed legs. And it wouldn’t be complete without the demo video which is found below.

Continue reading “Pimp My Keyboard: Automatic Lift Kit And More”

I/O Extender Board And Case For A Cheap WiFi Router

This 3d printed case houses the already small [TP-Link TL-WR703N] but also makes room for a custom expansion board. The expansion board is designed to make the device more hacker friendly, and who doesn’t need a nice case to hold it?

Since the router board already has a USB port (intended for use with USB 3G modems) the add-on acts as a USB hub. The stock USB connector is replaced by a pin header which mates with a DIL socket on the underside of the expansion board. Through the use of an FTDI chip the expander offers three USB ports and a 2×10 pin header to break out the GPIO pins from the router’s processor. Only two USB ports are visible in the image above. That’s because the third is recessed, and an opening has not been added to the enclosure. This struck us as odd until we read that the port is meant to be used with a low-profile thumb drive, essentially adding internal storage for the device.

[Thanks buZz]