hulp gevraagd voor arduino regelunit voor distilleer apparaat

Ja, ik heb wel een idee.
Je lijkt het overzicht te verliezen over de door { } ingekapselde codes.
Daarom begin je een nieuwe { die niet meer eindigt, of je eindigt een keer teveel en hebt dan een } over.
Om die reden heb ik destijds bij sommige { een // opmerking geplaatst met wat nummers erbij.

De IDE kan je een beetje helpen met de { }.
Als je namelijk je cursor rechts naast een { of } zet, zoekt de IDE de bijbehorende } of { op, en zet er een klein blauw kadertje omheen.
Zo kun je weer wat gemakkelijker in de gaten houden of je nog goed bezig bent.

Ik heb zo gezien dat je wel ergens begint met een controle of mm == 0, maar eindigt die { met een } waarbij de opmerking // 3 staat en dat klopt volgens mij niet.
Bovendien staan er binnen de { } die bij mm == 0 hoort, een controle of mm == 1, en dat moet een fout zijn.
Dit klopt dus precies met wat je denkt dat er gebeurt; er word op 2 voorwaarden gecontroleerd die nooit beide gelijktijdig waar kunnen zijn.
Dus voor je gaat controleren op mm == 1, moet je eerst de handelingen die horen bij mm == 0 afsluiten met een }.
Maar dan moet je ook weer zorgen dat als je klaar bent met die "mm == 0" handelingen, als laatste handeling mm naar de volgende status zet, dus mm = 1.

Gelijk na deze wijziging is de uitkomst van de controle mm == 1 waar, en word dus ook meteen het volgende stukje uitgevoerd.
Maar bij de volgende keer dat de loop doorlopen word, is in ieder geval mm != 0 ( != betekent niet waar) en word dat stukje niet doorlopen, maar het stukje mm == 1 wel

Verder teken je je standaard menu wanneer mm == 0.
Maar tijdens de start word mm = 1 gemaakt en dus word er bij de start nooit een hoofdmenu getekend waar je naar het OPTIE menu kunt geraken.
Vanuit dat OPTIE menu kun je uiteindelijk weer terug naar het hoofdmenu gaan, (via Item 4).
Daar word mm = 0 gemaakt, waarna het menu getekend kan worden.
Daarvoor moet je dus eerst blind in het OPTIE menu terecht zien te komen, en das waarschijnlijk wel er lastig.
Dit kun je voorkomen door mm niet als 1 te initialiseren, maar als 0.
Verder worden dus de acties die verricht moeten worden als mm == 0, niet afgesloten (door de }) voor er gekeken word of mm == 1.
Dat is dus je probleem voor nu.
Als je de } op de juiste plaats hebt gezet, ga je dus ook een } een stuk verder op tegen komen die teveel is en waardoor je een foutmelding gaat krijgen.
Je kunt controleren of de { en } die de IDE aangeeft als bij elkaar horend, ook volgens jou bij elkaar horen.
Zo niet, moet je er dus eentje bij zetten of weghalen op de juiste plaats.
Elke keer als je wat aan de { } hebt veranderd, moet je gaan kijken of alle andere dan nog kloppen.

Om jezelf niet te verliezen met die { }, kun je het beste bij elk exemplaar een opmerking maken waardoor ze ineens heel veel gemakkelijker te herkennen zijn.
Dan zie je veel sneller of je alles nog "op een rijtje" hebt.
Alleen een los nummer erbij zetten zoals ik voor mezelf gedaan heb, zal waarschijnlijk niet volstaan.

Houd ook in de gaten dat door het knippen en plakken, het overzicht een stuk lastiger kan worden als je niet heel goed nadenkt over de plaats waar je dingen weghaalt en /of neerzet.
En nogmaals, zet er voldoende commentaar bij.
Zet trouwens geen { } in je commentaren.
Want de IDE zou die kunnen aanzien als een } of { die bij een andere hoort als je wil zoeken wie er bij elkaar horen.
Voor de werking van je programma code word dat dan wel op de juiste manier verwerkt, maar niet voor als je het op boven beschreven manier wil controleren.

Ik realiseer me dat deze lap tekst wellicht wat lastig te volgen is, maar ik probeer zo goed mogelijk te omschrijven wat ik bedoel.
Maak anders eerst een lijstje met dingen die ik hier heb aangewezen (das dus meer dan 1 ding) en die je kunt gaan aanpakken.
Om dat programmeren (of wat dan ook) onder de knie te krijgen, moet je fouten maken, die herkennen en dan oplossen.
Dat kan wel es lastig zijn, maar als het dan uiteindelijk toch slaagt is dat weer des te lekkerder.

Succes weer met de volgende stappen.