If you’re like us, you probably have more than one Apple Remote kicking around in a parts drawer, and if you’re even more like us, you’re probably really annoyed at Apple’s tendency to use proprietary hardware and software at every turn (lightning connector, anyone?). But there’s hope for the Apple Remote now: [Sourcery] has completed a project that allows an Apple Remote to control anything you wish.
The idea is fairly straightforward: A device interprets the IR signals from an Apple Remote, and then outputs another IR signal that can do something useful on a non-Apple product. [Sourcery] uses an Arduino to do the IR translation, along with a set of IR emitters and detectors, and now the Apple Remote can control anything, from stereos to TVs to anything you can imagine. It also doesn’t remove the Apple Remote’s capability to control Apple products, in case you need yours to do that as well.
[Sourcery] notes that sometimes working with RAW IR signals can be a little difficult, but the information on their project and in their 25-minute video discusses how to deal with that, so make sure to check that out after the break. Don’t have an Apple Remote? You can do a similar thing with a PS3 controller.
[AlxDroidDev] built himself a nice remote control box for CHDK-enabled cameras. If you haven’t heard of CHDK, it’s a pretty cool software modification for some Canon cameras. CHDK adds many new features to inexpensive cameras. In this case, [AlxDroidDev] is using a feature that allows the camera shutter to be activated via USB. CHDK can be run from the SD card, so no permanent modifications need to be made to the camera.
[AlxDroidDev’s] device runs off of an ATMega328p with Arduino. It operates from a 9V battery. The circuit contains an infrared receiver and also a Bluetooth module. This allows [AlxDroidDev] to control his camera using either method. The device interfaces to the camera using a standard USB connector and cable. It contains three LEDs, red, green, and blue. Each one indicates the status of a different function.
The Arduino uses Ken Shirrif’s IR Remote library to handle the infrared remote control functions. SoftwareSerial is used to connect to the Bluetooth module. The Arduino code has built-in functionality for both Canon and Nikon infrared remote controls. To control the camera via Bluetooth, [AlxDroidDev] built a custom Android application. The app can not only control the camera’s shutter, but it can also control the level of zoom.
Eschewing the store-bought solution, [Stefan] managed to build a TV remote out of an old calculator. The brains of the calculator were discarded and replaced with an MSP430, leaving only the button matrix and enclosure. Rather than look it up, he successfully mapped the matrix manually before getting stumped with the infrared code timings. Some research pointed him to a peculiarity with Samsung IR codes and with help from an open source remote control library he got it working.
When the range was too limited to satisfy him he added a booster circuit and an LED driver which he snapped off the top of an old remote; now it works from 30 feet away. Some electrical tape and hot glue later and it all fit back into the original case.
It cannot take photos or play Super Smash Brothers, but it does what a remote needs to do: browses channels in the guide, control volume, and turn the TV on or off. Considering that all this calculator was built to do was boring basic arithmetic, it is a procrastination-enabling upgrade.
[Darell] recently purchased a fancy new bathroom scale. Unlike an average bathroom scale, this one came with a wireless digital display. The user stands on the scale and the base unit transmits the weight measurement to the display using infrared signals. The idea is that you can place the display in front of your face instead of having to look down at your feet. [Darell] realized that his experience with infrared communication would likely enable him to hack this bathroom scale to automatically track his weight to a spreadsheet stored online.
[Darell] started by hooking up a 38khz infrared receiver unit to a logic analyzer. Then he recorded the one-way communication from the scale to the display. His experience told him that the scale was likely using pulse distance coding to encode the data. The scale would start each bit with a 500ms pulse. Then it would follow-up with either another 500ms pulse, or a 1000ms pulse. Each combination represented either a 1 or a 0. The problem was, [Darell] didn’t know which was which. He also wasn’t sure in which order the bits were being transmitted. He modified a software plugin for his logic analyzer to display 1’s and 0’s on top of the waveform. He then made several configurable options so he could try the various representations of the data.
Next it was time to generate some known data. He put increasing amounts of weight on the scale and recorded the resulting data along with the actual reading on the display. Then he tried various combinations of display settings until he got what appeared to be hexadecimal numbers increasing in size. Then by comparing values, he was able to determine what each of the five bytes represented. He was even able to reconstruct the checksum function used to generate the checksum byte.
Finally, [Darell] used a Raspberry Pi to hook the scale up to the cloud. He wrote a Python script to monitor an infrared receiver for the appropriate data. The script also verifies the checksum to ensure the data is not corrupted. [Darell] added a small LED light to indicate when the reading has been saved to the Google Docs spreadsheet, so he can be sure his weight is being recorded properly.
Sounds like [BoaSoft] had a broken Acer laptop on hand. Problem was the laptop can’t play over-the-air television (and similarly, a television can’t surf the net). The solution was to figure out how to utilized a TV tuner of unknown origin, combine that with the laptop and a computer monitor, then add back all the user interface you’d expect from an entertainment device.
The board shown in the first post of the thread is familiar to us. It seems to be based on the IgorPlug board which is a hack that goes waaaay back. This allows for the use of an IR media center remote and those input signals are easy to map to functions. The computer runs Windows Media Center which is already optimized for remote control but can use a wireless keyboard and mouse when more computer-centric functions are necessary.
With all on track the rest of the hack deals with hacking together a case. The laptop’s original body was ditched for some extended sides for the back of the monitor. [BoaSoft] did a great job of installing all the necessary ports in these extensions. Once in the kitchen everything is nice and neat and should stand the test of time.
My introduction to electronic manufacturing was as a production technician at Pennsylvania Scale Company in Leola PA in the early 1980’s. I learned that to work on what I wanted to work on I had to get my assigned duties done by noon or thereabouts. The most important lesson I had learned as a TV repairman, other than not to chew on the high voltage cable, was to use your eyes first. I would take a box of bad PCB’s that were essentially 6502 based computers that could count and weigh, and first go through inspecting them; usually the contents were reduced 50% right off by doing this. Then it was a race to identify and fix the remaining units and to keep my pace up I had to do my own desoldering.
It worked like this; you could set units aside with instructions and the production people would at some point go through changing components etc. for you or you could desolder yourself. I was pretty good at hand de-soldering 28 and 40 pin chips using a venerable Soldapulit manual solder sucker (as they were known). But to really cook I would wait for a moment when the production de-soldering machine was available. There was one simple rule for using the desoldering station: clean it when done! Failure to do so would result in your access to the station being suspended and then you might also incur the “wrath of production” which was not limited to your lunch bag being found frozen solid or your chair soaked in defluxing chemicals.
All of [Darcy]’s friends were making wheeled robots, so naturally, he had to make one too. His friends complicated theirs with h-bridges and casters for independent wheel maneuvering, but [Darcy] wanted something simpler. A couple of 9g servos later, the Rolly Bot was born.
Rolly Bot is self-balancing because of its low center of gravity. Should it hit a wall, the body will flip over, driving it back in the other direction. The BOM comes to a whopping $10, and that includes continuous rotation servos. It does not include the remote control capability he added later, or the cost of the CNC you would need to completely replicate this build. He even made a stand so he could test the wheels during programming.
[Darcy]’s code is on his site along with some pictures of another version someone else built. Watch Rolly Bot roll around after the jump.
How would you make this build even simpler? Tell us in the comments.