Tue, 23 Oct 2018 20:39:40 +0200
Updated README
5 | 1 | # BrewBoard op een ESP32 onder FreeRTOS. |
2 | ||
3 | Dit is een vervolg project van het BrewBoard op de Arduino Nano met de | |
4 | MBSE-ArdRims software. Tot begin 2017 zijn deze kant en klare boards via | |
5 | het forum hobbybrouwen.nl verspreid. | |
6 | ||
7 | Het plan was om een upgrade kit te maken op basis van de WeMos chip die bijna | |
8 | gelijk is aan de Arduino Nano maar ook WiFi heeft. In de praktijk bleek dat | |
9 | niet zonder prpblemen te werken, WiFi en brouwen tegelijk is teveel voor een | |
10 | WeMos chip (ESP8266). Toen ongeveer op hetzelfde moment de markt overspoeld | |
11 | werd door BrewMonks, EasyBrew en gelijke systemen was er ook geen behoefte | |
12 | meer om hiermee verder te gaan. | |
13 | ||
14 | Voor mezelf heb ik een nieuw board gemaakt (op experimenteerprint) wat even | |
15 | groot is als het oorspronkelijk board wat ik gebruik, inclusief dezelfde | |
16 | plaats voor alle schroef aansluitingen. De bedoeling is dit board zo uit te | |
17 | kunnen wisselen met het Arduino board. Op dit board wordt de Doit ESP32 Devkit | |
18 | V1 gebruikt. Dit is een ESP32 development board met meer pinnen dan de meeste | |
19 | boards. De meeste boards hebben 30 pennen, deze heeft er 36. En dat is precies | |
20 | genoeg, de 30 pins boards hebben onvoldoende aansluitingen. | |
21 | ||
22 | Als display wordt een 320x240 TFT touchscreen gebruikt wat aangesloten wordt | |
23 | via een SPI bus. Op een tweede SPI bus zit een SD/MMC kaartslot wat aan de | |
24 | voorzijde bereikbaar is. Dit slot wordt gebruikt om recepten in te voeren en | |
25 | om log bestanden op te slaan. Alle overige aansluitingen op het ESP32 board | |
26 | worden gebruikt voor de SSR's, relais en buzzer. | |
27 | ||
28 | In vergelijking met de Arduino Nano heeft de ESP32 de volgende hardware: | |
29 | ||
30 | * 2 processors op 240 MHz, | |
31 | * WiFi | |
32 | * BlueTooth, maar wordt niet gebruikt. | |
33 | * Timers en een Realtime Klok. | |
34 | * 2 SPI bussen (voor de TFT en SD/MMC). | |
35 | * OTA, Over The Air updates. | |
36 | * Nog veel meer bussen die we niet gebruiken. | |
37 | ||
38 | De software is FreeRTOS, dit is een mini embedded OS wat eenvoudig meerdere | |
39 | taken tegelijk kan uitvoeren, dit maakt het programmeren van de brouw software | |
40 | een stuk eenvoudiger als onder de Arduino programmeer opmgeving. | |
41 | ||
42 | Een voorbeeld: de taak task_DS18B20 doet niets anders dan de twee bussen met | |
43 | temperatuur sensoren uit te lezen en de gemeten temperaturen op te slaan zodat | |
44 | andere taken die waardes kunnen gebruiken. Taken kunnen dus klein, simpel en | |
45 | hopelijk vrij van bugs zijn. | |
46 | ||
47 | Het hele systeem zit in elkaar door kleine taken die wel samen moeten werken | |
48 | om tot een totale applicatie te komen. | |
49 | ||
50 | Tot zover de achtergrond van dit project. Ik heb dit voor mezelf gemaakt omdat | |
51 | het MBSE-ArdRims board wat leuke dingen niet kon. Omdat er geen markt is komt | |
52 | er ook geen printje, maar het schema is wel beschikbaar. De software is ook | |
53 | beschikbaar en kun je gewoon gebruiken. Dus wil je hiermee aan de gang, doe je | |
54 | best, er is alleen geen enkele vorm van support. | |
55 | ||
56 | Nog even, ik wilde nog meer dingen toevoegen aan de software (MQTT) maar ook | |
57 | een ESP32 heeft zijn beperkingen. Die liggen wel stukken verder dan de ESP8266 | |
58 | of Arduino Nano, maar ze zijn er. Het belangrijkste is toch het afhandelen van | |
59 | het brouwproces. | |
60 | ||
61 | ||
0 | 62 | |
63 | ||
64 | TODO: | |
65 | - Praktijktest. | |
66 | - Nosleep js code toevoegen. | |
8 | 67 | - Bij infusie (en decoctie?) maisch stappen een prompt. |
9 | 68 | - Update /spiffs via internet. |
0 | 69 |