Saturday, January 29, 2011

First release of the Wise Clock 3 software

The routine work of porting the "Wise Clock 2" code to the new "platform" (namely the new 3216 bicolor display) went well. Most of features worked right off the bat. Some coordinates had to be adjusted in order to center the text (time etc) on the larger display. These adjustments could have been avoided if the original code used calculations starting from X_MAX and Y_MAX. Ideally, just by changing these two values, the code should have worked.

The source code is available for download here. It compiles with Arduino IDE 21, with target set to "Sanguino" (see here how you add it to Arduino IDE).

Beside from the porting, I added a new class for "Pong clock" and also a few features (and bug fixes) related to the "big clock", courtesy of Ruud (a belated thanks!).

The "Pong clock" feature, maybe a "first" in multiple colors, is shown in the video below. The code was copied and adapted from Nick's Pong clock.

The "Big clock" feature mentioned previously allows the user to display the time with a selected big font from a few given choices. This was added by Ruud, who also captured it in this video (for Wise Clock 2).

His nice idea is to show the time, round robin, with different fonts, then allow users to select their choice by clicking the "Plus" button.

The current TODO list includes:
  • displaying the temperature from DS3231;
  • set date (day, month, year) from buttons (currently it can be set only from SD card);
  • change the time colors to indicate the proximity to the moment the alarm goes on (similarly to IllyClock);

Related posts:

Thursday, January 27, 2011

Wise Clock 2 now with redesigned Duino644

Update Apr 15/2011 - Added schematic.

A new revision (2.1) of Duino644 is now available. The redesigned board features:
  • real time clock could be either DS3231 (extremely accurate RTC from Maxim) or the "old" DS1307;
  • the resistor-based voltage dividers for SD card have been replaced by 74AHC125 buffer chip;
  • small prototyping area, for adding extra functionality (e.g. automatic dimming with photo-resistor, FM radio etc);
  • power-indicator blue LED is now through hole (replaces the SMD).

Still in place are:
  • ATmega644P (DIP package) with 40-pin socket;
  • SD card socket;
  • infrared receiver;
  • piezoelectric buzzer;
  • 3 push buttons;
  • reset button;
  • two 2x8-pin connectors for direct plug-in with the 2416 LED display from Sure Electronics;
  • miniB USB as power connector;
  • ISCP 6-pin header;
  • 6-pin FTDI header;
  • four 8-pin headers for expansion boards ("shields").

The photo below shows the assembled board.

But don't get too excited: there are also 2 "minor" (easy to fix, fortunately) glitches:
  1. the FTDI header is too close to the display connector, so that the board cannot be inserted completely into the display, unless a piece of plastic from the display's connector is chopped off, as shown below.
  2. pin 3 of DS3231 (INT/SQW) is connected directly to D2 (pin 3) of ATmega644P, as is the output of the IR receiver. Basically, the IR receiver and DS3231 INT/SQW share the same interrupt. I initially thought of having a switch (2-pin header shunt) to connect INT/SQW to D2, but I got carried away and forgot to add it. There are 2 fixes for this: either software (modify the ISR) or just cut off the trace (and keep the software unmodified).

If you buy the complete Wise Clock 2 kit, I will cut both the display connector and the trace for you.
Otherwise, the Duino644 kit will have the unaltered board.

Tuesday, January 25, 2011

Introducing Wise Clock 3

Updated June 24, 2011: Read this post on the latest code release. Lots of new features added, plus video showing them in action.

Updated March 1, 2001: added schematic and Eagle files.

This latest member of Wise Clock family has two major improvements over its predecessor:
  • the real time clock is upgraded to one of the best RTC chips available, the extremely accurate (±1 minute per year), temperature compensated, DS3231 from Maxim (also used in Chronodot);
  • the LED display, from Sure Electronics, is bigger (32x16 pixels) and better (red, green and yellow pixels).

The main board, shown below, also features:
  • ATmega644P microcontroller running at 16MHz, with the Arduino/Sanguino bootloader;
  • SD card socket;
  • piezoelectric buzzer;
  • three function buttons and one reset button;
  • battery backup for the real time clock (it keeps the time even when the board is not powered);
  • headers that plug directly into the 2x8 connectors in the back of the display, so that a ribbon cable is not required;
  • a small prototyping area, to extend clock's functionality (e.g. adding infrared remote control, FM radio, dimming on the ambient light etc);
  • ICSP 6-pin header;
  • power through USB miniB connector;
  • 6-pin FTDI connector, compatible with the FTDI cable and the FTDI breakout;
  • all 4 ports of the microcontroller (32 pins) are accessible to a "shield"-like expansion board;
  • ability to cascade a second 3216 display through 2x8 pin header (plus ribbon cable);
  • blue power LED.

A few design considerations:
  • the main board fits perfectly within the dimensions of the LED display;
  • the function buttons are accessible from the top, as is the SD card;
  • power connector (USB miniB) accessible from a side;
  • FTDI header placed at the bottom of the board (does not take lateral space);
  • between the main board and the display board there is room left for air circulation, in case the display chips get warm;
  • buzzer placed close to the edge of the board;
  • enclosure made of two laser-cut plexiglass plates, sandwiches the two boards (main and display) together, held in place with a few screwed standoffs.

The software for Wise Clock 3 is being adapted and expanded from Wise Clock 2, with the addition of new features (Pong clock, temperature display etc). The HT1632 files (h and cpp) for the new 3216 LED display are already tested and proven (see this Arduino forum thread).
As always, I will keep you posted. Stay tuned.

Eagle files can be downloaded from here: schematic, board layout.
The schematic is also shown in the image below.

Friday, January 21, 2011

From the mailbox

"Some time ago I ordered the Wise Clock 2 and I like it a lot."

"This is to notify that I have received the kit [Wise Clock 2] and everything seems to have arrived safely and in order. Thank you for your service!"

"Thanks for the great [Wise Clock 2] kit. I have successfully assembled it. Everything works fine, from the [power] LED to the display. Attached is a photo of it."

Related posts: