A comprehensive educational resource for designing and building clocks and watches using MicroPython, AI, and low-cost components. This project combines low-cost hands-on electronics to make teaching computational thinking principles fun!
- Comprehensive Tutorials: Step-by-step guides from basic setup to advanced projects including basic setup for students with no prior Python coding experience
- Multiple Clock Kits: 15+ different clock implementations including OLED, LED, NeoPixel, and e-paper displays
- MicroPython Code: Well-documented examples for various clock and watch platforms
- AI Integration: Use generative AI prompts to create custom clock designs
- Interactive Simulations: Browser-based microsimulations for learning concepts
- Raspberry Pi Pico/Pico W or compatible microcontroller
- Basic electronic components (displays, real-time clocks, breadboards)
- Thonny IDE for development
-
Clone the repository
git clone https://github.com/dmccreary/clocks-and-watches.git cd clocks-and-watches -
Visit the documentation
-
Choose your first project
- Simple TM1637 LED Clock - Great for beginners
- Large OLED Clock - Popular choice
- NeoPixel Binary Clock - For the adventurous
Here are some of the main folders in the site:
├── docs/ # Documentation source files
├── docs/
│ ├── setup/ # Get your environment setup
│ ├── lessons/ # Tutorial code examples
│ ├── prompts/ # Sample prompts to generate code
│ ├── sims/ # MicroSimulators of clock and watch components
├── src/ # MicroPython source code
│ ├── kits/ # Individual clock project implementations
│ └── lib/ # Shared libraries and utilities
├── slides/ # Presentation materials
└── fonts/ # Custom fonts for displays
| Kit | Difficulty | Features |
|---|---|---|
| TM1637 LED | ⭐ | 4-digit display, simple wiring |
| OLED SSD1306 | ⭐⭐ | I2C interface, custom fonts |
| NeoPixel Clock | ⭐⭐⭐ | RGB LEDs, creative layouts |
| E-Paper Display | ⭐⭐⭐⭐ | Ultra-low power, always-on |
- Course Description: Complete curriculum overview
- Setup Guide: Hardware and software installation
- Interactive Simulations: Learn concepts in your browser
- AI Prompts: Generate custom designs with ChatGPT
We welcome contributions! Please see our contribution guidelines for details.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Documentation: https://dmccreary.github.io/clocks-and-watches
- MicroPython: micropython.org
- Raspberry Pi Pico: https://www.raspberrypi.org/products/raspberry-pi-pico/
This project is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. See the license.md file for details.
Dan McCreary - Educational Technology Consultant
- Website: dmccreary.github.io/dmccreary
- GitHub: @dmccreary
- The MicroPython community for excellent documentation
- Students and educators who have tested these projects
- Contributors to the open-source hardware and software ecosystem
⭐ Star this repository if you find it helpful for learning MicroPython and electronics!