DIY Leta - a Wrist Watch Using Stm32 and Monochrome UI

by Snoopymeow in Circuits > Wearables

718 Views, 13 Favorites, 0 Comments

DIY Leta - a Wrist Watch Using Stm32 and Monochrome UI

P1210214.JPG
P1210208.JPG
IMG_20250103_010906030.jpg

The name Leta(summer in Russian) is started from my summer when i saw guys made wrist watch with atmel MCU, and another with chinese MCU. I decided to make my own, with the hope that i can gain some in embedded field. It took me about one year to almost complete this, althought there still some bugs. Those links to my project in github profile include this project, my mini RTOS ( AK-mOS) and my monochrome Oled GUI.

In case you can not find resources. Here is project repo:

https://github.com/snoopy3921/Leta

Supplies

10937-01.jpg
10494-01b.jpg
s-l1200.png
images.jpg
51fI4HS4hQL._AC_UF1000,1000_QL80_.jpg
images (1).jpg
s-l1200.jpg
Screenshot 2025-01-02 234250.png
799.jpg
header-hembra-4x1-254mm.jpg
51fTjbcLEKL._AC_UF1000,1000_QL80_.jpg
Screenshot 2025-01-02 235045.png
maxresdefault.jpg

MPU6050 - IMU

HCM5883L - Compass

AHT21 - Temp and humid (Development on going)

BLE - RF-BM-4044B4 from RF-star Technology (Development on going)

Microcontroller - Stm32f103CBxx

Regulator AP2112 - 3.3V

Charger module TP4056

32.768 kHz crystal crystal oscillator FC-135

8 MHz crystal crystal oscillator SMD-3225

4 Buttons 2x4x3.5mm

USB type-C female 16-pin

Lipo battery 3.7V

Leds 0603 SMD

Resistor, capacitors 0402

Female header 4x1 2.54mm

ST-link V2


NOTE that all these components must be in SMD type, not module. U can buy module then desolder components.

Prepare Hardware

Pcb.png
3_pcb.png

So this is strongly depends on hardware. If your want to build your own, fell free to use my source. I strongly recommend that build your own with whatever module you want, you might find that my miniRTOS and GUI help you a lot.

If you want to build exactly same as mine. First you need a PCB. Go to my github repo here:

https://github.com/snoopy3921/Leta

And in hardware folder, to_manufacture.zip is what you need to send to JLPCB. size is 35mm x 25mm (width x height). Unfortunately, i did not make SMT, so that you need to do soldering yourself. All components is 0402, so you can easily find it.

Leta.zip contains the silkscreen to instruct where to place which component. Because PCB is to small to print silkscreen.


My 3d design skill is not good, here is 3d file to print enclosure. But i recommend you design your own and use 4k printer. The step file Leta.step is the 3d model of this watch, remember to add offset 1.6mm at the display side. Sorry about it because i can not generate 3d model for the screen.

Program

The program i made in Linux Ubuntu enviroment. If you dont want to dive that much. Here is binary file OLED_WATCH.bin to upload to the watch via ST link V2


Download STM32 ST-Link Utility, connect the watch, open file OLED_WATCH.bin to program and flash at adress 0x08000000


Or if you familiar with these stuffs, you can look at software components to modify whatever you want, like display you name when the watch show up, change startup effect, play a monochrome GIF,...

The watch use my custom miniRTOS so u may want to look at it to create your custom tasks:

https://github.com/snoopy3921/AK-mOS---The-simple-RTOS-on-AK-base-kit

And the GUI that does moving, fading, ... Take a look to understand how to create a text label, a switch, how to make it animate,...:

https://github.com/snoopy3921/Monochrome-Oled-GUI


If you want to program it, Dm me when you have at least Linux Ubuntu set up on your computer via email giahuy392001@gmail.com

That is all!

Demo!

Screenshot 2025-01-03 000120.png