I put the finishing touches on my watch tonight including a case and strap:
The timer interrupt service routine is working properly and keeping perfectly accurate time.
The watch is being powered by half a 9v battery (AKA three 1.5v AAAA batteries). I estimate this will last it about a week.
It turns out the buttons and their diodes were designed to form a charlieplex button circuit. I have no idea why anyone would do this with only four buttons, but once I figured that out reading them made sense. The up and down arrows adjust the minutes or hours depending on if the index or enter key is being held down at the same time.
The project is completed for now but there is room for improvements. I could fit a PIN geiger counter in there and add a speaker for alarm clock type functionality. Driving a watch uses only a small power of the PIC18F2620’s processing power. I could have it synthesize speech to make a talking watch; among many other things.
The Electronics I designed worked perfectly, and I have the LED programming completed. The watch displays hours and minutes in the top red digits, seconds and centiseconds in the bottom green digits. Centiseconds show up as 88 in every picture due to my camera’s exposure time. The watch is set up to do some basic counting at the moment. I still need get timer interrupts working properly so it keeps accurate time. Reading in the buttons is also still wonky. I really need to figure out what the purpose of those diodes around them is. The way they connect doesn’t form an OR gate like I had assumed. They also don’t appear to be any good for debouncing.
Here I’ve soldered together the microcontroller board and mounted it on the display. The board is a PIC18F2620 driven by a 20Mhz crystal. A 74HC164 shift register is used to drive the LED matrix anodes since the PIC didn’t have enough output pins to do everything by itself.
The only crystal, capacitors, and resistors I had lying around were the big bulky through hole variety. I’ll replace these with smaller versions if I need more room for batteries.
With a bit of trial and error I’ve managed to figure out the circuitry of the burner control panel. As I suspected the seven segment displays are common cathode and connected together in a matrix. Each cathode goes to one pin and each parallel group of segments goes to a pin.
There are four LEDs running up the left side of the display panel that I don’t fully understand. I know they must be hooked into the same matrix as the 7-segments but I can’t identify the pins they connect to.
The butons are also a little bit of a mystery. For some odd reason they have diodes connected to them. I suspect they’re being used as an OR gate so every button can trigger an interrupt on a microcontroller with a single interrupt pin. This means I can probably ignore it.
I’m probably getting a little ahead of myself but I’ve gone and designed a microcontroller PCB to sit behind the display panel. Hopefully I’ll be able to figure everything else faster once I can control the display through code.
I’ve stripped off the original control boards (which were very large) leaving just the LED panel and buttons. The entire unit measures 4cm by 4.1cm by 0.9cm. Now I need to start analyzing the circuit board and figuring out how I’m going to drive this thing.
While exploring the remains of a demolished factory I uncovered this damaged burner control unit. What really caught my eye was the small control panel to the left. I like the look of it; very cyberpunk. I decided to turn it into a watch.
Project I completed with a team in my third year of computer engineering back in 2007 (EECE374).
Goggles part III. This photo was taken at the 2011 Maker Fair. I’m driving the matrix with a PIC18F66J60 and some 74HC164 shift registers located in a box at the back of my head. Also wearing an unrelated LED matrix colander hat that will be documented sometime later.
Goggles Part II. Here I’ve put together the Matrix and put a thick layer of black paint on their backs to keep the light out of my eyes.