Guten Abend, folgendes Szenario: PC --- Mikrocontroller --- ESP8266 Nun, der PC kommuniziert mit dem Mikrocontroller über einen UART mit dem Mikrocontroller und der Mikrocontroller kommuniziert über einen anderen UART mit dem ESP8266. Für spätere Softwareupdates würde ich aber gerne noch ein Stück Software implementieren, was den Mikrocontrollern in einen transparenten Vermittler-Mode setzt und die Daten vom PC einfach (dumm) zum ESP weiterleitet, und umgekehrt. Das einschalten dieses Moduses ist kein Problem, da erweitere ich mein Protokoll zwischen PC und Mikrocontroller einfach um einen Befehl. Allerdings stelle ich mir gerade die Frage, wie ich da wieder rauskomme. Im Prinzip benötige ich so eine Art Magic String (z.B. 7d 6c 1f 69 5f 98 79 4c a1 d0 90 11 93 a6 68 34), wenn der Microcontroller den hört, soll der in den normalen Modus zurückschalten. Allerdings könnte es ja sein, dass genau der Magic-String in der vorhergesehen Kommunikation zwischen PC und ESP vorkommt, das kann ich ja nicht komplett ausschließen. Was wären eure Vorschläge für so ein Problem? Oder soll ich einfach darauf vertrauen (und hoffen), dass mein Magic String einfach nicht vorkommt? Ich hoffe, dass war einigermaßen verständlich rübergebracht Grüße
Du könntest als zusätzliches Kriterium noch Ruhe vor (und gegebenenfalls auch nach) der Zeichenkette vorschreiben. Die Zeichenkette wird erst dann akzeptiert, wenn vorher mindestens eine festgelegte Zeit lang nichts übertragen wurde.
Oder alternativ wird nur nach einem Reset darauf gelauscht, oder nur wenn ein gewisser GPIO Pin high ist.
Nachtrag: Die besten Magic Strings sind die, die in der Praxis nie vorkommen weil sie minimalen Informationsgehalt haben. WoL ist zum Beispiel 16 Mal das gleiche Byte.
> WoL ist zum Beispiel 16 Mal das gleiche Byte.
Streiche Byte, setzte MAC-Adresse. Und davor noch ein paar 0xFF.
Magic-Numbers/Strings/.. kann man auch hervorragend Escapen. Dann wird
aus dem "dumm durchreichen" aber "ein bisschen parsen". Nicht wirklich
aufwendig.
Timeout verwenden. Nach dem Update wird einfach für ein paar Sekunden nichts gesendet. Das funktioniert dann auch, wenn jemand während des Updates das Kabel zieht...
Warum so kompliziert? Wozu ist der µC in dem Aufbau...? Mein Vorschlag: Ersatzlos streichen. Der ESP hat mehr Dampf als viele andere µC. Auch kann er OTA Update.
Hallo, >Warum so kompliziert? >Wozu ist der µC in dem Aufbau...? >Der ESP hat mehr Dampf als viele andere µC. >Auch kann er OTA Update. Ich habe mich nicht getraut, das zu schreiben... Gruß aus Berlin Michael
@Piet, +++ hat schon bei Modems funktioniert um vom transparenten Übertragungsmodus zum Befehlsmodus zu wechseln. Sascha
Wobei es nicht nur +++ ist, sondern <pause>+++<pause> Wenn direkt davor und dahinter weitere Bytes übertragen werden, hat das +++ keine Wirkung.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.