# HG changeset patch # User Michiel Broek # Date 1540156328 -7200 # Node ID 87b86d16b1d688bb2cbe78b055ed735424c575c6 # Parent 6d1f512cd074b4be1720a5c5efe8db7683d2b883 De README flink bijgewerkt. diff -r 6d1f512cd074 -r 87b86d16b1d6 README.md --- a/README.md Sun Oct 21 13:07:50 2018 +0200 +++ b/README.md Sun Oct 21 23:12:08 2018 +0200 @@ -1,9 +1,67 @@ -# BrewBoard on ESP32 using FreeRTOS. +# BrewBoard op een ESP32 onder FreeRTOS. + +Dit is een vervolg project van het BrewBoard op de Arduino Nano met de +MBSE-ArdRims software. Tot begin 2017 zijn deze kant en klare boards via +het forum hobbybrouwen.nl verspreid. + +Het plan was om een upgrade kit te maken op basis van de WeMos chip die bijna +gelijk is aan de Arduino Nano maar ook WiFi heeft. In de praktijk bleek dat +niet zonder prpblemen te werken, WiFi en brouwen tegelijk is teveel voor een +WeMos chip (ESP8266). Toen ongeveer op hetzelfde moment de markt overspoeld +werd door BrewMonks, EasyBrew en gelijke systemen was er ook geen behoefte +meer om hiermee verder te gaan. + +Voor mezelf heb ik een nieuw board gemaakt (op experimenteerprint) wat even +groot is als het oorspronkelijk board wat ik gebruik, inclusief dezelfde +plaats voor alle schroef aansluitingen. De bedoeling is dit board zo uit te +kunnen wisselen met het Arduino board. Op dit board wordt de Doit ESP32 Devkit +V1 gebruikt. Dit is een ESP32 development board met meer pinnen dan de meeste +boards. De meeste boards hebben 30 pennen, deze heeft er 36. En dat is precies +genoeg, de 30 pins boards hebben onvoldoende aansluitingen. + +Als display wordt een 320x240 TFT touchscreen gebruikt wat aangesloten wordt +via een SPI bus. Op een tweede SPI bus zit een SD/MMC kaartslot wat aan de +voorzijde bereikbaar is. Dit slot wordt gebruikt om recepten in te voeren en +om log bestanden op te slaan. Alle overige aansluitingen op het ESP32 board +worden gebruikt voor de SSR's, relais en buzzer. + +In vergelijking met de Arduino Nano heeft de ESP32 de volgende hardware: + +* 2 processors op 240 MHz, +* WiFi +* BlueTooth, maar wordt niet gebruikt. +* Timers en een Realtime Klok. +* 2 SPI bussen (voor de TFT en SD/MMC). +* OTA, Over The Air updates. +* Nog veel meer bussen die we niet gebruiken. + +De software is FreeRTOS, dit is een mini embedded OS wat eenvoudig meerdere +taken tegelijk kan uitvoeren, dit maakt het programmeren van de brouw software +een stuk eenvoudiger als onder de Arduino programmeer opmgeving. + +Een voorbeeld: de taak task_DS18B20 doet niets anders dan de twee bussen met +temperatuur sensoren uit te lezen en de gemeten temperaturen op te slaan zodat +andere taken die waardes kunnen gebruiken. Taken kunnen dus klein, simpel en +hopelijk vrij van bugs zijn. + +Het hele systeem zit in elkaar door kleine taken die wel samen moeten werken +om tot een totale applicatie te komen. + +Tot zover de achtergrond van dit project. Ik heb dit voor mezelf gemaakt omdat +het MBSE-ArdRims board wat leuke dingen niet kon. Omdat er geen markt is komt +er ook geen printje, maar het schema is wel beschikbaar. De software is ook +beschikbaar en kun je gewoon gebruiken. Dus wil je hiermee aan de gang, doe je +best, er is alleen geen enkele vorm van support. + +Nog even, ik wilde nog meer dingen toevoegen aan de software (MQTT) maar ook +een ESP32 heeft zijn beperkingen. Die liggen wel stukken verder dan de ESP8266 +of Arduino Nano, maar ze zijn er. Het belangrijkste is toch het afhandelen van +het brouwproces. + + TODO: - - - Recepten uploaden via de webserver. - Praktijktest. - Nosleep js code toevoegen. - On WiFi disconnect cleanup VNC websocket.