Aha. Ik had precies het omgekeerde, ik had alles al klaar, ik moest "alleen" de ESP nog even aansluiten en dat heeft wel wat hoofdpijn opgeleverd mag ik zeggen.
CR en/of LF vind ik niet zo probleem, die tik ik desnoods ook nog wel zelf in (^M/^J) als het dan maar tenminste wel werkt. Ik gebruik linux met minicom en daar kun je dat overigens gewoon op instellen.
Je bedoelt dat je de GPIO0 naar beneden moet trekken voor flashen, dat klopt, anders weet-ie immers niet dat er geflasht moet worden Ik had meer het omgekeerde, ik had de indruk dat je voor flashen een GPIO (15) moest aarden voor flashen en die is niet naar buiten gebracht. Dus ik dacht dat ik vast zat aan de brakke firmware versie die er op zat. Tot ik er achter kwam dat je uiteindelijk alleen GPIO0 moet aarden en that's it, was toen piece of cake. Heb ik wel even een PL2303 converter uit de kast gehaald die daar kennelijk nog lag. Daarvoor deed ik alles via de uart van de atmega, maar voor flashen is dat niet zo handig
Het meest naar aan de esp8266 vind ik:
- De hele ip wordt voor je afhandeld, dat klinkt leuk, maar het betekent dat je een heleboel flexibiliteit inlevert.Je bent ook overgeleverd aan de bugs in de IP afhandeling.
- In de documentatie (geweldig...) staat een commando voor het opstarten van een "TCP server". Dat wil ik helemaal niet, ik wil een UDP server. Waarom? Omdat je daarmee veel makkelijker heel snel achter elkaar commando's kunt sturen. De TCP-implementatie van de esp is zodanig minimaal dat-ie snel in de war raakt als je snel meerdere connecties achter elkaar maakt (of tegelijk). UDP lost dat probleem op. Nou blijkt, in ieder geval bij de nieuwere firmwares, dat er tegelijk met de "TCP server" ook een UDP server wordt opgestart (op dezelfde poort), daar ben ik erg blij mee. Automatisch uitlezen doe je dan met UDP, even met de hand iets doen, daarvoor kun je dan alsnog gewoon telnet gebruiken.
- De "AT"-commando interface. Erg leuk als je met je terminal emulator wat zit te spelen, maar voor interactie met je microcontroller een drama. Zeker als je bedenkt dat foutmeldingen niet altijd meteen komen, dat er soms wel eens "ongevraagde" tekst wordt gestuurd op rare momenten en dat je alles wat je stuurt knalhard ook weer terugkrijg (echo mode). De laatste firmware heeft gelukkig een commando om echo uit te zetten.
- Een aantal dingen tijdens het opstarten zijn timing-gevoelig. Als je met de hand wat doet, maakt dat niet uit, zo snel type je niet. Maar als je microcontroller vanalles af afvuren direct na reboot, dan werkt het gewoon niet, er moeten op diverse plaatsen delays worden toegepast (wat je eigenlijk niet wilt op een microcontroller, want je wilt geen busy loops, dus dat is weer klooien met een state machine en een timer).
- De firmware crasht bij vanalles, dat gaat gelukkig wel veel beter met de nieuwere versies.
Die uart interface is een drama. Ik had het liefst daarvoor SPI of voor mijn part I2C gezien, dat zit ook gewoon op de microcontroller. Je kunt dan alleen niet zoals "even" een pl2303 kabel aansluiten.
De gevoeligheid (kwaliteit van de RF) valt me reuze mee, het is niet zo goed als m'n telefoon, maar niet slecht.