Arduino + ESP8266

Hallo Leute, bin über das Tutorial von zeflo gestolpert: http://zeflo.com/2014/esp8266-weather-display/ Und versuche jetzt ohne das Programm sondern nur mit den AT- Commands sein Programm nachzuvollziehen. Komme bis zu dem Punkt, dass ich eine Verbinung mit dem Zielserver herstellen kann. Beim GET /data hakt es dann. Wie muss der nächste AT- Befehl aussehen ?

Im Code von zeflo sieht er so aus:

cmd = "GET /data/2.5/weather?id=";
cmd += LOCATIONID;
cmd += " HTTP/1.0\r\nHost: api.openweathermap.org\r\n\r\n";

Soweit bin ich gekommen:

AT


OK
AT+CIPMUX=0


OK
AT+CWMODE=1

no change
AT+CWJAP="Geheim","Geheimer"


OK
AT+CIPSTART="TCP","188.226.224.148",80


OK
Linked

Hallo fuenfzigccm,

danach kommt

AT+CIPSEND=<len>

wobei die Anzahl der zu übertragenden Bytes ist (CR und LF zählen mit)
Der ESP sendet jetzt ein “>” und du kannst die zu sendenden Zeichen eingeben. Wenn die Zahl erreicht ist geht der ESP wieder in den AT Modus.
Je nach Webserver musst du die Befehle relativ schnell senden, da der Webserver sonst die TCP Verbindung verwirft.

Gruß
Reinhard

erni-berni:
Je nach Webserver musst du die Befehle relativ schnell senden, da der Webserver sonst die TCP Verbindung verwirft.

Gruß
Reinhard

Das ist mir auch aufgefallen, aber ich weiß nicht wie lange die Zeit genau ist. Wäre ja gut zu wissen wenn man am rumprobieren ist. Ist das irgendein TCP Standart vielleicht?

Gruß

Vermutlich wird da jeder Serverbetreiber sein eigenes Süppchen kochen. Noch vermutlicher: Je teuerer der Webspace/Server, desto länger die Timeouts. http://httpd.apache.org/docs/2.2/de/mod/core.html#timeout http://httpd.apache.org/docs/2.2/mod/mod_reqtimeout.html

Danke Jungs, dann werd ich mal weiter basteln. So wie ich das der Dokumentation des Chips entnehmen konnte löst der automatisch nach 8-10sec ohne übertragende Daten die Verbindung auf. Ob die entsprechenden Server da früher einen Riegel vorschieben kann ich nicht sagen. Hab bis jetzt nur zur openweathermap.org connected und da war nach 8sec Schluss. Macht sich zum Rumspielen mit AT+Commands also gut, wenn man die Befehle, die man Nutzen will schonmal vorgeschrieben hat.

lg