The Solder : Time is an original design watch kit that you solder and assemble yourself. Delivered as a through-hole kit, you solder the components to the PCB, and enclose it all in four layers of laser cut acrylic.
Introduced at Maker Faire Bay Area in Mid 2011, an instant hit. The supplied battery lasts a really long time, and the onboard Dallas RTC keeps impeccable time. This is the first SpikenzieLabs Kit that is a 'wearable'.
Solder : Time is not only a wristwatch. Set it up as a desk clock, badge clip-it to your clothes, thread a chain, and you've got a pocket watch.
More advanced tinkerers will see the bottom side I2C lines broken out, for hacking, and integrating RTC into other projects. There are also pads on the backside of the PCB for DC supply, as well as an 'always-on' function.
Tools and supplies required :
• Soldering iron
• Flush cutters
Start by bending the leads to all three resistors to look like these in the photo.
Solder them in place and trim the leads. They go in either direction.
When trimming the leads for this kit, trim them as close to the PCB as possible. This will make it easier to assemble the plastic watch parts when building the watch body.
The crystal for the real time clock is the very small silver part with two leads.
Solder this as in the photo.
1. The notches on the two IC chips (RTC and PIC) must match-up with the notches printed on the white silk screen.
2. These two ICs are soldered directly onto the PCB. For best results, only apply heat from your soldering iron for 1 to 3 seconds per leg.
Solder the two orange-yellow capacitors in place.
Trim all leads.
Place the 4 digit 7 segment LED onto the PCB. Push flat, making sure all the legs go through the holes.
NOTE: Make sure that the LED is installed up-side right. Check that the decimal points are on the bottom as in this photo.
Solder and trim the leads.
You may want to peel the thin clear protective layer from the LED. Use your finger nail to lift an edge and then gently peel it off.
Push the button into the PCB. It should almost click into place.
Solder and trim the leads.
The battery holder is very light and likes to move around as you solder it. Solder it in place with the open edge facing down.
Taping the battery holder in place, with masking tape, while soldering it works best.
Another way to solder the battery holder without tape is to heat the pad and battery holder by placing the tip of your soldering iron on the PCB’s battery pad and just barely touching the battery holder. After a second or two add some solder. Once one pad is soldered, do the other one, and come back to add more solder to the first one if required.
I’ve tried soldering a blob of solder onto one of the pads, and then heating the battery holder ... this didn’t work.
NOTE: As tempting as it may be, don’t touch the battery holder while soldering - you will burn your finger!
Slide the battery into the battery holder on the Solder : Time PCB with the CR2032 “+” label text facing up. When the battery goes into the holder the watch should turn on and display 12:00. If not, remove the battery and check your work. After about five seconds the display will go out, this is normal.
In order to protect the plastic parts during manufacturing they come covered by a thin plastic / tape layer. These should be removed before you assemble the watch.
1. Only use something soft like your finger nail to scrape the edge of the protective layer and then peel it off.
2. VERY IMPORTANT: Some of the layers have very thin parts that can crack easily. The best way we have found to peel the protective layer off of these parts is to hold the part down evenly on a flat surface with one hand and peel with the other hand. Holding the part in the air while you peel may snap the part you are peeling. (Don’t worry after the watch is assembled and screwed together it is very strong.)
With the battery in the battery holder start making a stack of parts.
1. Start with the plastic watch back oriented with the two larger holes at the top and bottom and place the PCB over it.
2. Next, place the plastic PCB layer part around the PCB, with the open end facing down.
3. Place the plastic switch layer on top of the PCB layer plastic. The opening for the switch is on the right side.
4. Place the switch lever into the space on the right side of the Switch Layer. Make sure that the switch touches the Solder : Time button and does not bind. Test it, the Solder : Time should turn on when pressed and off after a few seconds when released.
Close up of button details:
Note: The slightly wider end of the button level is down and the thinner end up.
5. Place the front face of the Solder : Time on the top of the stack.
6. Using your fingers, screw the layers together with the included screws. Don’t tighten them fully until all four screws are installed (this will help you align the layers).
7. Almost done, slide the wrist band in from the bottom edge, under the bottom and up through the other hole in the bottom and out the top edge.
• On the right side of the Solder : Time, press button once and release.
• Current time will display and after ~ five seconds display will go to sleep
• Press the button twice and hold it.
• After about five seconds the time will start to advance and the colon will flash to show that you are in time setting mode.
• After about ten seconds of slow time advancement, the time advancement will go into a fast forward mode.
• If the button is released the colon will continue to flash (time setting mode is still active).
• If the button is not pressed again for around five seconds the watch will go to sleep. The next time it wakes up it will be in normal time display mode.
• If the button is pressed again before the watch goes to sleep, the slow advance is restarted.
When we came up with the idea for the Solder : Time, one of our big concerns was battery life. We knew that we would need a RTC and some type of micro-controller. After experimenting with a bunch of different RTCs we decided to go with the Dallas Semiconductors DS1337+ . This RTC clock runs at over a range of voltages which included our required voltage of 3v. It has extremely low current when in standby mode and uses I2C to communicate with the master micro-controller.
For the micro-controller we chose the PIC16F631 . This IC has only a few peripheral functions built in (with keeps the cost down), and since we didn’t need many this also saves some power. The PIC16F631 has a very low power sleep mode, has enough pins for our project (and only one spare one), and also runs at 3volts. The PIC16F631 does not have built in I2C, so we used a bit banged version to control the RTC.
In order to maximize battery life, we also used a couple of tricks. For the I2C bus we used higher value pull-up resistors (10k vs 4.7k) to reduce current and for the one unused pin on the PIC we set it to be a low logic value output (Microchip’s spec sheets, recommend this as a power saving set up). In testing the watch’s current draw, we estimated that given the average power of a CR2032 battery, the watch should keep the time for five years, before needing a battery swap in stand-by mode. Overall battery life will depend on how often the display is turned on.
The LEDs: One of the objectives when designing the Solder : Time was to make sure that all of the segments of the digits had equal brightness. In some cases only two segments are lit, as is the case for the number “1”, When the “8” is on, all seven segments are lit. Battery power was also a concern, the battery we chose for this project is the CR2032 which is a 3v low current battery. Our solution was to light only one single segment at a time, this way if the digit being displayed was a “1” or an “8” all the segments would be equally bright and we wouldn’t over tax the battery by drawing too much current. (If you wave the watch in the dark, you may be able to see the flashing pattern.)
To light only one segment at a time we used one of the internal timer peripherals in the PIC. A timer may also be used as a counter, but in this case we used it as a timer to time the on time of each segment. When the timer runs out, the PIC programming jumps into a interrupt routine. To display a number, the PIC looks up the segments in a table that stores the on and off values for the segments. It starts with the first segment of whichever number it is displaying and then turns the segment on (or not, if that segment isn’t on). After this, the program returns to the normal main loop of the program and waits for the timer to run out again. When it does, the PIC turns on the next segment of the current digit. Even if the segment of the current digit is not turned on, the timer still waits.
After all of the segments of a digit are displayed, the next digit is displayed, and after the last digit is displayed the colon is displayed and then it starts over at the first digit.
There is a special case when displaying the colon. It flashes when in time setting mode. It took a few tries to get the flashing to look good and steady in the three states of the time setting mode; slow forward, fast forward and idle. To achieve a steady flash rate we used another timer. This timer simply toggles the colon on or off ever time that it times out, then when it is time to display the colon it is simply lit or not.
For the Solder : Time’s sleep mode we use a manual counter variable. This variable is incremented every time the program goes through a loop, and when it over flows (gets too big for the size of the variables holder) a sleep flag is set and the watch goes to sleep. If the button is pressed before the watch goes into sleep mode, the sleep counter is reset to zero and counting starts again. This way, the watch will go to sleep consistently after about 5 seconds from the last time you pressed the button.
Before the watch goes to sleep it turns off the LEDs. The watch button is set to wake the watch up if it is pressed. Nothing is done to the RTC since it goes into stand-by mode when no data is being transfered and it simply keeps the time.
Solder : Time™ schematic.
Here is the source code for the Solder : Time™ written in assembly. Use Microchips’ MPLAB to modify the code and recompile new HEX files to reprogram the Solder : Time™.
Here is the compiled standard release version of the HEX code for the Solder : Time™. A good choice to program the Solder : Time™ is using Microchips’ PicKit programmers.
The Solder : Time design, a time piece made of layered plastics, it’s schematic and source code / firmware are presented here strictly for educational and informative purposes. SpikenzieLabs retains all rights to the design, look, source code and firmware. Reproduction is allowed only for personal use. No commercial reproduction is allowed without previous written approval from SpikenzeLabs.
Copyright SpikenzieLabs 2019