Dimming control for an Ikea solar desk lamp

[Frank] decided to augment his desk lamp’s features by adding dimming controls (translated). Since the light source is a triad of LEDs the best method of dimming their intensity is to use Pulse Width Modulation. That’s the method that he went with, and luckily the SUNNAN lamp from Ikea which he’s using as the donor for the project has just enough room to squeeze in the parts necessary for this hack.

You need two main bits to use PWM with a lamp like this; a microcontroller (or possibly a timer chip like the 555) and a transistor to protect that chip from the current necessary to run the LEDs at full brightness. [Frank] went with an ATtiny13 and a 2N2222 transistor, both quite common and very inexpensive (you can even pull the microcontroller from a light bulb if you know where to look). Two buttons were added to the top of the lamp base which allow for up and down controls. There’s even an SOS function which is triggered by pressing both buttons at the same time. [Frank’s] happy to show off the completed project in the clip after the break.

Continue reading “Dimming control for an Ikea solar desk lamp”

AVR HVSP on a tiny breadboard

AVR chips are convenient because you can program them in circuit at their operating voltage. That is, unless you screw up the fuse settings and they’ll no longer listen to an In System Programmer. If you find yourself facing this problem, just build this circuit on a breadboard and ‘unbrick’ by holding down the button.

The circuit seen above is a High Voltage Serial Programmer. This is one of two high voltage protocols used by AVR chips; HVSP is for chips that don’t have enough pins to use High Voltage Parallel Programming. This rendition uses a 12V power source, which is the level necessary for the high voltage method. A 7805 linear regulator joins the mix to provide operational voltage, along with one transistor, an ATtiny2313 to control the circuit, a four-digit 7-segment display for feedback, and one button for control.

Watch the video after the break to see an ATtiny13 programmed to disable the reset pin using a breadboarded programmer. That chip is then easily rescued, having been automatically recognized by using its device signature.

Continue reading “AVR HVSP on a tiny breadboard”

Add a shutoff timer to your bathroom fan

Adding this board (translated) to your bathroom fan will turn it into a smart device. It’s designed to automatically shut off the fan after it’s had some time to clear humidity from the room. It replaces the wall switch which normally controls these fans by converting the fan connection to always be connected to mains.  The board draws constant power to keep the ATtiny13 running via a half-wave rectification circuit. A single LED that rises from the center of the PCB lights up to signal that the fan is in operation, but it is also used as a light sensor, similar to the LED communications hack from a couple of days ago. When the lights go on in the bathroom the microcontroller will turn on the exhaust fan via a Triac. It will remain on until the light level in the bathroom drops.

There’s an interesting timing algorithm that delays the fan startup, and varies the amount of time it will stay on in the dark depending on how long the bathroom lights were on. This way, a longer shower (which will build up more humidity) will cause the fan to remain on for the base of five minutes, plus one minute longer for every two minutes the bathroom was in use. Pretty smart, and quite useful if your bathroom sees high traffic from several family members.

Part 2: Help me reverse engineer an LED light bulb

Almost a month ago I started trying to reverse engineer an inexpensive LED color changing light bulb. With your help I’ve mapped out the circuit, and taken control of the bulb. But there’s still a few mysteries in this little blinker. Join me after the break to see what I’ve done so far, peruse the schematic and source code, and to help solve the two remaining mysteries.

Continue reading “Part 2: Help me reverse engineer an LED light bulb”

Help me reverse engineer an LED light bulb

hack LED bulb

I went to the last monthly meeting of Sector 67, a hackerspace in Madison, WI. One of the things shown off was a color changing LED light bulb that Menards was clearing out for $1.99. Inside there’s two RGB LEDs controlled by an ATtiny13 and powered by an AC/DC buck converter. An ATtiny13 will run you around $1.25 by itself so this price is quite amazing. I grabbed a couple of these bulbs and set to work on them. Join me after the break to see what I’ve got so far.

Update: read a follow-up to this post.

Continue reading “Help me reverse engineer an LED light bulb”

Waking up with the (fake) sun

[Bogdan] has some trouble getting up in the morning. A blaring alarm will do the trick but that’s no way to start the day. To get him through the dark winter months he wanted to try a sunrise simulator. He patched into the alarm signal of his bedside clock, intercepting the command from the clock’s microprocessor and using it as an input for his own ATtiny13. From there, the tiny13 gradually brightens a 150W halogen lamp using a triac until his room is as bright as a July morning. A signal is then sent to the alarm clock’s audio amplifier to turn on the audible alarm. He’s got the system set for a 20-minute sunrise so it’s just a matter of programming his alarm 20-minutes early than the ‘I absolutely have to get out of bed now’ time.

Wireless garage door indicator

[Sixerdoodle’s] garage door indicator tells him if the door is open or closed. He was inspired by the hack from last September but wanted to make it wireless. The setup uses an RF transmitter/receiver pair from Sparkfun, each controlled by an ATtiny13 microcontroller. We found his battle with RF interference from other devices to be interesting. Working out those bugs made for a great learning experience.