Stirring Plate From USB Enclosure

[Loreno Minati] built his own stir plate out of a hard drive enclosure. It’s the exact same hack as the one we saw a few weeks ago. A magnet was glued to the center of a computer fan, which causes the magnetic capsule inside the beaker to spin. This creates a vortex, evenly mixing the liquid.

Using a hard drive enclosure is a brilliant idea. It’s designed to sit in plain sight so you get a very nice finished look. It’s also exactly the right size for the fan itself. A potentiometer mounted in the cap of the enclosure allows for variable speeds, and the DC barrel jack is being used for the power source. Now that we think of it, this may be the best use of an external HDD enclosure we’ve ever seen (even eclipsing its original purpose). Check out a video and image gallery of the project after the break.

We’ve categorized this as a beer hack since stir plates are often built by hobbyists for growing yeast starters used in home brewing.

Continue reading “Stirring Plate From USB Enclosure”

Writing Python Drivers For Input Devices

[Stealth] put together a post explaining how he writes drivers for input peripherals. He’s using Python which makes the process fairly painless (we’ll get to that in a minute) but the value of his post is in the explanation surrounding how to interpret the data. Once you know how the communications are coming in from a device you can write the driver using any language you want. [Stealth] wrote in to let us know about this post after reading the PlayStation 3 Sixaxis controller sniffing hack. He’s pretty much doing the same thing but the background information is much more bountiful.

There are a couple of prerequisites to the process. First, [Stealth] is working in a Linux environment. That’s not to say you couldn’t do this on another OS, but you’re going to need to do some research to find out how to tap into the data stream from the device. Secondly, the input you are working with must already be set up and working on the machine. That means if there isn’t any support at all for the peripheral (in this case a USB joystick) you’re not going to be able to sniff the commands. That being said, a short Python snippet is all you need to dump the raw data coming in from the device. With data in hand it’s time to do some pattern hunting. As you start to figure out the size and scope of the incoming packets you can try out your own code to make sure you’ve got it right. Check out the demo video after the break which features a joystick button mapper written in Python.

Continue reading “Writing Python Drivers For Input Devices”

The Basics Of Controlling An Arduino With PHP

You can easily add Internet-based control for your Arduino if it is close enough to your server to be connected via USB. This tutorial will give the basics you need to get it working.

The gist of this method involves a webpage that includes PHP elements. When one of those elements is manipulated, a command is sent via serial connection to the Arduino which then reacts based on what it received. This example uses an Ubuntu box that is running an Apache server. The Arduino sketch sets up the serial connection and then listens for incoming traffic. Whenever it receives a non-zero character an LED will blink. On the server side of things you’ll need to make sure that the system user that runs Apache (www-data) has permission to write to a serial port.

This base example may seem extremely simple, but there’s no end to what you can build on top of it. Different PHP events can be added to push new commands over the serial connection with matching test conditions added to the sketch.

[Thanks Jarryd]

Cellphone Charger Has A USB Port Forced Upon It

We still can’t figure out why a standard charging scheme hasn’t been developed for handheld devices (other than greed). Certainly we understand that many devices have different electrical needs as far as voltage and current are concerned, but we still long for the ability to use one charger for many different doodads. [Rupin] is trying to narrow down the number of dedicated chargers he uses by adding a USB charging port to his Nokia cellphone charger. Since the USB standard calls for regulated 5V a hack like this can often be done just by patching into the power output coming off of the voltage regulator in the plug housing of the device. [Rupin’s] charger had 5V printed on the case, but when he probed the output he found well over 8 volts. He added a 7805 linear regulator to get the stable output he needed, then cut a hole in the case to house the connector.

Since [Rupin] wants to use this as an iPod charger he couldn’t just let the two data lines float. Apple uses a specific charger verification scheme which requires some voltage dividers to get the device to start charging.

USB Man-in-the-middle Adapter

The module works as a pass through, providing access to data and power lines for a USB device. [BadWolf] built it in order to sniff out communications between peripherals and the Universal Serial Bus. For now it just provides access to the different signals, but we think there’s quite a bit of usefulness in that. First off, the power rail is mapped out to a jumper, making it dead simple to monitor the voltage stability or patch in a multimeter to get feedback on current consumption. But you can also see in the foreground that a pin socket makes it easy to tap into the board using jumper wires. We think it would be a great breadboard adapter for USB work that would continue being useful after you’ve populated your first PCB for the prototype.

[BadWolf] has other plans in store for it though. He wants to intercept and decipher the communications happening on the data lines. In the video after the break he mentions the possibility of using a Bus Pirate for this (we have our doubts about that) but plans to start his testing with an STM32 discovery kit. We can’t wait to see what he comes up with.

USB Dongle Hack Tethers DSLR Cameras At A Fraction Of The Price

wireless_usb_grip

[Neal] wanted to tether his DSLR to his computer, but he wasn’t about to fork out the $1,000 Nikon was asking for their wireless adapter. Instead, he opted to construct his own solution using two separate camera accessories which cost him less than $200 when finished.

The two components he purchased were a wireless USB transmitter/receiver pair and an external battery grip. The battery grip allows him to use a pair of batteries to power his camera, while providing just enough space to wedge in the USB transmitter. He stripped the casing off the transmitter and connected it to a mini USB plug that he wired into the battery grip. He then added a small voltage regulator to step down the Nikon battery voltage from 7.2v to the 5v required by the USB transmitter.

The battery grip and transmitter were then hooked directly into his camera using the weatherproof plug built into the grip. Once he powered on his camera, it was connected to the PC immediately.

It’s amazing how the simplest hacks can save incredible amounts of money.  Nice job!

Be sure to check out the video embedded below to see the wireless adapter in action.

Continue reading “USB Dongle Hack Tethers DSLR Cameras At A Fraction Of The Price”

All About PS3 SixAxis Controller USB Communications

[Austyn] is currently working on reverse engineering a PlayStation 3 SixAxis controller’s USB communications. You may be thinking that this has already been done but [Austyn] was unable to find useful source code so he’s started his own project called libopenaxis.

The process he used to sniff out USB communications makes for an interesting read. He utilized GlovePIE to get the USB request block for the controller. With that in hand he grabbed the Python script used in a DIY Kinect hacking tutorial to start dumping controller data. With each keypress the script reads out the full data packet, which is used to figure out how the data structures are organized.

The project has come as far as knowing all of the data types, but right now the purpose for the majority of those variables is unknown. Hopefully the blanks will be filled in over time. Two things are for sure; if you’re interested in writing Python code that can communicate with PS3 controllers this is a great source of info, and the Kinect hacking that was so fun to watch over the last few months is still bearing fruit.