Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Is it possible to make a gate level digital wrist watch

Fluffyboii

Active Member
Hi,
Ever since I designed and simulated a digital watch with logic gates for one of my electronics classes in university I had this urge to take that design and make it reality with only transistors. Not even logic gates or flip flops. I did find that it is already done my different individuals and it is not an easy feat.

Anyway I am super into digital watches for the past year or so. I simply like telling the precise time at a simple glance and I love the unusual shape and sizes some digital watches have. Today the idea of making my own digital wrist watch got stuck on my mind. Obviously the easiest way to do it would be to get a microprocessor, few small 8 bit displays, rtc module for precise time keeping, slamming all of that in a 3d printed case. Even doing that would be a feat in itself.
Unfortunately using something like an Arduino, taking the Atmega something processor from it feels wrong. People make smartwatches with lots of functionality with those and just simple time keeping with it would make me sad. I could get a less powerful microprocessor and try to code in assembly to torture myself but I am not in that mood.
Using transistor level logic would never fit in a wrist watch form factor, I wonder if using smd versions of logic gate chips, flip flops, multiplexers, etc. would make it possible to fit in a wrist watch or do I need to get counter ICs and other more complex ICs for it to fit. Today most wrist watches that are digital have a small mcu, a quartz crystal with an inductor, few caps and resistors and thats it. Pretty boring and unrepairable.

I am also curious about when something stops being analog. Analog circuits are fascinating. I also want to make a calculator with all solid state components but analog in design. Adding and subtracting with op amps is easy enough but multiplication is difficult :( Obviously having it all solid state requires using some kind if led display which requires a dac at some point. Can something similar be done with a watch, nearly fully analog except the display. This is bit off topic from my initial wrist watch idea but is it possible to make a watch with a led display that does all the time keeping with an analog circuitry, just for the sake of it. Something like a RC circuit that charges a capacitor until a voltage threshold is passed that the triggers a comparator for example to keep time. I never truly understood when some circuit truly becomes digital.

This is just my random thoughts at 5am.
Edit: I just searched bit more and a microprocessor less watch requires immense amount of logic elements just as I remember that will definitely not fit in a small package unless I use ICs to do most of the hard work.
 
Last edited:
This is going to sound easy because it is.

There is a group of part families that has not only standard HW but also
a fabric for more sophisticated "standard" HW and user designed HW
if you want your own custom component.

So easy path first, you drag and drop out of parts HW library various HW
pieces, anything from simple gates to dig filter and in between, like PWM's
with deadband, up/dwn counters, timer..... Then using a simple wire wizard tool
wire uop internally and out to pins the HW components. Note each of the
pics below of the HW is an internal component. Then dbl click component
and config its basic parameters. Last you write 1 line of code, a start f()
given to you as a part of each components SW lib, and you have an almost
codeless design running. Tool does all the timing verification for you, its rare
you have to do anything with that. I have worked with that twices in 12 years,
rare you have to mess with it. Also not below all the analog HW in chip.

For designs that need real time control of the component HW, each component
has a rich lib of f() calls to manipulate it, like change PWM duty cycle, read
a counter, etc.. You are not writing drivers per se, just high level application
code, like what do I do with my A/D or counter value.

3 families, 4M low end, 5LP high end, 6 dual core for blue tooth and cryoto work.

Here is specific example for recent design requirement, user needed 24 PWMs to drive
24 high power LEDs, to monitor each LEDs current. And to communicate to PC over
USBUART. This left a large amount of fabric and HW for other stuff available, like
display, encoder....One chip....

View attachment 145257

For more sophisticated users (the community) one can design their own onchip
component to add to the libs. User community has done CPLD, 74HC equivalents,
DDS.... I did a 64 bit SIPO shifter, 64 bit counter for proof of concept. Onchip compo-
nents can be done with schematic capture and or Verilog.

Board to use for projects with nominal I/O count ~$15, I use that 90% of the time.

IDE (PSOC Creator) and compiler free. Used for 4, 5LP, 6. Also MODUS more for the 6.

For each family 100's of projects already done one can cut and past from. Users
have done everything from simple codeless logic designs to one chip oscilloscopes.

Here is an example I did for my own lab :


Here are onchip components (multiple copies in most cases) :

View attachment 145258

PSOC available for >> 20 years (the old 1 family even longer) and most of these families.
Quite stable.


Regards, Dana.
Dana, I remember you recommended PSOCs when I asked about making a modular synth. You can run all of the synth components with this one chip as well right? The board is indeed inexpensive and the operation seems fun. That time I did not wanted to use complex IC and wanted to make everything with dumb ICs and ultimately got overwhelmed by the whole setup. I will give this a try, seems too good and maybe I can do other projects with it as well.
 
I do not know anything about PIC programming, seems like the go to option for programmer is pickit3 or 2.

The PK4 is the recommended one now, the PK2 is REALLY old, and even the PK3 doesn't support a lot of more modern devices.

There is PIC K150 for much cheaper than those but seems like it wont program the PIC you mentioned. I also want to ask, is it worth it to learn using these when everyone is using AVR microprocessors that are more powerful and probably documented better.

The majority of hobby users tend to use PIC's, and most professional users do as well - you see PIC's in all kinds of products, where it's quite rare to see AVR's been used. MicroChip PIC's are the most popular micro-controller from a single manufacturer.

AVR's aren't any more powerful, but it depends what series you compare - a mid-range AVR if likely to be more powerful than a low-range PIC, and a mid-range PIC is likely to be more powerful than a low-range AVR.

PIC's are also probably better documented than AVR's?.

Where the AVR is 'better' is simply down to the Arduino - an Arduino is a development board, originally using an AVR processor, with a pre-programmed boot-loader. Arduino boards are also available with various processors, including PIC's.

Interestingly the original Arduino was supposed to be PIC based, but MicroChip were unwilling to provide a free compiler, so Atmel were contacted, and agreed to make a free compiler available - hence the original Arduino's used AVR processors.

The AVR now of course is part of MicroChip along with the PIC, as MicroChip bought-out Atmel a number of years back.

If you want to use AVR's, the AVR IDE and compilers (Studio For AVR) are downloadable from MicroChip (along with MPLABX for PIC's), and you can actually use MPLABX to program AVR's as well as PIC's. But in both cases you still require a programmer, because new AVR's are just blank, just as new PIC's are.

If you want no programmer (and no 'real' IDE) then go for Arduino boards, and use the simple Arduino programming system.
 
Here is one approach, minimal resources, first pass. Or you could use
a separate counter for each group, hours, mins, secs. Its your call.

Synth components ? Not sure what you mean, but solution is one chip.

Note how many resources still available for other stuff, right hand column.

1712669949415.png


In code when you are not using a peripheral you can turn most of them off to conserve power.

Keep in mind the board has two 5LP parts on it. One handles USB and COM to PC for debug,
the other the target. When done with project youc an snap off the debugger and use it, but
its severely limited in I/O pinout and you now dont have a debugger unless you debug thru a
port (old school days). You can use it, if firmware for debugger loaded, for other designs.

That time I did not wanted to use complex IC and wanted to make everything with dumb ICs and ultimately got overwhelmed by the whole setup.

I too in past wanted this approach, but then realized making complex logic circuits out of vacuum tubes
was a non starter. And frankly ideas, rate of creation, means I want proto work done fast. So I embrace
ease of build. I even now use ~50% of the time block programming languages on the simple stuff,
much faster than C for he who cannot remember typing from one day to the next. Stuff on Atmel like
ATTINY series. My ADD demands I jump from one project to another as fast as possible :). PSOC
has allowed me to do that. I was a FAE for uChip, Freescale, NEC, Zilog, others, and find the SOC approach
to designs truly terrific. I did not have good luck with uChip and their tool chain turmoil, found Freescale
and their processor expert fascinating. One of the early visual learners solvers. I do not want to go back
to punching paper tape, TTY, and toggle switch entry early 70's, no desire what so ever. Glad I did, not
going back.


Regards, Dana.
 
Last edited:
It appears the PSOC 3 / 5 may not practical for a wristwatch - from the Infineon power calculator spreadsheet, enabling the LCD drive module adds over 12.5mA to the current consumption??? That's more than the CPU??

PSOC4 may be possible, as that seems to have an LCD in hardware rather than using the relatively power hungry programmable logic. The 3 & 5 also need continuous CPU wake-up events to handle the LCD refresh, while from a quick look the driver in the 4 can run with the CPU in sleep so it only needs to wake to change the display content.

Whichever device, each UDB enabled for any reason adds to the power consumption, even if only by a trivial amount.

A 32 bit ARM CPU still seems a bit of an overkill in a wristwatch though, for anything other than test bench experimentation?
 
The PK4 is the recommended one now, the PK2 is REALLY old, and even the PK3 doesn't support a lot of more modern devices.



The majority of hobby users tend to use PIC's, and most professional users do as well - you see PIC's in all kinds of products, where it's quite rare to see AVR's been used. MicroChip PIC's are the most popular micro-controller from a single manufacturer.

AVR's aren't any more powerful, but it depends what series you compare - a mid-range AVR if likely to be more powerful than a low-range PIC, and a mid-range PIC is likely to be more powerful than a low-range AVR.

PIC's are also probably better documented than AVR's?.

Where the AVR is 'better' is simply down to the Arduino - an Arduino is a development board, originally using an AVR processor, with a pre-programmed boot-loader. Arduino boards are also available with various processors, including PIC's.

Interestingly the original Arduino was supposed to be PIC based, but MicroChip were unwilling to provide a free compiler, so Atmel were contacted, and agreed to make a free compiler available - hence the original Arduino's used AVR processors.

The AVR now of course is part of MicroChip along with the PIC, as MicroChip bought-out Atmel a number of years back.

If you want to use AVR's, the AVR IDE and compilers (Studio For AVR) are downloadable from MicroChip (along with MPLABX for PIC's), and you can actually use MPLABX to program AVR's as well as PIC's. But in both cases you still require a programmer, because new AVR's are just blank, just as new PIC's are.

If you want no programmer (and no 'real' IDE) then go for Arduino boards, and use the simple Arduino programming system.
I guess I was wrong with my initial commend on PICs. Indeed Arduino is very simple and has a lot of tutorials etc. online. Atmega328p is probably too powerful for the application of a watch I think. I would like to do it in the proper way. In one of my courses we wrote Assembly and C programs for ATmega2560. I am not good at it and still don't know how I passes that course with B- at the end of the semester. I use to be able to write C++ pretty well until I got to the topic of pointers :/

Anyway so Pickit3 cost about 20 Euros and Pickit4 is over 100 Euros. I know it is a useful tool for future projects as well but I am not sure if I want to spend so much on something I end up not using too much. There is also Pickit3.5.
 
I was once building stuff like this. I could not find your comment but essensially you mentioned that Voltage Controlled Oscillator, Voltage Controlled Amplifier, Ring modulator, anything that a modular synthesizer has on board can be simulated with that one chip.
Ypour post #21. Now I understand your comment was in ref to synthesizer discussion some days/weeks ago.

Regards, Dana.
 
It appears the PSOC 3 / 5 may not practical for a wristwatch - from the Infineon power calculator spreadsheet, enabling the LCD drive module adds over 12.5mA to the current consumption??? That's more than the CPU??

PSOC4 may be possible, as that seems to have an LCD in hardware rather than using the relatively power hungry programmable logic. The 3 & 5 also need continuous CPU wake-up events to handle the LCD refresh, while from a quick look the driver in the 4 can run with the CPU in sleep so it only needs to wake to change the display content.

Whichever device, each UDB enabled for any reason adds to the power consumption, even if only by a trivial amount.

A 32 bit ARM CPU still seems a bit of an overkill in a wristwatch though, for anything other than test bench experimentation?
For sure a 4 bit processor would do it. Totally agree PSOC is not an ideal watch application part.
But I kept thinking a one off design, part count huge priority. One even starts to think for fun solar
poweredwith super cap backup....... or steal energy/energy thief.....

I cannot remember what vendor this was but there was one selling watch chips that were full
custom ASIC dedicated to that task, with power consumption in the < 10 uA if my memory serves me.
It was a swiss watch company that decided to sell its IP as a standard product. They were also doing
door lock controllers as I recall.

The design, not the one I showed, could be done with CPU in stop state permanently, not used, one
could think of unique ways of presenting time other than muxed LCD, or digits, even static approaches.

So many possibilities,....

Regards, Dana.
 
One could think of unique ways of presenting time other than muxed LCD, or digits, even static approaches.

So many possibilities,....
Did you see the mechanical 7 digit displays people 3D print. There was also a marble clock. Of course complicated 3D printed parts are not scalable enough to fit inside a wristwatch. At least with FDM 3D printing, the resolution is not great. I wish there was some small VFD displays for sale. There seems to be some new/old stock for sale but they are rather large. I know some calculators have small VFDs in them but again even those are quite long. Found this on Ebay.
1712688388509.png


Looking at Ebay wow there are a lot of VFDs and Nixie tubes for sale and they are not even that expensive. There is even a cylindrical VFD.
Imagine going through an airport with something like this on your arm lol:
1712688693601.png

If there was a way to have a display like this in a small package it would be the coolest thing ever. I wonder if something similar can be created with those filament like LEDs.
1712688850272.png

Smalles filament LED seems like 1.2cm. But they are quite thick. Maybe they can be put in a grid like that VFD. Maybe it would be possible to stack them like this to create something similar with that VDF. On a large scale it would be also possible to create the numbers by bending these.
1712689541689.png
cats.jpg
 
Last edited:
VFDs need a higher voltage, rather like Nixie tubes.

You can get a number of different small circular colour TFT displays, that could appear like that, though!
eg.




E-Paper or E-Ink types would be better for a watch (as used in Pebble watches), but those are mostly single colour or a limited range.
The great thing with those is that they take zero power between image changes.
 
VFDs need a higher voltage, rather like Nixie tubes.

You can get a number of different small circular colour TFT displays, that could appear like that, though!
eg.




E-Paper or E-Ink types would be better for a watch (as used in Pebble watches), but those are mostly single colour or a limited range.
The great thing with those is that they take zero power between image changes.
I love e-ink displays. I thing black and white would be fine. I do not want to make a smart watch with touch screen etc.
 
I found an article that uses Atam893 4 bit mcu for RFID application. Looking at the datasheet a 32khz crystal can be connected to that mcu for time keeping functions as well. Unfortunately looks like it requires some ancient equipment to program. I think my choice of display will invalidate any power savings of the microprocessor anyway. So maybe I should just pick a common 8bit PIC and have a go with it to see what I can do before trying to build a wristwatch. Same with the LCD. Probably better of using some kind of regular 7 segment display until I figure out the basics. And maybe meanwhile I can figure out what I really want to do. What do you think?
 
Do a quick power and chip count analysis, since power and size your two biggest
issues, make a decision table. One column for PIC, one for 4 bit, one for PSOC etc..., use a
1,2,3 rating for each concern in table, and add up the rating column, biggest or lowest
rating (depends on the way rating number is used) wins. Its a quick exercise, very
effective.

Example ( # = big = good)

1712715826113.png



Regards, Dana.,
 
Last edited:
I have these very poor quality watches. Can the LCDs from these be used. It has a zebra strip but it looks like the traces can be replicated very easily.

How difficult would it be to make a small 7 segment display out of 603 displays? Can those even be hand soldered? What would be the most power efficient way to drive something like that? Something like in this schematic? I am guessing that I can just control the brightness with pwm and use some mosfets to do the switching. 12 pins are still a lot though. If I use regular LEDs I would need to use something like an accelerometer to make the watch turn the displays on, only when the wrist is flicked or a button is pressed.

I wish I could find a beautiful led display like here:

Maybe I should not attempt to build a wristwatch after all. But I do want to get into mcu programming and this does make a good excuse so maybe I can try something big then try to scale it down. Also want to try to make a music synthesiser with one on those PSOCs since it looks like they support capacitive sensing without additional components and have a lot of analog capabilities it would be a nice choice. To be honest it has been a while since I worked on an electronics project and I want to do something, anything.
 

Attachments

  • IMG_1910.jpeg
    IMG_1910.jpeg
    1.9 MB · Views: 191
  • IMG_1911.jpeg
    IMG_1911.jpeg
    64.5 KB · Views: 141
Last edited:
You can still find bubble style miniature LED displays on ebay, but they are stupid prices...

A four digit one is in the Sinclair black watch I built from a kit (which also now apparently go for silly money; there is a photo of an unbuilt kit here - you can see the display in the right edge of the parts tray:

I would suggest you build a clock instead of a watch. The bigger displays are readily available and cost a fraction as much as the vintage ones.

It could be a wall clock? You can get "2.7 inch" displays with digits over 50mm tall, which are still quite cheap. A six digit display with those would be around 300mm wide!
 
I would suggest you build a clock instead of a watch. The bigger displays are readily available and cost a fraction as much as the vintage ones.

It could be a wall clock? You can get "2.7 inch" displays with digits over 50mm tall, which are still quite cheap. A six digit display with those would be around 300mm wide!
I have disgusting amount of regular LEDs so I can 3D print a diffuser and use them to make a large 7 segment display for basically free. I think this is the most reasonable. I can get a PIC and try to remember writing in Assembly or C if I do not want to suffer a lot. Or I can just use one of my clone Arduinos. Also can make a nice box for it. A wristwatch has strict size and power requirements and will probably end up not looking good. I can probably cram lot more functionality in a big one. Will go with this.
 
It could be a wall clock? You can get "2.7 inch" displays with digits over 50mm tall, which are still quite cheap. A six digit display with those would be around 300mm wide!
I am not sure if this was the LCDs you mentioned but today I could not help myself and bough 4 very large 7 digit LCDs. They cost about 1.6 euros. I also got some very small displays like the 3 digit ones I posted here before and some small 2 digit ones to experiment. Also got a regular 4 digit one with backlight that is suitable for a small watch and should be able to be drive-able with the PIC you mentioned since it is simpler than the one you linked.

Maybe I can build a very low power watch with the big ones and power it with some solar panels and super capacitors like it was mentioned here. I should have gotten 2 more of them for seconds but I forgot. Could maybe add a switch or sensor to make it temporarily switch to minutes and seconds instead of hours and minutes. Or can just buy 2 more later. I will first try to use an Arduino then move to a PIC for something that is more power efficient.

I saw that it is possible to drive these direct driven displays with a microprocessor directly by driving the common pin and the digits with inverted signals to create a square wave with average voltage of 0V. That would require 9 pins for one display. I guess I need to use another IC (perhaps a 2 to 4 decoder) to switch between individual displays. If I can make this power efficient enough to be self sufficient with solar power indoors I guess I can technically make a clock that can outlast humanity. Or could make one of those tritium batteries by sandwiching tritium filled bulbs between solar panels, although it would be probably too expensive.

I got too excited that I can not sleep :(
IMG_1927.jpeg
 
Last edited:
Is this 7 segment LCD driver suitable? Only problem is that the standalone 10 pin 7 segment LCD displays I bought have 8 segments including the dot (DP). ICM7211AM has a black plane driver output pin so the dots can be driven with that clock output by inverting the clock and connecting it to an input of an AND gate. By connecting the other input of the AND gate to one of the output pins of a microprocessor it should be possible to control the dots. Or could just use a single inverter connected to black plane driver output to permanently turn on the middle dot to separate hours with minutes. I could not find a LCD driver like this that supports 8 segment LCD displays.

That does bring the question though. I can probably make a circuit that replicates the functionality of this one IC. This IC uses between 10-50uA when the displays are blank.
If I use decoder ICs and a separate clock, or divide the RTS modules (If I use one) clock to get something about 100Hz with an IC to get a back plane driver, the total power consumption would be probably much higher and I would still need more ICs to get the job done so it would be even higher.

Apparently the common way to drive LED based 7 segment displays is called charlieplexing, I am guessing that it would not work because LCDs are not made out of diodes.

The way this LCD driver IC is made out makes a lot of sense. Since it has latches in the inputs the microprocessor does not need to constantly keep its output pins enabled. This way it should be able to be put into sleep mode for decreasing power consumption.

If I write the code without considering using interrupts, create the black plane driver by just using the outputs of the microprocessor and just use decoders directly to drive the displays what would be the power consumption.

I would need 5-32 decoder for total of 32 display segments. Since they only sell up to 4-16 decoders I can use 2 of those and a 2-4 decoder to select the common pins. Is it better to drive a square wave output from the micro controller or use a separate clock signal and its inverted version to drive the segments and common pins. If I use a clock outside of the MCU I would need a way to connect it to the decoders with something equivalent of a relay. Obviously I would not want to use 10 relays in this as I want to keep the power consumption low.
1713450266344.png
 

New Articles From Microcontroller Tips

Back
Top