👉 See Winderoo in action on youtube 👈
Winderoo is open source firmware which adds "smart" functionality, and a GUI, to your OSWW or other microcontroller equipped watch winder.
Note
OSWW is an open source modular watch winder, which you can read more about on GitHub or Printables.
- Settable RPD (rotations per day) between 100 - 960rpd
- Single direction (clockwise / anti-clockwise) or bi-directional winding.
- Settable start time. Have it wind while you're asleep, or while you're away, or anytime for that matter.
- Manual cycle start / stop.
- 3 seconds of rest after 3 minutes of rotation, in every mode.
- Estimated cycle duration (how long it'll take to wind your watch).
- Cycle progress display (how far along the current winding routine is).
- Software or optional physical button to trigger ON/OFF state, so you can disable the winder completely.
- Simple setup. Flash the firmware and File System with a few clicks, then connect your phone (or other device) to the winder's setup wifi network & add it to your home network.
- There's no app required! You control it from a web browser.
- Minimal electronics / programming experience required
- You must replace the Pi Pico, as spec'd in the OSWW build guide, with an ESP32. This project will not run on the Pi Pico!
Important
This project is an add-on to your already built Open Source Watch Winder (OSWW)
- Visual Studio Code
- PlatformIO
- Note: the "extensions" button has changed since Platformio has created their install guide. You can access the extions pane with the following key combinations:
- Windows: Ctrl+Shift+X
- macOS: Command+Shift+X
- Note: the "extensions" button has changed since Platformio has created their install guide. You can access the extions pane with the following key combinations:
- You may or may not need these drivers, but some 'knock off' ESP32 dev boards require them.
- CP210x Drivers
- If the CP210x drivers don't work: CH340 Drivers
This project welcomes contributions. Please follow the regular git workflow; fork + PR to contribute.
Winderoo has multi-language support, and we welcome adding more langauges.
To add another language:
- Duplicate one of the current localizations, and translate the text:
src/angular/osww-frontend/src/assets/i18n/
stores the current localizations.
- Add a new langauge menu item here to enable your langauge:
src/angular/osww-frontend/src/app/header/header.component.html
- Open a Pull Request
- Angular with Angular Material
- Frontend Readme
- C++ based API with mDns, a web server, local file system, and a bunch of other things.
The API has 4 endpoints. You can explore them in the attached Open API definition.