The clock is built on a 4" (101 mm) LCD displays OD-103 manufactured by Orient Display. The LCD provides high contrast of digits and easy reading from a large distance. The unit runs on batteries and can also be powered from mains. Here is how it looks under direct sun.
Front view | Schematic | |
The time keeping is provided by DS3231 RTC chip with an integrated high accuracy (± 5ppm) MEMS crystal. This makes PCB design very simple, as one does not need to take care on special traces design around the crystal. The chip is powered via the VBAT pin with VCC pin being grounded. This way its drawn current is minimum. The RTC chip is equipped with a temperature sensor, which is not used in the current design. However, the 1st, 3rd, and 4th digits are mounted with the decimal point on top, which allows, in particular, to display the degree symbol in the last digit. The blinking decimal dots in the 2nd and 3rd digits separate hours and minutes.
The LCD is controlled by the PCF8562 driver IC with the I2C interface. Its digital part is powered directly from batteries, whereas the LCD segment buffers are connected to a DC-DC converter IC4. The converter boosts the battery voltage up to 5V, which is needed for achieving high LCD contrast and its wide viewing angle. The converter has a very low (1.5 μA) quiescent supply current and a high efficiency at low load currents. When connected to mains, the contacts of J1 jack disconnect the battery and the circuit is powered from the 3.3V voltage regulator IC5. Capacitor C6 prevents short power disconnects caused by switching between batteries and mains.
Back view | Main PCB | |
The clock chassis is formed by ¾" aluminum profiles. To prevent the background light from being visible on front, the LCD edges are covered with aluminum strips from behind. The PCB is mounted on one of those strips, and the battery holder is mounted on another one. The board is designed with Eagle software, the corresponding files are available for download. Note that the voltage regulator and its related components are missing on the PCB because they were added to the unit later.
The microcontroller program is written in assembly language and developed with IAR Embedded Workbench software. The source code along with the project file are available for download. Most of the time the microcontroller spends in the LPM3 sleep mode. The RTC chip is configured for periodic alarms when the seconds reset to 0. The alarm creates a falling edge of voltage on the INT pin, which is used to awake the CPU. In the active mode the CPU reads time from the RTC chip and loads it into the LCD driver. The I2C bus is clocked at 125 kHz by using the hardware driver based on the USI microcontroller module. The buttons processing and debouncing is accomplished by using port interrupts and shift registers, respectively.
The crucial question is, of course, how high is the current consumption. Well designed LCD clock with usual (smaller) LCD draw just a few microamps. Unfortunately, such low power consumption is unreachable with large displays because their segment capacitance is much higher. Hence, much higher current is needed to recharge the LCD capacitance by periodically changing the voltage polarity on segments. As experiments show, one indicator draws about 15 μA at 12 Hz, which is a minimum frequency for flickering to be not noticeable. However, IC1 drives the LCD at 80 Hz, so the current consumption goes up to 30 μA and 4 or them draw 120 μA. Furthermore, the digital and analog parts of the LCD driver IC1 draw, 8 and 20 μA from 3V and 5V, respectively. Taking into account about 80% efficiency of the DC-DC converter, the battery current becomes 14 + ((120+20)/0.8)×(5/3) = 305 μA. Using Energizer lithium AAA batteries with nominal capacity 1800 mAh, the expected battery life is 1800 / 0.3 = 6000 hours, or 250 days.
To prologue the battery life the LCD driver is disabled when it gets dark and the display becomes unreadable. Periodic light condition checks are provided by photo-diode D1 and the built-in ADC. The light is checked every minutes in dark and every 5 minutes otherwise. When the LCD driver is disabled the LCD gets off and its capacitance is not recharged. However, the analog part of the LCD driver IC remains on and that's why the total power consumption falls down to 40 μA. Assuming the length of dark and light day time is equal, the average current consumption falls down to (300 + 40) / 2 = 170 μA, so the batteries should last for 1800 / 0.17 = 10588 which is about 441 days. Note that no light measurements are performed by powering the clock from mains, so the display remains on all the time. This is provided by Q3 which drops the voltage on its drain down to 0V when mains is attached.
If I would built such clock again, I would decrease the LCD driving frequency by generating it within the microcontroller and sending it to the CLK pin of the LCD driver (its OSC pin then should be connected to VCC). Another thing, after with disabling the LCD driver in darkness, I would also disable the DC-DC converter by applying a logical 0 to its SDN pin. This way the total average power consumption should decrease in a factor 1.5 at least.
Last modified:Mon, Jan 23, 2023.