loading

Wise Clock 3 - Arduino-based geeky alarm clock

Featured
Picture of Wise Clock 3 - Arduino-based geeky alarm clock
wc3_date.JPG
wc3_big.JPG
wc3_pong.JPG
wc3_quote.JPG
pacman.JPG
Wise Clock 3 is an open-source, highly hackable geeky clock that shows a lot more than the time. Its main function is to display user-editable quotations retrieved from an SD card (like those used in photo cameras).

In addition, Wise Clock 3 can show the time in "Pong" mode or "Pacman" mode. It can also display the date, including the day of the week and the temperature.

Another catchy function is to show a personalized message (e.g. "Happy birthday"). Wise Clock 3 can be also used as an alarm clock, as a scoreboard or as a countdown timer. To see the other features, please check out the "User manual", the last step of this instructable.


Updated Sep 5, 2011
Convert Wise Clock 3 to Night and day clock as described here.


The clock is shown in action here:



Some technical details:

- based on ATmega644P microcontroller;
- open source, published, software and hardware;
- user-programmable through a 6-pin FTDI cable (or breakout);
- uses extremely accurate (+/- 2 minutes per year), temperature-compensated, real time clock chip DS3231;
- multi-color (red, green, orange) display with 32x16 LEDs;
- compatible and programmable with the Arduino IDE.

Wise Clock 3 can be purchased as a complete kit, here .
 
Remove these adsRemove these ads by Signing Up

Step 1: The Wise Clock 3 kit - parts list

Picture of The Wise Clock 3 kit - parts list
wiseclock3_kit.JPG
The complete Wise Clock 3 kit includes (as shown in the photo 1):

- a set of electronic components (see list below) and the PCB;
- the 3216 bi-color LED display from Sure Electronics;
- a pair of laser-cut transparent or smoky plexiglass plates;
- a set of hardware parts (standoffs, nuts, screws, washers).

Photo 2 shows the electronic components of the kit. They are:
- PCB;
- ATmega644P controller with Arduino bootloader (also programmed with the latest version of the software);
- DS3231 real-time-clock (pre-soldered to the board);
- SD card socket (pre-soldered to the board);
- 40-pin socket for the controller;
- 16MHz crystal and 2 capacitors 22pF;
- CR1220 backup battery for RTC;
- holder for the coin battery;
- miniB USB connector;
- 3V3 voltage regulator;
- piezoelectric buzzer;
- 9 resistors 10K;
- 3 resistors 4K7;
- resistor 100 ohms (optional);
- blue LED (optional) - power indicator;
- 4 right-angle micro push buttons;
- 6-pin right-angle male header (FTDI connector);
- 2 x 16-pin female headers (display connectors);
- 3 decoupling capacitors 100nF.



Step 2: Hardware - schematic and board

Picture of Hardware - schematic and board
wiseclock3brd.JPG
Images of the schematic and the board are shown below.

The Eagle files can be downloaded from here: schematic , board .

The Wise Clock 3 board was designed to plug directly into the 3216 bi-color 3mm LED display from Sure Electronics . Therefore, there is no need for cables/wires when  connecting the board to the display.

Note: The Wise Clock 3 board can connect and drive more than one display, as shown and explained here .

The PCB has a small prototyping area that can be used to add components for future expansions, like photo resistor for automatic light dimming of the display, infrared receiver to control the clock remotely, tilt switch etc. Of course, all these new sensors will have to be supported in the software as well.

The clock function is performed by the on-board RTC (real-time-clock) chip DS3231. This is far superior to (and more expensive than) DS1307, since it has a deviation of only +/-2 minutes per year, at most. The accurate time is kept even when the clock is not powered, due to the on-board backup battery.

Step 3: Soldering Wise Clock 3 components

The Wise Clock 3 PCB comes with the SD card socket and the RTC chip already soldered, and looks like in photo 1.

To assemble the board, follow this process:

1. Place and solder the miniB USB connector; actually, since this connector is only used for power, only the two extreme pins (1 and 4) must be soldered; the middle two can be left untouched. Make sure the connector is solidly anchored to the board through the 4 lateral holding pads; there will be lots of mechanical tension when the power cable is plugged/unplugged.

2. Solder the 100 ohm resistor (brown black brown), indicated on the PCB as R14, then the LED, paying attention to its orientation. The shorter pin, the cathode, goes into the left (as you look at the PCB as in photo 2 below) hole. At this point, by plugging in the power cable, the LED should light up (photo 3).

3. Solder resistors R5, R6, and R7, all 4K7 (yellow purple black brown brown), as shown in photo 4.

4. Solder the rest of the resistors, all 10K, as shown in photo 5 below.
Note that there are 9 resistors of 10K value (brown black orange): R1, R2, R3, R4, R9, R10, R11, R12, R13.

5. Solder the 40-pin socket, then the battery holder and the 4 buttons, as shown in photo 6.

6. Solder the 3 decoupling capacitors (100nF, labeled "104"): C3, C5, C8. Then continue with soldering the two smaller ones C1, C2 (both 22pF), as shown in photo 7.

7. Insert the crystal (the small, metallic, oval cylinder, with 2 pins, labelled "16.000" on its top) in its position on the left side of the microcontroller socket, indicated by an oval (see the above image). Orientation is not important for the crystal.
Then insert the 3V3 voltage regulator (black, 3-pinned, semi-cylindric part labeled "L78L33ACZ") as indicated on the silkscreen by the half-cylinder on the right side of the microcontroller socket (its orientation is very important), then solder in place.
Next solder the 6-pin male header, and then the piezoelectric buzzer (its orientation is not important).
Look at the last picture (photo 9) of the final assembled board before soldering, to make sure you have these parts placed correctly.

8. (Photo 8) Insert the two 16-pin female headers on the back of the board (opposite to the parts side) and solder them on the top (parts) side.
To get the best alignment possible on these headers, insert the 16-pin headers into their sockets (in the display), then solder the board on top. (This is similar to the way the male headers are soldered on an Arduino-shield.)

9. It is time to add now the preprogrammed ATmega644P microcontroller. Before inserting it in the socket, slightly bend both sets of its pins on a table, so that they become parallel. Position the chip carefully on top of the socket, paying attention to its orientation: pin 1, marked with an arrow (triangle), must be close to the upper side of the board. Push the chip firmly into the socket.
Next insert the coin battery in the battery holder.

The assembled board should look like in the last picture (photo 9) below.



Step 4: Mechanical assembly - attach display and enclosure

Picture of Mechanical assembly - attach display and enclosure
wc3indisplay.JPG
wc3plugged.JPG
PlateWC3_dimensions.jpg
wc3_static.JPG
The Wise Clock 3 PCB was designed to be plugged directly into the 3216 3mm LED display from Sure Electronics. But it can be also used with the 5mm version of the display, by using the provided 16-wire ribbon cable.

To plug the board into the display, gently push the board into the connectors, after you properly aligned them (photo 3).
Next step is to attach the simple enclosure, which is made of a pair of plexiglass plates, either 3mm smoky or 4mm clear, with the dimensions shown in photo 4. The DXF file, used for laser-cutting, is available for download here .

The 2 plates are directly attached to the display, with the standoffs in the four corners. (The board fits snugly between the display and the back plate and does not need any other attachment or screw.) The longer standoffs go in the back of the display, and are screwed into the shorter standoffs placed in the front of the display. Note that the 4 washers provided are to be placed on the back of the display, between the standoffs and the display's board, essentially extending the longer standoffs.

The final assembly looks like in the last picture (photo 5).

Step 5: (Optional) Wise Clock 3 software - setup, compiling, uploading

Picture of (Optional) Wise Clock 3 software - setup, compiling, uploading
arduino21.JPG
wc3_ftdi.JPG
wiseclock3files.JPG
Tone.JPG
The ATmega644P microcontroller coming with the Wise Clock 3 kit is already programmed with the latest release of the Wise Clock 3 software, which is available for download here .
But, sooner or later, you will want to upgrade the software.
This process requires the following prerequisites:
- installation of the Sanguino-related files (since Wise Clock 3 is compatible with Sanguino, a variant of Arduino);
- connection to the board, through the FTDI cable/breakout.

To install the Sanguino files, follow the instructions found here . Basically, you need to do two things:

- add the definition of the Sanguino board to the file arduino22/hardware/arduino/boards.txt;
- create the folder "sanguino" and copy the Sanguino files, as shown in the photo 1.

After these two steps are completed, you should see "Sanguino" listed in the menu "Tools/Board" of Arduino IDE (as shown in photo 2).

To upload the sketch, you will need to connect the board to the PC/Mac with an FTDI cable/breakout. The USB end of this cable gets plugged into the PC/Mac, the FTDI end gets connected to the Wise Clock 3 board as shown in photo 3 below.

With both the software and hardware in place, the upgrade will consist in the following steps:
- download the latest software on the PC;
- launch Arduino IDE and load the sketch;
- compile, using Sanguino as the target board;
- upload to the Wise Clock 3 board.

Unziping the source code (found here ) should result in a directory structure as shown in photo 4 below.

If you get compilation errors related to "tone.cpp" file, like the following,

...\ArduinoIDE\libraries\WiseClock3\Sound.cpp: In function 'void soundAlarm()':
...\ArduinoIDE\libraries\WiseClock3\Sound.cpp:60: error: 'tone' was not declared in this scope
...\ArduinoIDE\libraries\WiseClock3\Sound.cpp: In function 'void beep()':
...\ArduinoIDE\libraries\WiseClock3\Sound.cpp:75: error: 'tone' was not declared in this scope

make sure the file Tone.cpp is present in the "sanguino" folder, as shown in the last screenshot (photo 5).


Step 6: Prepare the SD card

Picture of Prepare the SD card
format.JPG
Wise Clock 3  displays quotations retrieved from a text file stored on the SD card (photo 1). The name of this file is "quotes.txt" and is part of the zip file containing the software (download from here ). It can also be created from scratch, as a ASCII text file, to include one's favorite quotations, in the desired sequence.

The only restriction (in the software) is the length of the line, which should not exceed 180 characters.

Lines are separated with CR/LF (carriage return/line feed, or ASCII codes 13/10).

The SD card must be formatted as FAT (also known as FAT16). This can be done in Windows, by selecting "Format" in File Explorer, which displays the dialog box shown in photo 2.
Note: The maximum capacity that FAT16 can handle is 2GB.

Another important file on the SD card is "time.txt", which can be used for setting up the clock.
"Time.txt" file contains a line like this:

12:22:45Z2009-11-14-6

which should to be modified to reflect the current time and date.

When the clock is powered (with the SD card inserted), the time and date read from this line will be set in the real time clock as the current time and date, respectively. After the clock is (automatically) set on power-on, the file "time.txt" is marked as deleted, so that next time the clock is powered the file is not found.

Step 7: Power it up and get wiser :)

Picture of Power it up and get wiser :)
Insert the SD card you prepared in the previous step. Then plug in the miniB USB cable, used in this case only for powering the clock (no data is transmitted through the USB between the computer and the clock).

Now power the clock from an USB port, either a computer or an USB power adapter, like the one pictured below (which is an iPod power adapter, available on ebay for about $5). If you buy such a power adapter on ebay, make sure it outputs a maximum 5.3V (measure with a voltmeter). I personally found defective ones, providing way more than the expected 5V. You don't want to fry your brand new Wise Clock 3 with a faulty power source.

Once powered, Wise Clock 3 should start scrolling quotation from the SD card on the top half of the screen, and displaying the time on the bottom half.

If the SD card is defective of cannot be read for any reason, the error message "Failed to read quotes.txt file from the SD card" is shown. In this case, try another SD card, or make sure the one you are already using is formatted as FAT16 and has the right files on it. DO NOT overwrite the files by copying them once again to the SD card. This process adds some complexity to the file allocation table that the SD library I am currently using (SDuFAT) is not able to deal with. If you need to copy the files onto the SD card again, re-format the SD card, THEN copy the files.

Note: Even when the SD card is not present (or defective), the "Pacman" and "Pong" modes should work just fine. The SD card is mainly used in "Quotes" mode.

After powering the clock, the time may be shown as "0:00". In this case, the next step is to set up the time. This is easily done from the buttons (as described in the "User manual" step of this instructable). Same applies to the date and day-of-week.

The quotations from the SD card are displayed as they are sequentially read from the quotes.txt file on the SD card. With the current Wise Clock 3 software, every time you reset (or disconnect and re-connect the power), the quotations will start from the beginning of that file.

Step 8: Wise Clock 3 - User manual

Wise Clock 3 has 3 buttons, named (in the silkscreen on the board) "Menu", "Set" and "Plus". The "Menu" button is the rightmost one as you face the clock, "Set" is the middle button.

By pressing the "Menu" button, the menu options are shown at the top of the screen, in sequence. A menu option is selected by pressing the "Set" button. Some of the menu options (e.g. "Time", "Date") allow the user to set values, for example the time, the date etc. To increment these values, the user presses button "Plus".


1. Set up the time
 - press "Menu" repeatedly until the option "TIME" is shown;
 - press "Set": now, one of either hours or minutes will start blinking;
 - press "Plus" to increment the blinking value; for hours, next value after 23 is 0; for minutes, next value after 59 is 0;
 - to change between setting (blinking) hours and minutes, press "Set";
 - after the desired time is set (values for hours and minutes are on display), wait about 4 seconds for the blinking to end; this is the time now stored by the clock.
Note: The value for seconds is always set to 0 every time the value for hours or minutes is incremented.


2. Set up the date
 - press "Menu" repeatedly until the option "DATE" is shown;
 - press "Set": the top part of the display will show "Y M D", and the bottom part will show the date, in the format "YYMMDD" (year/month/day);
 - press "Plus" to increment the blinking value; for years, next value after 50 is 0; for months, next value after 12 is 1; for days, next value after 31 is 1;
 - to change between setting (blinking) year, month and day, press "Set";
 - after the desired date is set (values for year, month and day are on display), wait about 4 seconds for the blinking to end; this is the date now stored by the clock.


3. Set up the day-of-week
 - press "Menu" repeatedly until the option "DAY" is shown;
 - press "Set": now the bottom half of the display will show the first three letters of the day of the week (e.g. Mon, Tue etc);
 - press "Plus" to increment the day;
 - after the desired day is reached (shown on display), wait about 4 seconds and the "DAY" option will be exit automatically; this is the day now stored by the clock.


4. Set display brightness
Every time the "Set" button is pressed in one of the main display modes ("Quotes", "Pong", "Pacman", "Big"), the brightness of the LEDs increases one level (out of 5 levels); next after the highest brightness level is the lowest level.


5. Set quote scrolling speed
To increase the speed of the scrolling, press the "Plus" button when in the mode "Quote". There are 5 speeds. Next after the highest speed comes the slowest.


6. Display modes
Changing the display modes is done by pressing the "Menu" button, then selecting the mode shown by pressing the button "Set".
The main mode is "Quote", which displays scrolling quotations, read from SD card, on the half top of the screen.

Other modes are:
 - "Pacman" - Pacman passes by every minute;
 - "Pong" - as in the old-days tennis game console; hours and minutes are displayed on both sides of the net, at the top of the screen, and change when a player "loses", every minute, of course;
 - "Big" - hours, minutes and seconds are displayed on the whole screen, in may different fonts;
 - UTC (universal time), useful for radio amateurs;
 - "Score" - allows keeping the game's score between two players, between 0 and 99.


7. Clock settings (options)
 Beside the current time, Wise Clock 3 can also display:
 - current date, formatted as "Month Day, Year"; this setting is enabled/disabled through the "DT+"/"DT-" menu options. 
- temperature, in both Celsius and Fahrenheit; this setting is enabled/disabled through the "TEMP+"/"TEMP-" menu options.
- a personalized, user-editable message, read from SD card (e.g. "Happy Birthday dear John"); this setting is enabled/disabled through the "MESG+"/"MESG-" menu options.
- reminders for special events (anniversaries, Christmas etc), also user-editable on SD card; this setting is enabled/disabled through the "REMI+"/"REMI-" menu options.
- hours as maximum 12 or 24; this setting is enabled/disabled through the "24H+"/"24H-" menu options;
- enable/disable chime (short beep at the bottom of the hour, double beep at the top of the hour), by selecting "CHME+"/"CHME-" respectively.

Note: Menu will no longer show entries which do not make sense, like "DATE+" when the Date is already on.


8. Set up the alarm time
Alarm time can set through the menu option "ALARM". Press "Menu" button until you reach this option, then press "Set". From here on, the process is the same as setting up the time (point 2 above).

When alarm time is set and the alarm is active/enabled, the hours and minutes are separated by a colon, e.g. 15:43. If the alarm is disabled, a dot is used to separate the two, e.g. 15.43.

Another alarm-related feature: 3 hours before the alarm goes off, the time is displayed in orange, 2 hours before the alarm goes off in red; otherwise, time is displayed in green.


9. Enable/disable the alarm
The alarm is activated (will sound) only if the alarm is enabled. Enable/disable the alarm by selecting the "AL+"/"AL-" menu option.

When the alarm goes off, the clock plays "Frere Jacques", followed by a siren. The alarm can be stopped (silenced) by pressing any button.


10. Displaying reminders
At startup and at midnight the "message.txt" file is scanned for any reminder for that new day. An orange dot is displayed at the bottom during this scan. If a reminder is found then it will be displayed, like the quotes, for the next 24 hours.
The message file may also contain the start and end date of the Daylight Saving Time period (DST), this will adjust the clock by 1 hour.
The personal Message is still contained in this message file but must now start with [M1] which will allow for more then 1 Personal Message in a future release.
See message.txt for more details and add your own reminders.


alexflav9 months ago

Can the clock be set to static? So it always displays a certain time?

florinc (author)  alexflav9 months ago
I'm not sure I understand what you mean by static. Same time always, regardless of the time?

In any case, if the feature is not already implemented, I can do ("customize") it for you. Since this instructable was published, I added quite a few more features, including double face, RF remote control, bluetooth etc.

For latest updates, check out my blog: http://timewitharduino.blogspot.ca/
alexflav florinc9 months ago

Yes, the same time always. In effect not the time but a static number in the format of time.

For example 11:22 would be the display number forever. Is this possible?

florinc (author)  alexflav9 months ago

Yes, very possible and quite easy.

Just need to call the function

void displayStaticLine(char* text, int8_t y, byte color);

(in ht1632.h + cpp).

florinc (author) 1 year ago
AWESOME!!!!!!! I like clocks that have many different features! Plus, I collect them.
smorad3 years ago
hye.. can u help me with my project. i think i have a problem about my project. currently i'm doing digital alarm clock with 5 time set. but it seem really complicated for the circuit. i need to use many decoder, latch and buffer.i'm grateful if u can help me.. i dont know how to make it simple. before this i'm using Easy68k but now i want to try using PIC. can anyone help about the schematic first.. here is some document that can make u understand what i mean.
florinc (author)  smorad3 years ago
Sorry man, I never used PIC, so I cannot help you.
I would suggest you pick an Arduino-based schematic (for an alarm clock) that is tested and works, then program it to your needs. You will get great help in the arduino.cc forum.
som4dipa3 years ago
120 $ , Yes it's a bit costly.
However what will be the extra cost to ship it to INDIA ?

Somnath
Email: somnathkolkata@hotmail.com
Love this!
rbyrer3 years ago
I just finished putting the clock 3 together. It won't read the sd card. I know you said it should be formatted fat 16. The only format I have to use is fat 32, which I used. First of all, is this a problem, If so how do I get fat 16 formatting.
rbyrer rbyrer3 years ago
OK, I was using a 4GB SD card. I bought a 2GB SD card- formatted it FAT, not FAT32, put the files on it,( http://wiseclock2.googlecode.com/files/WiseClock3_June2011.rar) A total of 40 files and 3 folders- about 507KB. This made no difference. I included this information in case I am doing something wrong and just keep doing the same wrong thing over and over. Help please!
florinc (author)  rbyrer3 years ago
40 files and 3 folders???
You only need to copy 3 files at the root. These 3 files (message.txt, quotes.txt, time.txt) are found in the folder "copyToSDcard" in the zip file you mentioned.
Please re-format the SD card before you copy the 3 files.

rbyrer florinc3 years ago
Yes the other parts of the clock work fine, the clock, pacman etc. I couldn't access the software file you spoke of. My chip has a piece of tape with a 3 written on if that tells you anything
florinc (author)  rbyrer3 years ago
OK, this means that you have the June2011 software release, the one you were looking at.
If it is not an SD related issue (can you read the SD cards on a PC?), I would try to make sure, with a multimeter, that all lines from processor to the SD card are intact.
(Schematic is here: http://timewitharduino.blogspot.com/2011/01/introducing-wise-clock-3.html)
Also, does the voltage regulator output 3V3?
Another very important question: did you place the 4k7 resistors in the right places (R5, R6, R7, as shown in the photos in this instructible)? Take out the processor from the socket and measure their values, making sure they are 4K7.
As I said before, you can email me directly ( s o m e o n e at c i f o dot c o m)
rbyrer florinc3 years ago
I check the resistors and the 3volts to the SD card and they are correct, at least I think they are correct. The pins on the SD card appear to be offset by one unless the first pin on the SD card is called zero. The second pin on the SD goes to a 4.7k to pin 5 on the Atmega , the third pin goes to a 4.7k to pin 6 on the Atmega, the fourth pin goes to gnd, the fifth pin goes to vcc, etc. If the SD card holder was put on wrong that could be the problem. Let me know your thoughts. I tried emailing you at the someone@cifo.com and it didn't work.
florinc (author)  rbyrer3 years ago
The pins on the SD socket are indeed shifted by one, as it should.
So you are saying electrically everything looks good, according to the schematic. Did you check the actual value of the supposed 4K7 resistors (measure their resistance in circuit, should be good enough)?
The email address should work, it's the right one. Also try replacing someone with florin.
Could be a finicky SD card.
rbyrer florinc3 years ago
I did as you ask. Only the 3 folders in "copyToSDcard" . I reformatted the SD card,(FAT), actually 2 different 2GB SD's, just to make sure it wasn't a problem with the SD card. Same results. Will not acknowledge the SD card.
florinc (author)  rbyrer3 years ago
That sucks, no doubt.
Does the clock work in the other modes (pacman, pong)?
Please email me directly (addr in the top right corner of the page timewitharduino.blogspot.com).
florinc (author)  florinc3 years ago
Are you able to upload a compiled sketch to the ATmega644P (as described here http://timewitharduino.blogspot.com/2011/02/uploading-sketches-to-wise-clock-3.html)?

You may have the Dec2011 software release, which requires a different set of files on the SD card (please read this post: http://timewitharduino.blogspot.com/2011/12/wise-clock-3-dec-2011-software-release.html)
florinc (author)  rbyrer3 years ago
yes, FAT32 is the problem, definitely.
To format the SD card with FAT16, you can follow this tutorial:
http://www.ladyada.net/make/waveshield/formatcard.htm
Your SD card should be 2GB or smaller to be formatted FAT16.
I hope this helps.
FlorinC
rbyrer florinc3 years ago
OK, I was using a 4GB SD card. I bought a 2GB SD card- formatted it FAT, not FAT32, put the files on it,( http://wiseclock2.googlecode.com/files/WiseClock3_June2011.rar) A total of 40 files and 3 folders- about 507KB. This made no difference. I included this information in case I am doing something wrong and just keep doing the same wrong thing over and over. Help please!
tromop3 years ago
I can only say: These kits are great. I've made 4 pieces until now (ordered the 3216 board seperatly from Sure) and the're working great.
vinizzo3 years ago
Hi, what about shipping cost to Italy?
Many thanks and best regards
Vincent
florinc (author)  vinizzo3 years ago
Regular shipping to Europe is $20.
Thank you for your interest.
FlorinC
I am a total newbie so please bear with me if I m wrong

some queries :

1. Is ATmega644P controller with Arduino bootloader always already pre- programmed ?


Please can you Help me out with Design and Programming work. [any LINK]

Please !

Email : akshayjadhav@live.com ----If required
florinc (author)  akshayjadhav3 years ago
ATmega644 comes "empty" from the manufacturer. I "burn" the bootloader (used to upload sketches using a serial port, without a specialized ICSP programmer), then I upload the Wise Clock 3 sketch.
Can you please Guide me with that process ,
if you have any sample tutorial or by giving me a LINK to appropriate tutorial on the web.


Would be a Great Help :)

Thank You !
-
akshayjadhav
That looks beautiful.

I see that you are interested in selling kits. I'm sorry but $120 is a very steep price. Have you thought about optimizing the cost a bit?

Ethernet would be a great addition to this project, for automatic time sync, and for weather and stuff like that. Perhaps power it using POE as well
florinc (author)  frank260801153 years ago
Thanks Frank.
Not really interested in selling the kits, honestly. I am just trying to spread the joy.
$120 is actually well below the "industry standards" for pricing. Try to buy the parts individually and I am sure you will pay more. Try ordering the laser-cut plates yourself. And I did not mention the design and programming work I put in.
How/where do you see the cost optimization (genuine question)? Maybe mass-manufactured in China?
Adding Ethernet would make the kit even more expensive. Also, it would tether it to a computer network. And then it would become an expensive internet device with a LED screen.
laser cutting is expensive, have you looked into water jet cutting? Or perhaps simply cutting it by scoring the sheet then snapping it? You won't get the nice rounded corners but people won't notice. Drilling the holes should be easy if you make a jig for a drill press

You can offer the same kit with SMD resistors, 0805 is ridiculously easy to solder, most people just don't realize it. See http://www.youtube.com/watch?v=4xcEG_c0uaM

You should make your own LED matrix module instead of depending on Sure Electronics. It will seem like a heavy investment to make a large batch, but I really think it'll pay off.

Also, you do not need R1, R9, R10, R11, R12, R13, use the ATmega's internal pull-up resistors instead

If you run the ATmega at 8 MHz instead of 16, you can eliminate the resonator from your design (use the internal RC oscillator). Plus you can use 3.3V instead of 5V, meaning you can get rid of R2, R3, R4 R5, R6, R7, which form your voltage dividers to the SD card. I highly doubt anybody is going to actually notice any difference in run-time performance

Also use the ATmega644 instead of the ATmega644P if the P version is more expensive. This might save you a few more pennies.

Perhaps look into capacitive touch technology in order to eliminate all the buttons from the design. Try using QTouch with your design.

The cheapest flash memory chip I found on digikey is about $0.67, while the cheapest card holder was $1.15 , so you can consider changing the type of memory you are using. If you are worried that loading text will be too hard for the user without a card slot, then add V-USB to your design and have them do it directly over USB.

The ethernet idea is not economical, but it'll make it cool, I don't recommend it for the kit though

Once you've optimized your bill-of-materials, try asking Seeed Studio for a quote for turning it into a kit, you'll be surprised with how much cheaper the list can get

Sorry about the rant, I might seem overly critical. I honestly think your clock will sell like water if you priced it under $50 somehow.
bertus52x113 years ago
I will definitely put this one on my "to do" list! Thanks!