Picture of Starry Ceiling for Kids Bedroom
When my little girl was born I wanted to make her a special night light for in her room. I made her a ceiling light with twinkling stars. It is made up of a piece of custom wood with 100 LEDs mounted in it. An AVR AT90S8538 micro controller runs a bascom program that produces a random pattern on these 100 LEDs. The LEDs are connected in a 8x13 matrix and the processor scans this matrix so that only 1 light is on at a time. Persistance of vision makes it look like there are many stars on at any one time.
Remove these adsRemove these ads by Signing Up

Step 1: Make the Board

Picture of Make the Board
The LEDs are all mounted in a customwood board. I drilled 5 mm holes randomly over this board and pushed the LEDs through from the back. I then screwed some old round curtain rail tubes to the board to stop it from sagging when it is hanging from the ceiling.

The LEDs were wired up with the wire taken from lenghts of CAT5 network cable which was simply wire wound onto the LED legs and later soldered for a good connection. The hole in the middle is so that the room light mains cabling can come through. It is secured to the ceiling by a couple of screws around the origonal room light so that when removed there are no holes in the ceiling.

Step 2: The Controller

Picture of The Controller
The controller is based on a AT90S8535 AVR Micro controller.  It is mounted on a piece of strip board (vero board) and mounted on the back of the lightboard in a central location.  See the attached Eagle schematic .  You can work out how everything is connected on the PCB  from the photo below as well.  The Leds are connected in a large matrix.
stars.sch111 KB

Step 3: Program the controller

Program the controller using Bascom and a programming cable of your choice. If all is well, it should work like the video shown.
domdomgin3 years ago
what are the fuse settings..
gweeds (author)  domdomgin3 years ago
Oh, good question. About the only settings I ever change on my AVR's are "Disable JTAG" and I set them to Internal Oscillator 8MHz
can u give me the exact fuse bit setting low and high as i am using atmega8535.
Wash0ut3 years ago
Really love this idea. I would like to try it but I've never programmed a controller or anything else for that matter. I fancy myself clever enough to figure it out. The realm of electronics is not necessarily foreign to me. If someone can at least point me in the right direction as to what I need to research or what equipment I might need to purchase. It seems like the heavy lifting has already been done with the two files above. Where to go from here would be much appreciated. Thanks in advance!
gweeds (author)  Wash0ut3 years ago
If you have a look at under the AVR section you'll find some good info. you will need to download bascom to program the microcontroller and you'll also need to make a programmer. Do a google for STK-200 programmer. This is a parallel port driven programmer that is easily and cheaply made. In fact the simplest version only uses a couple of resistors.
Wash0ut gweeds3 years ago
That should be enough to get the ball rolling. Time for me to do some homework. Thanks Again!
krajan13 years ago
its the video which u shared it a fast forward verison or its normal...i think its very fast....
gweeds (author)  krajan13 years ago
The video is normal speed
domdomgin3 years ago
can i use atmega8535
gweeds (author)  domdomgin3 years ago
Yeah, I am pretty sure you can, they are pin for pin compatible. If not, it should be pretty straight forward to reconfigure the wiring to right ports.
wilgubeast3 years ago
What a lucky child.
i second that. lucky fella!