Disco Drinks Coaster




Although we live just outside Cambridge in the UK, my wife is tragically addicted to all things Las Vegas. It's been nearly six months since our last visit, and she is pining for bright lights and cocktails. Few things make a drink nicer than some coloured lights in the vicinity.

Ever alert to the causes of my wife's grumpiness, I decided to cheer her up by making an animated, brightly lit drinks coaster.

Here it is under a gin and tonic:

And here it is, glass-free, displaying a spinning galactic ice-cube.

The coaster can be driven from any PC with a serial port and will display any 10 by 10-pixel video you wish.

Step 1: Buy Some Parts

You will need:

30 1K 0805 resistors (R1 - R30)
30 MBTA42 NPN transistors (Q1 - Q30)
10 100 Ohm 0805 resistors (R31 - R40)
10 FMMT717 PNP transistors (Q31 - Q40)
5 74HC594 SOIC shift registers (IC1 - IC5)
4 100nF 1206 capacitors (C1 - C4)

and finally:

100 TB5-V120-FLUX-RGB8000 RGB LEDs (LED00 - LED99)

The LEDs can be hard to get hold of at a decent price; eBay is once again the friend of the penurious electrical engineer.

Step 2: Make and Assemble the PCB

Manufacture one or more PCBs using the attached Gerber and drill files. A double-sided PTH process is required, so it is probably best to use one of the various small-volume professional PCB manufacturers; I have found PCB Train in the UK to be fairly reliable.

Assemble the board, taking great care when soldering the surface mount components. I found this one to be right at the limit of my dexterity. Note that there are two different types of SOT-23 transistor, and two types of 0805 resistor on the board. Look at the bottom silk layer to see the component names (R23 etc) and use this to match against the parts list in step 1.

Once you're done, your circuitboard should look like this.

Step 3: Drive the Board

This is the tricky bit. You need to use something (probably a microcontroller) to drive the board in a way which generates an image. Attach power and data cables to the connector in the bottom right of the board. Seen from above, we number the six pins:

1 2 3
4 5 6

The corresponding signals are:

1. XVOLTS - drive voltage for LEDs. Connect to 4V current limited supply.
2. SERIAL_CLOCK - shift data from SERIAL_DATA on positive-going edge.
3. SERIAL_LATCH - latch 40 bits from shift register to LED control on positive-going edge.
4. GROUND - common ground.
5. 5VOLTS - supply voltage for control circuitry. Connect to 5V supply.
6. SERIAL_DATA - input data for shift register.

To scan the display, clock 10 4-bit numbers into the shift register. To clock in a bit:

- bring SERIAL_CLOCK low
- modify SERIAL_DATA
- bring SERIAL_CLOCK high

Once 40 bits have been clocked in, the SERIAL_LATCH signal can be brought high to transfer them to the LED control circuitry. Each 4 bit number selectively enables the red, green and blue LEDs in one row, and selectively disables all LEDs in one column. So if we clock in a string:

0011 0100 0111 ...

This sets all the LEDs in row 0 to blue, all the LEDs in row 1 to green and all the LEDS in row 2 to cyan (green + blue). It disables all the LEDs in columns 0 and 2. By rapidly clocking in various combinations of values (typically with only 1 of the 10 column-disable bits low), we can scan the array to build up an image, and use pulse-width modulation to give a range of apparent intensities.

The attached firmware can be used with an Atmel ATmega644 to generate the required signals in response to serial input from a PC or Mac.

Step 4: A Warning and a Tip

A couple of words of warning. Modern LEDs can be very bright indeed. You could probably hurt yourself pretty badly by dialling them up to full intensity and ignoring your look-away reflex, so don't. Also, when debugging your firmware it is easy to stall the scanning process and burn out the precious LEDs. Use a decent current-limited bench power supply, with the current dialled back to a few tens of milliamps to avoid this happening.



    • Pets Challenge

      Pets Challenge
    • Fandom Contest

      Fandom Contest
    • Backyard Contest

      Backyard Contest

    26 Discussions

    Well, the parts get cheaper all the time. There are Chinese guys on ebay selling factory-direct LEDs for a tenth what you'd pay from a western dealer. Not very well tested; if you look at the video you'll see I lost a few green dies and one blue die. LED projects are a lot of fun; just don't wear them to the airport :)


    11 years ago on Introduction

    How long would this run for before LEDs died? Also, how long you think it could run for on batteries (making it portable)?

    3 replies

    Reply 11 years ago on Introduction

    Well, I had a few dies die (heh) during development. Out of 300 dies, I lost about 4 greens and 1 blue. Those look like early-life failures due to a lack of factory testing; when you buy from some guy in Hong Kong via eBay, you take what you get. The design at present drives the LEDs hard (up to 100mA @ 10% duty cycle), which is within spec but won't help lifespan. With the modifications I've discussed elsewhere (using the 74HC to pull down) this drops to more like 10mA @ 10% duty cycle. I'd figure on a few thousand hours of continuous use before significant numbers of failures. With the modifications, you could get a nice display at 100mA average with a 3.5V supply, so say 10 hours out of a 3VAh pack. It sucks that the raw material cost for this scuppers it as a commercial product :(


    Reply 11 years ago on Introduction

    So it costs what, around $30 to make? Have you seen those flat honeycomb LED arrays? I found the link, but apparently the product is no longer available through that retailer. . . Would such a thing be of use to you, though?


    11 years ago on Introduction

    RE: "we live just outside Cambridge in the UK, my wife is tragically addicted to all things Las Vegas" How about stringing Chrissy lights off ELY Cathedral instead? As in letting her do it :P You can grab a pint on Silver St in Cambridge. Everyone is happy !! OK, I know, not funny... Whadda I know... I'm just a dumb skppy convict... Nice project. Thanks for sharing it with us. Sorry about your wife, mate. (...addicted to all things Las Vegas...) : P


    11 years ago on Introduction

    Is condensation a problem? I'd imagine that you'd want to pot the whole thing - or at least a conformal coat.


    11 years ago on Introduction

    Very nice indeed - I echo the comment that you should be selling these to Casinos for their bars. :) For people hopeless at electronic engineering, would you consider selling units of say 6 coasters?


    11 years ago on Introduction

    Maybe you oughta put tog kits & sell them, for noone would probably want to hunt down everything. It's too much work for me. I have 2 plastic glasses I got from our local flea mkt that does all this, with a push of the button on the bottom, which also stops it. I think yours would make nice Christmas gifts.

    ebenuptonpimpin M

    Reply 11 years ago on Introduction

    Glad you like it. Seeing all the feeback, I think I'll try for a simplified, portable version.


    Veeerry Niiiice... I could never do that, though I would shell out some serious money (10 US dollars for 1 coaster) for battery operated ones!

    Mr. Rig It

    11 years ago on Introduction

    You could sell that to Casino's in Vegas. Can you make it spell out Las Vegas and then make it flash?? Although if you did you might get attacked by your wife in a fit of gleeful love.

    1 reply
    ebenuptonMr. Rig It

    Reply 11 years ago on Introduction

    Shamefully, I've not actually run a scrolling message across it. I should get it out today and do that as it's very straightforward.