Nu de hardware werkt is het tijd om aan de bijbehorende software te werken. Dit heb ik de afgelopen periode dan ook gedaan. Het aantal commando’s groeit gestaag. Momenteel werken de commando’s om een lijst van netwerken op te vragen, verbinding met een netwerk maken, de IP configuratie te bekijken en heel handig: een bestand downloaden vanaf een webserver en het bekijken van de bufferinhoud na een download.
De grootste uitdaging zit vooral in het bepalen wanneer de data transfer ten einde is. De ESP8266 module heeft namelijk geen handshake. Daarnaast wil ik de snelheid hoog houden, 115.200 baud, en dat heeft als consequentie dat er geen tijd is om de datastroom te analyseren tijdens het ophalen en plaatsen in de buffer. Uiteindelijk is dit wel gelukt door te werken met variabele time-outs. Elke driver functie heeft zijn eigen time-out waarde gekregen en zelfs binnen de functie zelf zijn er verschillende time-outs.
Inmiddels heb ik ook een aantal printjes naar enkele StarDotters gestuurd zodat zij mee kunnen testen. Dat levert een grote hoeveelheid zinvolle input op. Zij testen de hardware en software op hun manier en zo vang je een behoorlijke variatie aan problemen op. Maar hoe kunnen die testers ook makkelijk hun systeem bijwerken als ik een update heb? Dit soort vragen maken me creatief en zo wordt de mogelijkheid geboden om op eenvoudige en betrouwbare wijze de firmware van deze kaart via het Internet te updaten.