24/05/2026

Travel watch winder

The next project I embarked on, was a travel watch winder.



I have a few mechanical watches, and occasionally I like to wear one watch for a week and then swap out to another for the next week. This means that the watches would stop unless I wind them during the week, that is a nuisance as setting a mechanical watch is a bit of a hassle.

Sure there are commercial options, but they tend to be a bit pricy and this seems like a nice project to do. So let's proceed !

Design goals

  • Portable enough to take on trips
  • Able to work on battery power for at least 24 hrs
  • USB-C chargeble
  • Programmable on operating hours and turns per day
  • Nice looking

Tools used in this project

  • Computer for programming and PCB design
  • Multimeter for troubleshooting
  • Soldering iron
  • Wire clamping tool
  • Breadboard
  • 3D printer
  • Sowing thread and needle


Bill of Materials

  • Raspberry Pi Pico W2
  • TP4056 Charger Module
  • Buck Boost Converter
  • ULN2003 Darlington Array
  • 28BYJ-48 stepper motor
  • DS1302 Real Time Clock
  • Buzzer
  • FDN340P P-channel mosfet
  • 2 x BSR802 N-channel mosfet
  • BC337 Transistor
  • Resistors 3 x 200 kΩ, 2 x100 kΩ, 10 kΩ
  • 2 x Diode BAT60A
  • Ceramic capacitor 10 nF
  • Electrolyte capacitor 220 µF
  • 18650 Lithium Ion battery
  • Power switch
  • JST-XH connectors (5 pole and 2 pole)
  • 3 x 2-pin generic connectors
  • Lots of black PLA filament
  • Brass heated inserts (for assembly)
  • M2 and M3 screws
  • Black fake leather

Links to resources


I ordered the stepper motor and the real time clock as ready modules from Amazon.

I began by planning the circuitry and the initial concepts of the program for the device. The very first bits of progamming had me study the web server functionality. Again, I found an excellent library from Gurgleapps website. I built the web interface with basically three features, adjust the number of revolutions per day, the time window during which those revolutions should take place and a calibration function to adjust the winder orientation. The idea with the latter being that I would keep a tally of the steps that the motor takes, and if it starts in a known position, it would end up back in the same position. This is how the interface turned out.







The winder has a battery backed up real time clock module. I decided (for simplicity) to not include a time setting function, but rather every time you press the save settings button on the first screen, the winder is set to the same time as the device (like your phone) controlling it.

While I was working on the code, I also needed to start testing the circuits. For this I assembled the whole circuit on a breadboard. In this project I was still using mainly through hole components, but for the power rail I needed to use two SMD mosfets so I decided to venture into SMD soldering. It wasn't too hard, as long as you didn't need to remove any of those components. 

After the circuit was completed, I ordered the PCB from PCBWay and started to design the enclosure. And boy did that take a lot of time. Like I mentioned in the previous project, the printer at the library was slow, and I managed to book only one session a week. So it really was frustrating when the parts did not turn out as expected ! So at the end of the day I ended up buying my own 3D printer, but I'll do another post about that later.

The PCB installed in the electronics sled



Then it was time to assemble everything. Using the heated inserts and some screws, I put together all the 3D printed parts. To make it look nicer, I glued fake black leather to the outer surface of the winder. For the cap, I purchased 1.5 mm clear plexiglass. That is just about thin enough to cut with scissors. I glued that and it's frame together with Gorilla super glue.

The one part that I am not at all satisfied with, is the cushion on which to actually mount the watch. In the end I settled on a piece that I sew together and filled with foam, but it could look nicer. Also it is held in place by squeezing it into a sort of a fork, and the PLA fork gives way over time. However the design does allow me to come up with a better solution later.



So this is how it finally turned out !


Pretty good all things considered ! I have taken it on trips, and it does serve its purpose pretty well. The battery lasts for about a day (depending on how many revolutions you want in a day), but I normally leave it plugged in.

Conclusions

I'd call the project a success, although certain things I could have done differently. One thing that didn't work out quite as expected, was the calibration feature. The stepper motor misses steps for various reasons (the watch is causing too much torque if not aligned well), so even if I calibrate it, it normally ends up in a different position. Another surprise was the terrible accuracy of the RTC circuit, it varies even minutes a day ! There was also a tiny mistake on the PCB that I was however able to fix by cutting a wire. For some reason, the real time clock would stop when going to battery power. The solution was to cut the wire to Pin 1 on the PCB. Also there were certain finishing details that didn't turn out perfect.

During the project, I spent way too much time tweaking the mechanical design. Once I got my own 3D printer, it really helped a lot as I could turn around a part in a few hours instead of weeks. I also managed to fry one Pico while soldering it. I suspect, that the large GND plane on the PCB was the culprit, as it meant I needed to heat the pin for way too long to get the solder to flow correctly. I changed the strategy after that, I now solder header pins to the PCB and then snap the Pico in place after soldering. 

My son did ask me to make him one too, but with a different form factor. Instead of making another one just like this, I decided to revise the design to fix the issues I came up with this one. But that is for another post.




16/05/2026

New power source

In my first project, I used AA batteries as the power source for the device. While being easy to implement, it did have a few drawbacks. It is bulky, it cannot be recharged and it does cost some money. Also with 3 AA batteries, you can provide a 4.5V voltage. Not quite 5V which would be ideal for some more power hungry devices such as a stepper motor.

So I started to investigate options. I pretty fast found ready made components from Amazon, that would do the trick with lithium ion batteries.

TP4056 charging module

This thing would take care of the charging and protection of the Lithium-Ion battery, but it would only produce whatever voltage the battery has, so it needs a boost converter to go with it. Well I found this piece again from Amazon.

Adjustable boost converter

So with these two components working together, I can manage the battery charging and output voltage. The boost converter is capable of outputting up to 26V at 2A max load (although they recommend max 1A on continuous use). I don't imagine I would be needing anything above 5V for a while though.

The boost converter was a bit of a tricky piece of hardware. It has a microadjustable potentiometer to adjust the output voltage, and it was a bit confusing to dial in the desired output voltage, but at the end I did manage to make it work.

One feature that this combo was lacking, was the ability to bypass the charging circuit for the load when charging the battery, however I did find resources on the internet to build that yourself with a mosfet and a diode. The idea is, that if you route the power to your device through the charger, the battery ends up trickle charging continuosly, which is not good for the battery. This is not an issue if you don't charge and use the device simultaneously.

Let's see how the next project turns out ! The idea is to combine everything into a single PCB to reduce the need for additional wiring.


Amazon links to above components

https://www.amazon.de/GTIWUNG-Battery-Charging-Protection-Functions-Pack-15-Type-C-USB-3-7-V-holder/dp/B0CSJR4CYJ?ref_=ast_bl_cpl_dp&th=1

https://www.amazon.de/-/en/Converter-QIQIAZI-Voltage-Compatible-Arduino/dp/B0FVM69RGB/

08/05/2026

Funny looking cooking timer

This was my first electronics project since childhood, and compared to those days it was a project with steroids !

Design goals

  • Has to look funny !
  • Should be able to count down from 99 minutes or 99 hours
  • Battery operated
  • Raspberry Pi Pico based

Tools used in this project

  • Computer for programming and PCB design
  • Multimeter for troubleshooting
  • Soldering iron
  • Wire clamping tool
  • Breadboard
  • 3D printer

Bill of Materials


I started the project by designing the software to run on the Raspberry Pi Pico. To do that I also needed to build semi simultaneusly the test circuit on a breadboard, and in order to do that I needed to design the circuit with KiCAD. So I ended up doing all these tasks simultaneusly. From the beginning, I decided that I would tolerate simple mistakes, the primary goal would be to make it work.

So the circuit ended up being rather simple, which was good as it made this easy to test and would not set that bar too high.

Download PDF

Not shown in the diagram is the actual power source which was 3 AA batteries and the power switch, as these components would not end up on the PCB. So in addition to the different connectors to connect peripherials, the circuit only had a Schotky diode, a transistor, a resistor and a buzzer. A dip switch was added to the circuit to control simple settings of the timer. The other peripherials are a 7 segment display, a rotary encoder and the before mentioned power switch. This being my first design, I opted to use through hole components for everything, or rather I did not even consider using SMD. At the time I did this I was under the impression that SMD soldering needs expensive hardware and is something that is way out of my league (I later learned that that is not the case).

Next step was to do the coding. It did not end up being very elegant, this being my first ever Python project. The way the timer operates is simple, when you turn it on, it will default to previous set time, and when you press the rotary encoder it will start counting down to zero. When it reaches zero it sounds a morse code signal. Part of coding these days is copying the work of others (when they publish their work to public domain), so I ended up using a library from a developer called GurgleApps to handle the rotary encoder. You can find the entire micropython implementation in my Github repository.

Now it was time to test the circuit before placing an order for it. After a ton of debugging and problem solving, I did manage to make it work !



Then it was time to proceed to the mechanical implementation. In Finland where I live, most libraries have 3D printers that are either free to use or very inexpensive to cover the material costs. Mine was free. So I started booking times to print the enclosure. I designed the enclosure using Fusion 360 CAD software, which is rather capable and Autodesk also offers free licence to personal use. 

But that turned out to be the most time consuming part of the project. I must have printed each part at least five times before I got it right. I have since learned that this is pretty normal, seldom you get it right on the first try. There is always some small detail or tolerance that you did not anticipate. The reason this took ages was that the printer at the library was rather slow, some of the parts would take 7-8 hours to print, and the library allows you to have only one booking at a time (so that others get to use it too) and since the printers are rather popular, it might take a week before you get a new booking. That is very frustrating if you just spent several hours printing a component that turned out wrong.

The library only had black filament, so I needed to figure out a way to make certain parts of the enclosure red. After I discarded the idea of painting it, I decided to glue red paper on those parts to make the desired look.

So at the end, this is how it turned out !


I use the timer almost every day when I cook, and it does bring me joy. It turned out to be even more convenient than the timer on my stove, as it simpler to operate and it remembers from the last time how long the eggs need to boil. 

Conclusions

Although this was a rather simple project, it did teach me a lot. I learned a bit of Python, I learned to design things for 3D printing and I also learned a lot about 3D printing in general. There were some design flaws too, the way I designed the enclosure means that I need tools to change the batteries (though they last for months in normal use). The biggest flaw however was, that the buzzer does not make a lot of noise. If I am not in the kitchen and there is a lot of ambient noise such as a TV, I may not hear it going off. A big takeaway was also the need to really concentrate on the 3D design, that will take a ton of time if you need to keep printing the same parts over and over again. It is also pretty important to get the PCB design right, as it takes a couple of weeks to get them from China (unless you are willing to pay serious money for quick delivery). This project had a very simple PCB, so I got it right on the first try.

If you'd like to try the same project, you have the schematics and the code available on this page. You can order the same PCB from PCBWay using this link. (Disclaimer: If you do decide to order this, I earn a small commission). I have since I made this altered the CAD designs, so I do not have the STL files for 3D printing available anymore. Also the designs are for the specific display, switch etc that I used, so they would probably not work with other components.

04/05/2026

So I decided to start doing electronics

When I was a kid, I enjoyed doing different electronics projects. Now that I am nearing retirement, it's time to pick up new hobbies or restart old ones. This seemed like a natural choice since this was something that I enjoyed a lot back in the day.

Back then, the typical way to do a project (at least for me) was to find a a ready made kit, or at least schematics that someone else had desinged and simply implement it. Even that was a usually a lot of work, since it typically involved making my own PCBs with different types of not so healthy chemicals.

But I quickly discovered, that thats's not how its done today. Today you design the PCB with some sort of CAD software on your computer and then order it professionally made from China. That sounds like a lot more pleasent way of doing this !



So now I needed to figure out how to start all this. I had already thought a lot about what kind of projects I would undertake. I did know that I was interested in doing things with a microcontroller, so I started studying different options. For different reasons I finally decided that I would start with a Raspberry Pi Pico and Micropython, as that seemed like a well supported way of getting started. 

So first I needed to figure out how to write Micropython. Having never done anything really with Python, that seemed like a good way to start. I chose Thonny as my development environment.

Next step was to choose how to design the circuits around the Pico. After some evaluation I decided that KiCAD would be the right choice for me (for no other particular reason than it being free to use) so I started to learn that.

Now the only thing left to do after all this, was to decide what my first project would be, more on that on the next article.

I moved over to SMD components

At first, I always thought that using SMD components is something that requires heavy duty industrial processes. The components are incredib...