Dit project beschrijft de creatie van een compacte, intuïtieve universele timer gebruikmakend van het CrowPanel 2.1-inch HMI ESP32 Rotary Display.
Belangrijkste functionaliteiten:
- Bediening: De timer wordt primair bediend via een rotary encoder (instellen tijd), een drukknop (start/pauze/reset) en een touchscreen (wijzigen tijdsbereik).
- Visuele weergave: Het circulaire display gebruikt een framebuffer voor vloeiende overgangen. Er zijn vier kleurgecodeerde tijdsbereiken: 1 minuut (geel), 10 minuten (turquoise), 30 minuten (oranje) en 60 minuten (magenta).
- Audio-indicatie: Via een PCF8574 I2C I/O expander en een actieve buzzer wordt het einde van de aftelling gesignaleerd met drie piepjes en rode flitsen op het scherm.
Technische vereisten: Voor de installatie is de Arduino IDE nodig met ESP32 Core versie 2.0.17 en de Arduino_GFX bibliotheek (v1.6.1). Specifieke hardware-instellingen voor de ESP32-S3 zijn vereist, waaronder 16MB Flash, het 'Huge APP' partition scheme en OPI psram.
DIY ESP32 Universele Timer met Touchscreen
Projectomschrijving
Het CrowPanel 2.1-inch ESP32-S3 display kan worden getransformeerd in een compacte, intuïtieve en zeer praktische universele timer met zowel visuele als hoorbare indicaties.
Dit project is gebaseerd op het CrowPanel 2.1-inch HMI ESP32 Rotary Display. Deze compacte en praktische module combineert een circulair kleuren-touchscreen, een ESP32-S3 microcontroller, een rotary encoder met een drukknop en een I2C-connector voor communicatie met externe apparaten. Deze combinatie van functies maakt het een ideaal platform voor een universele timer met een strakke, gebruiksvriendelijke interface en een eenvoudige manier om de gewenste tijd in te stellen.
Dit project is gesponsord door PCBWay. In de PCBWay Open Source Community zijn talloze nuttige projecten te vinden in verschillende categorieën. Hier kunnen gebruikers ook Gerber-bestanden downloaden of kant-en-klare PCB's bestellen.
Functionaliteit en Bediening
Het hoofddoel was om een timer te creëren die bijna volledig met de rotary encoder kan worden bediend:
- Tijd instellen: Draai aan de encoder om de gewenste tijd in te stellen.
- Start/Pause: Een korte druk op de knop start, pauzeert of hervat de aftelling.
- Reset: Een lange druk op de knop zet de timer onmiddellijk terug naar nul.
Visuele weergave
Het circulaire display dient als visuele representatie van de resterende tijd. Het rode vlak representeert de geselecteerde of resterende tijd, terwijl het witte vlak geleidelijk toeneemt tijdens de aftelling. Dankzij tekeningen op basis van een framebuffer verlopen alle grafische wijzigingen vloeiend en zonder hinderlijk flikkeren.
Tijdsbereiken en kleuren
Er zijn vier tijdsbereiken beschikbaar, die kunnen worden gewijzigd door op het onderste gedeelte van het display te tikken. Elk bereik heeft een eigen kleurcode om de resterende tijd makkelijker te kunnen inschatten zonder de numerieke weergave af te lezen:
- 1 minuut: Geel
- 10 minuten: Turquoise
- 30 minuten: Oranje
- 60 minuten: Magenta
Audible indicatie
Voor extra meldingen is er een externe PCF8574 I2C I/O expander en een actieve buzzer aangesloten. Wanneer de aftelling nul bereikt, knippert het display drie keer rood terwijl de buzzer drie gesynchroniseerde piepjes geeft.
Deze compacte timer is zeer eenvoudig te bedienen en kan nuttig zijn in de werkplaats, keuken, laboratorium, bij fotografie, elektronica-experimenten of overal waar een eenvoudige visuele countdown timer nodig is.
Installatie en Configuratie
Om een zwart scherm of ongewenst flikkeren te voorkomen, zijn de volgende installaties en instellingen noodzakelijk:
Software:
- ESP32 Core versie 2.0.17 in de Arduino IDE.
- Arduino_GFX bibliotheek versie 1.6.1.
ESP32 S3 instellingen:
- Flash Size: 16MB
- Partition Scheme: Huge APP
- PSRAM: OPI psram
De meeste parameters zijn gedefinieerd aan het begin van de code, waardoor modificaties (zoals het wijzigen van kleuren of geometrie) eenvoudig kunnen worden doorgevoerd. De volledige Arduino-code en aanvullende informatie zijn beschikbaar in de projectbeschrijving onder de bijbehorende video.
Benodigdheden
- 1 × CrowPanel 2.1-inch HMI ESP32 Rotary Display
- 1 × PCF8574 I2C I/O expander
- 1 × Buzzer
Bestanden
Schematic.jpg (JPEG-afbeelding)
Code V 0.9 Final .txt (Tekstbestand)
DIY ESP32 Universele Timer met Touchscreen
Projectomschrijving
Het CrowPanel 2.1-inch ESP32-S3 display kan worden getransformeerd in een compacte, intuïtieve en zeer praktische universele timer met zowel visuele als hoorbare indicaties.
Dit project is gebaseerd op het CrowPanel 2.1-inch HMI ESP32 Rotary Display. Deze compacte en praktische module combineert een circulair kleuren-touchscreen, een ESP32-S3 microcontroller, een rotary encoder met een drukknop en een I2C-connector voor communicatie met externe apparaten. Deze combinatie van functies maakt het een ideaal platform voor een universele timer met een strakke, gebruiksvriendelijke interface en een eenvoudige manier om de gewenste tijd in te stellen.
Dit project is gesponsord door PCBWay. In de PCBWay Open Source Community zijn talloze nuttige projecten te vinden in verschillende categorieën. Hier kunnen gebruikers ook Gerber-bestanden downloaden of kant-en-klare PCB's bestellen.
Functionaliteit en Bediening
Het hoofddoel was om een timer te creëren die bijna volledig met de rotary encoder kan worden bediend:
- Tijd instellen: Draai aan de encoder om de gewenste tijd in te stellen.
- Start/Pause: Een korte druk op de knop start, pauzeert of hervat de aftelling.
- Reset: Een lange druk op de knop zet de timer onmiddellijk terug naar nul.
Visuele weergave
Het circulaire display dient als visuele representatie van de resterende tijd. Het rode vlak representeert de geselecteerde of resterende tijd, terwijl het witte vlak geleidelijk toeneemt tijdens de aftelling. Dankzij tekeningen op basis van een framebuffer verlopen alle grafische wijzigingen vloeiend en zonder hinderlijk flikkeren.
Tijdsbereiken en kleuren
Er zijn vier tijdsbereiken beschikbaar, die kunnen worden gewijzigd door op het onderste gedeelte van het display te tikken. Elk bereik heeft een eigen kleurcode om de resterende tijd makkelijker te kunnen inschatten zonder de numerieke weergave af te lezen:
- 1 minuut: Geel
- 10 minuten: Turquoise
- 30 minuten: Oranje
- 60 minuten: Magenta
Audible indicatie
Voor extra meldingen is er een externe PCF8574 I2C I/O expander en een actieve buzzer aangesloten. Wanneer de aftelling nul bereikt, knippert het display drie keer rood terwijl de buzzer drie gesynchroniseerde piepjes geeft.
Deze compacte timer is zeer eenvoudig te bedienen en kan nuttig zijn in de werkplaats, keuken, laboratorium, bij fotografie, elektronica-experimenten of overal waar een eenvoudige visuele countdown timer nodig is.
Installatie en Configuratie
Om een zwart scherm of ongewenst flikkeren te voorkomen, zijn de volgende installaties en instellingen noodzakelijk:
Software:
- ESP32 Core versie 2.0.17 in de Arduino IDE.
- Arduino_GFX bibliotheek versie 1.6.1.
ESP32 S3 instellingen:
- Flash Size: 16MB
- Partition Scheme: Huge APP
- PSRAM: OPI psram
De meeste parameters zijn gedefinieerd aan het begin van de code, waardoor modificaties (zoals het wijzigen van kleuren of geometrie) eenvoudig kunnen worden doorgevoerd. De volledige Arduino-code en aanvullende informatie zijn beschikbaar in de projectbeschrijving onder de bijbehorende video.
Benodigdheden
- 1 × CrowPanel 2.1-inch HMI ESP32 Rotary Display
- 1 × PCF8574 I2C I/O expander
- 1 × Buzzer
Bestanden
Schematic.jpg (JPEG-afbeelding)
Code V 0.9 Final .txt (Tekstbestand)