Listening to a Smart Scale

scale

[Saulius] couldn’t find a cost-effective wireless scale that did what he wanted, so he reverse engineered the communication protocol for an off the shelf model to get weight data himself.

[Saulius] bought a cheap Maxim 29-66SH scale that uses infra-red to communicate to a detachable digital readout. Using the USB IR toy, [Saulius] intercepted the messages that were broadcast. After a little reverse engineering and with the help of some Python scripts, he soon discovered the protocol his scale was using to encode weight messages.

[Saulius] went on to write a little web app using JavaScript, SocketIO and Tornado, a light weight Python web server. By connecting to the tiny web server that’s interfaced with a Python script listening for the scales messages received from the USB IR toy, [Saulius] was able to see his weight displayed on his smart phone through a web browser.

Since all the communication is through IR, there is no need to do any invasion of the scale as the receiver can be placed anywhere in line of sight from the transmitter on the scale itself.

Check out the demo video for the whole thing in action. If patching into the scale isn’t hard enough, you should just build one from scratch.

[Read more...]

IR Theremin Speaks In Four Voices

infraredTheremin

At the end of every semester, we get a bunch of cool and well-documented student projects from Cornell’s ECE4760 class. [Scott] and [Alex]‘s infrared theremin is no exception.

The classic theremin design employs each of the player’s hands as the grounded plate of a variable capacitor in an LC circuit. For the pitch antenna, this circuit is part of the oscillator. For the volume antenna, the hand capacitor detunes another oscillator, changing the attenuation in the amplifier.

[Scott] and [Alex] put a twist on the theremin by using two IR sensors to control volume and pitch. The sensors compute the location of each hand and output a voltage inversely proportional to its distance from the hand. An ATMega1284P converts the signal to an 8-bit binary number for processing. They built four voices into it that are accessible through the push-button switch. The different voices are created with wave combinations and modulation effects. In addition to Classic Theremin, you can play in pure sine, sawtooth, and FM modulation.

If you’re just not that into microcontrollers, you could build this digital IR theremin instead. If you find IR theremins soulless or plebeian, try this theremincello.

[Read more...]

Tricked-out Arduino-controlled Time-Lapse is More Than Just a Timer

arduinoPhotoRig

[Hlesliebole] wanted a finer degree of remote control over his time-lapse shots, so he decided to build an Arduino-driven infrared shutter. He ended up creating this killer Arduino-controlled photography rig that does a whole lot more.

This hack was built for [Hlesliebole]‘s Nikon D3100, but he says it should work with any DSLR and remote shutter. This initial build uses an LED as a stand-in for the remote shutter that he ordered.  He intends to update the post once it arrives and he integrates it.

[Hlesliebole] wired a 7-segment display to show the current time delay between photos. This can be set on the fly with a potentiometer, so there’s no need to stop and reprogram the Arduino. And while you’re grabbing a beer and watching the sun slowly sink, the rig can better capture that sunset because of a photoresistor. It detects the ambient light level and minimizes the number of throwaway dark shots.

If that weren’t enough, he’s built servo functionality into the code to support remote control over the camera’s physical position, allowing for panning or rotation over a scene. [Hlesliebole] doesn’t go into detail, but he assures us that there are many tutorials out there.  If you think you’re man enough, you could always work in this outstanding versatile motion dolly hack.

[Read more...]

Raspi AC and Blinds Controller

raspiBlindsACController

[Chris's] bedroom has a unique setup with an air conditioning unit perched on the wall next to the top of the blinds that cover his window. Normally, to open the blinds he had to tug on a cord and operating the AC meant fiddling with a remote control. Not anymore. Now [Chris] has an all-in-one Raspberry Pi-based solution to drive both.

The build uses a stepper motor salvaged from a printer to directly drive the blinds, with a familiar-looking Easy Driver connecting it to the Pi. The motor spins the blinds’ mechanism either open or closed, though at a modest pace that’s slow enough to provide the needed torque. [Chris] added an IR diode plugged into the Pi that imitates the air conditioning unit’s remote control, and simply pointed it directly at the unit’s receiver. An inexpensive WiFi dongle gets the Pi onto the network, allowing [Chris] to interact via a custom web interface. The interface itself not only provides a couple of clickable buttons, but a cleverly-designed status image indicating the position of the blinds.

Make sure you see the video below for a demonstration and for more details on the build. This is one of the better examples of home automation devices we’ve seen recently, especially considering it actually fits the “autonomous” implications discussed in our Ask Hackaday post from a few months back—although a relatively simple automation, [Chris's] interface does allow for operating both the blinds and the AC on a preselected schedule.

[Read more...]

FlightDeck: A “Touchless” MIDI Controller

flightdeckmidi

[Edward] wanted a different way to modulate notes on his MIDI controller, so he decided to go touchless. Inspired by the pressure-sensing modulation on his Edirol keyboard, [Edward] aligned eight sensors into a row of playable notes and used infrared to sense the distance of a player’s hand from the keys. He also included some function buttons to cycle through 10 octaves and RGB LEDs beneath the table that perform alongside the music.

He chose SHARP GP2D120 sensors (direct link to datasheet) for their low threshold, which allowed the board to detect distance close to the sensor. Each is mounted onto a sheet of frosted acrylic along with its own “hold note” button and an LED to indicate the key is playing. The lower panel houses an Arduino Mega that drives the system along with an RGB LED strip and its driver board. [Edward] used Maxuino and OSC-Route to interface the Mega to a Max/MSP patch which runs the show.

Learn more about the FlightDeck’s features in a video demonstration of the controller and the software after the break, then check out some other MIDI hacks like this organ pedal or the Arduino-driven MIDI sequencer.

[Read more...]

Interactive Boozeshelf is its own Dance Party

boozeshelf

[Jeremy] refused to settle on your typical alcohol storage options, and instead created the Boozeshelf. Like most furniture hacks, the Boozeshelf began as a basic IKEA product, which [Jeremy] modified by cutting strips of wood to serve as wine glass holders and affixing the front end of a wine rack at the base to store bottles.

In its standard operating mode the Boozeshelf lies dark and dormant. Approaching it triggers a cleverly recessed ultrasonic sensor that gently illuminates some LEDs, revealing the shelf’s contents. When you walk away, then lights fade out. An Arduino Mega running [Jeremy's] custom LEDFader library drives the RGB LED strips, which he wired with some power MOSFETS to handle current demands.

[Jeremy] didn’t stop there, however, adding an additional IR receiver that allows him to select from three different RGB LED color modes: simple crossfading, individual shelf colors (saved to the on-board EEPROM), or the festive favorite: “Dance Party Mode.” Stick around after the break to see [Jeremy] in full aficionado attire demonstrating his Boozeshelf in a couple of videos. Considering blackouts are a likely result of enjoying this hack, we recommend these LED ice cubes for your safety.

[Read more...]

Learn to Translate IR Codes and Retransmit Using Arduino

EEVBlog IR transmitter

[Dave Jones] from EEVBlog.com takes “Arduino fan boys” off the garden path getting down and dirty with different methods to capture, evaluate and retransmit IR remote control codes. Capturing and reproducing IR remote control codes is nothing new, however, [Dave] carves his own roads and steers us around some “traps for young players” along the way.

[Dave] needed a countdown timer that could remotely start and stop recording on his Cannon video camera, which he did with simplicity in a previous EEVBlog post using a commercial learning remote control unit. The fans demanded better so he delivered with this excellent tutorial capturing IR codes on his oscilloscope from an IR decoder (yellow trace) as well as using an IR photo transistor (blue trace) which showed the code inclusive of 38 KHz carrier frequency. Either capture method could easily be used to examine the transmitted code. The second lesson learned from the captured waveforms was the type of code modulation being used. [Dave’s] remote transmitted NEC (Japanese) pulse length encoding — which can be assertaind by referencing the Infrared Remote Control Techniques (PDF). Knowing the encoding methodology it was trivial to manually translate the bits for later use in an Arduino transmitter sketch. We find it amazing how simple [Dave] makes the process seem, even choosing to write his own sketch to reproduce and transmit the IR codes and carrier instead of taking the easy road looking for existing libraries.

A real gem of knowledge in the video was when it didn’t work! We get to follow along as [Dave] stumbles before using a Saleae Logic analyzer to see that his transmitter was off frequency even though the math in his sketch seemed correct. Realizing the digital write routine was causing a slowdown he fudged his math to make the needed frequency correction. Sure, he could have removed the performance glitch by writing some custom port control but logic dictates using the fastest and simplest solution when hacking a one-off solution.

[Dave’s] video and links to source code after the break.

[Read more...]

Follow

Get every new post delivered to your Inbox.

Join 93,656 other followers