Moodlamp

Friday, December 21st, 2007 at 1:17 am

My moodlamp

Here is my latest project: a simple moodlamp using a Prolight 3W RGB LED emitter. The LED itself comes on an aluminium star, but i needed to build a bigger cooler made out of an aluminium profile (usually used for rack mounting). I used two screws to fixate the LED on the aluminium sheet.

Without an additional cooler the LED will get very hot after a short while.

The electronics are very simple, an ATmega8 running at 20 MHz on breadboard. Three FETs to drive the emitters and three current limiting resistors. I first used a voltage regulator, but then i figured that the switch mode power outlet would already deliver enough current… but at a very poorly regulated voltage: I set it to 4,5 Volts and measured 5,6 Volts at the output, even under full load. Good thing i added a diode there to limit the voltage a bit so it doesn’t go higher than 5,5 Volt.

The source code is quite simple, it’s running through the HSV color space (not using V though, it’s always 1). You can adjust the speed the hue is increasing and you can adjust saturation using the two potentiometers.

Posted in Uncategorized
by Lupin

Lupi-Nixie

Wednesday, December 19th, 2007 at 2:39 am

Click for larger view 

This site shall be dedicated to my Lupi-Nixie clock. It uses russian IN-16 digit display tubes.

The clock uses a simple, but clever hardware/software design and is made mostly with SMT components.

Here is the ”feature”-list:

  • 6x Russian IN-14 Nixie tube
  • 2x Standard neon bulb (i got mine from RS Components)
  • ATmega16 microcontroller - the only “intelligent” IC on the board, other ICs are discrete or linear
  • Completely built with SMD technology parts (just a few parts are through hole)
  • DCF77 receiver module (the clock has no controls for setting the time - totally control-less design)

The ATmega decodes the DCF77 signal, keeps track of the time, controls the multiplexing of the Nixie tubes and regulates the high voltage power supply (voltage can be trimmed with an SMT trimmer pot).

  • Click here to see a video of the clock in action. Notice the fading effect, it got smooth transitions between displays.
  • Click here to download the latest firmware of the clock.
  • Click here for the parts list.
  • Click here for the eagle schematics and board layout. Two versions included (one extra slim and the other optimized for an ALUBOS casing)
  • Click here to view the schematics and here to view the board layout (just in case you don’t got EAGLE)

Still puzzled about where you need to click? Then click here.

The clock running (at daylight)

Posted in Uncategorized
by Lupin

“Lupi-Nixie” DCF77 clock finally finished!

Friday, August 31st, 2007 at 12:03 am

The last months i was partly working on a nixie clock design. The hardware itself is nothing special, but I think it’s a very fine piece of work (at least the electronics). The mechanics aren’t that good… but I guess that’s not possible to see from my crappy pictures.  I still want to get a new cam :-(

The name of the clock somehow shows my lack of creativity… :-/

Some infos about the clock:

- 6x IN-14 Nixie tube
- 2x Standard neon bulb
- ATmega16 microcontroller - the only “intelligent” IC on the board, all other ICs are discrete transistors and a linear regulator
- Completely built with SMD technology parts (just a few parts are through hole)
- DCF77 receiver module (the clock has no controls for setting the time)

Problems with the clock is the aluminium casing. It looks very nice, but it reduces the quality of reception… Maybe it’s a good idea to put the receiver outside of the clock in a plastic casing - but I want the clock to be 1 unit.

I will set up a seperate site for the clock once I have better pictures and the firmware is in a state that’s worth to be released (until now a few parts are missing, like smooth transitions between the numbers). The circuit is really simple, it’s an extremely cheap and simple design, but building the clock is a little bit complicated because of the small SMT components.

The ATmega decodes the DCF77 signal, keeps track of the time, controls the multiplexing of the Nixie tubes and regulates the high voltage power supply (voltage can be trimmed with an SMT trimmer pot).

Here is the finished clock in operation:

High quality picture of clock

Finished nixie clock in operation

Finished nixie clock in operation

Here again:
Finished nixie clock in operation

The clock without the casing…
Naked nixie clock in operation

Posted in Uncategorized
by Lupin

Beer battery powered nixie SMPS

Tuesday, May 1st, 2007 at 11:48 am

Teh beer battery

Innovative beer battery extends battery life in handheld application!

High voltage!

It works! ZOMG!

Posted in Uncategorized
by Lupin

Using the PM as a thermometer

Sunday, January 14th, 2007 at 5:40 pm

I wired up a DS1621 digital thermometer IC to the PM. With this IC it’s possible to measure the temperature very easily.

I communicate with the sensor using the same I²C bus functions as for EEPROM access (just one small additional function). The sensor outputs the temperature as 9 bits of data.

The black thingie in front is the sensor
The black IC in front is wired to the PM using magnet wire.

My cheap clock/thermometer agrees with the DS1621
My cheap clock/thermometer agrees with the DS1621.

Included in the zip file are instructions to wire up the sensor to the PM, so you can add a temperature sensor to your PM too (and read the temperature if you’ve got a flashcart :)).

Posted in Uncategorized
by Lupin

I2C functions for PM

Saturday, January 13th, 2007 at 11:18 pm

I wrote some I²C functions for the PM, they can be used to access the savestate EEPROM. The functions should be quite easy to use. I uploaded a sample of writing a few bytes to the EEPROM and reading them back. You can find it in the PM section.

PlayerOne discovered how to read from the EEPROM, the website of the Embedded Systems Academy had some useful informations to implement the functions like it’s specified by the I²C protocol.

Download the example.

Posted in Uncategorized
by Lupin

Still alive

Wednesday, November 15th, 2006 at 2:03 pm

Heya….

I am still alive, just having a busy time at the moment. I will probably get back to Pokemon Mini and my MP3 player soon. The player is already built (using the flat iron for soldering :)) and looks good, but so far I did not have time to connect to the ARM (with JTAG). I guess I will take some pics of it before I blow it up.

The reason for my absence is that I started working as an apprentice in an electronics company, it’s quite some interesting work here but taking most of my time.

Expect something new here, very soon :)

Oh yeah… I am so going to start working on Zelda Mini :)

Posted in Uncategorized
by Lupin

New PM CPU!

Sunday, June 25th, 2006 at 4:06 am

I wrote a few macros for DarkFaders assembler that allow to use unlimited (almost :)) 16 bit registers without any limitations!

This set of macros provide the easiest way to code for PM without any restrictions! The program flow instructions aren’t complete yet, but i wrote an example that shows how easy the instructions are to use!

See for yourself how easy PM coding can get:
Stack CPU example 1

Posted in Uncategorized
by Lupin

MP3 player project

Sunday, June 4th, 2006 at 1:54 am

Today i have ordered most of the parts to build my MP3 player, only the special crystal is hard to get and it will take a while until i find someone who can order it from DigiKey (i can test without it anyways).

Current status of the player can be seen in these images:
http://lupin.shizzle.it/images/lump3_brd.jpg
http://lupin.shizzle.it/images/lump3_sch.jpg

Board size is 3,5×5 cm. The controller does the decoding and should work at 48 MHz (55 MHz is max). RS-MMC is the storage media of choice for this player because of its small physical dimensions. The input will be done with a 4 way + 1 button mini joystick!

I can’t wait to get this thing running! (if it works at all :))

Currently i only have the power management ICs, RS-MMC card slot, DAC and ARM microcontroller here.

Posted in Uncategorized
by Lupin

Ohh noez! More LEDs!

Thursday, May 18th, 2006 at 9:56 pm

Lately i found some cheap LED modules at a german electronics junkdealer. They have some really nice stuff (mostly optoelectronics). The most of it looks like the left-overs of industrial production that is not needed any more, but most times it’s just B-class ware.

Okay, so i bought five LED modules for <2 euros and built this thingie - a radio controlled LED matrix clock! Woot! :-)

The most expensive part was the DCF77 receiver module (antenna+a little receiver PCB), it cost me about 12 euro which is pretty much for such a small module. DCF77 is the standard longwave time signal in germany used in most (all) radio controlled clocks.

I used an ATmega8 microcontroller to control the LED matrix and decode the output of the DCF77 module. The matrix itself is controlled by using latch registers and UDN2981 as a source driver to drive the rows and ULN2804A to drive the columns (it’s a darlington array). The row driver gets a little warm after a while, but it’s okay (I am planning to add another LED module anyways, so it is going to get even more warm).

Okay enough blah blah, here are some photos and a video of it in action, click on the image to view it in full size (warning: the images are very, very high resolution :))

The back of my DCF matrix clock
I am especially proud of the way i run the databus over the latch registers. The latch registers (and the driver ICs which fit directly to the output pins of the latches) are below the stripboard in the middle. Before soldering the stripboard there i wired everything up to the LED modules by using magnet wire (the one used for winding coils). Doing it this way kept the “wire wraping” to a minimum and i didn’t end up in a mess of wires :-)

The little crystal you see on the microcontroller is taken off a Pokémon Mini <3, it turned out to be a standard 32kHz clock frequency crystal used for the RTC of the PM. On the right side you can see a potentiometer to control the linear regulator, this way the operating voltage of the whole circuit can be adjusted to the right value and it is possible to dim the LEDs (just a little bit until the whole thing turns off :P).

Maybe you ask yourself where i put the resistors for the LEDs because you think that all LEDs need series resistors. Well, the answer is that i didn’t use them, mainly because i am lazy and secondly because they take too much board space. If you tune the voltage of the circuit right the LEDs will operate with something about 1,8-2,0 Volts because the driver ICs reduce the voltage (i don’t exactly know by what amount).

This way the voltage is high enough for the rest of the circuit but low enough to drive the LEDs with about 20mA power consumption (higher voltages would destroy the LEDs or shorten their lifetime). I was told it would not work this way, but apparently it does :-)

The front of my DCF matrix clock
The front of the module, here you can see the matrix modules. The edges of the PCB will be cut off and i will add another PCB on the right side to hold another matrix module.

One of the most annoying problems I encountered was the interference created by the rest of my circuit, it turned out the multiplexed LED matrix creates a high noise (i think it’s called ripple) in the supply voltage of the receiver module and the receiver won’t work while the LED matrix is multiplexed at high frequencies. I had to add various capacitors to the DCF77 receiver module to get it to operate more stable while the LED matrix is on. I ended up with 100nF, 47nF and 100nF capacitors and one 499 Ohms resistor used as an RC circuit. This way the module is supplied with a stable and clean voltage.

The movie shows the clock in action displaying correct informations (Xvid)

Special thanks go to Tsukasa for taking the photos and movie. Finally some high quality pics on my blog and not these blur mobile cam pics ;-)

Posted in Uncategorized
by Lupin