FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: daruel am 01 Januar 2018, 12:13:27

Titel: HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 01 Januar 2018, 12:13:27
Hallo und ein Frohes neues Jahr!

habe einen Tempserver aus einem Arduino mit 2 DHT22 gebastelt, der arbeitet auch wie er soll und gibt folgendes im Browser (Quelltext) wieder

<!DOCTYPE HTML>
<html>
Humidity inside: 39.20 % <p />
Temperature inside: 20.60 *C
<p />
Humidity outside: 42.10 % <p />
Temperature outside: 20.50 *C</html>



Habe das mit HTTPMOD hauptsächlich per copy&paste versucht, da ich eher der Typ für die Hardware bin als mich in Codes einzulesen.

Leider bekomme ich es überhaupt nicht hin, dass HTTPMOD auch nur irgendeinen Wert zurück gibt, habe das bei meinem Sprit- und Ölpreismonitor jedoch geschafft.

Hier die List

Internals:
   BUSY       0
   CFGFN     
   CHANGED   
   DEF        http://192.168.178.120 10
   Interval   10
   LASTSEND   1514805159.07131
   MainURL    http://192.168.178.120
   ModuleVersion 3.4.0 - 9.9.2017
   NAME       Arduino
   NR         3376
   STATE      stateFormat Ti: Temperature inside Hi: Humidity inside To: Temperature outside Ho: Humidity outside
   TRIGGERTIME 1514805169.06942
   TRIGGERTIME_FMT 2018-01-01 12:12:49
   TYPE       HTTPMOD
   addr       http://192.168.178.120:80
   auth       0
   data       
   displayurl http://192.168.178.120
   header     
   host       192.168.178.120
   httpversion 1.0
   hu_blocking 0
   ignoreredirects 0
   loglevel   4
   path       /
   protocol   http
   redirects  0
   timeout    2
   url        http://192.168.178.120
   value      0
   QUEUE:
   READINGS:
   REQUEST:
     data       
     header     
     ignoreredirects 0
     retryCount 0
     type       update
     url        http://192.168.178.120
     value      0
   sslargs:
Attributes:
   get1CheckAllReadings 1
   reading01Name Temperature inside
   reading01Regex Temperature inside:.([\d\.]+)
   reading02Name Humidity inside
   reading02Regex Humidity inside:.([\d\.]+)
   reading03Name Temperature outside
   reading03Regex Temperature outside:.([\d\.]+)
   reading04Name Humidity outside
   reading04Regex Humidity outside:.([\d\.]+)
   room       Keller
   stateFormat stateFormat Ti: Temperature inside Hi: Humidity inside To: Temperature outside Ho: Humidity outside
   userattr   get1CheckAllReadings:0,1 reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex reading04Name reading04Regex


die Felder "httpheader" oder "buf" erscheinen erst garnicht.


Was muss ich also tun, um diese 4 Readings zu erhalten?

Vielen Dank im Voraus
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: frank am 01 Januar 2018, 14:39:23
ich würde mal verbose 5 setzen und in fhem.log schauen.
ausserdem das attr get1CheckAllReadings löschen.
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 01 Januar 2018, 16:09:24
Habe die Änderungen gemacht, ändert nichts.

Log gibt das hier raus

2018.01.01 16:07:30 4: Arduino: GetUpdate called (update)
2018.01.01 16:07:30 4: Arduino: update timer modified: will call GetUpdate in 10.0 seconds at 2018-01-01 16:07:40
2018.01.01 16:07:30 4: Arduino: AddToQueue adds update, initial queue len: 0
2018.01.01 16:07:30 5: Arduino: AddToQueue adds type update to URL http://192.168.178.120, no data, no headers, retry 0
2018.01.01 16:07:30 5: Arduino: HandleSendQueue called, qlen = 1
2018.01.01 16:07:30 4: Arduino: HandleSendQueue sends request type update to URL http://192.168.178.120, No Data, No Header,
timeout 2
2018.01.01 16:07:30 5: HttpUtils url=http://192.168.178.120
2018.01.01 16:07:30 3: Arduino: Read callback: Error: http://192.168.178.120: malformed or unsupported URL
2018.01.01 16:07:30 4: Arduino: Read callback: request type was update retry 0, no headers, body empty
2018.01.01 16:07:30 5: Arduino: ExtractSid called, context reading, num
2018.01.01 16:07:30 4: Arduino: CheckAuth decided no authentication required


Wie kommt die Meldung "Error: http://192.168.178.120: malformed or unsupported URL" zustande? Im Browser eingefügt funktioniert sie.
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: frank am 01 Januar 2018, 18:05:06
ich habe bei mir in der definition am ende der ip noch einen slash.
kannst du denn vom fhem server die ip pingen?
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 02 Januar 2018, 17:33:37
Das mit dem Slash hatte ich auch schon, bringt keine Veränderung.

Bei deinem Hinweis mit dem Ping habe ich aber ein merkwürdiges Problem entdeckt.

Ich kann auf den Arduino Server nur von meinem "Haupt - PC" aus zugreifen. Auf allen anderen Geräten, egal ob Laptop oder Smartphone, kann ich nicht auf die Seite zugreifen. Das Netzwerk funktioniert sonst Tadellos und der Arduino hängt am selben Switch wie der Rest inkl. WLAN Access Point.

D.h. es wird wohl kein FHEM Problem sein, aber ich weiß jetzt noch weniger wo der Fehler liegt.
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 02 Januar 2018, 17:56:27
Die IP-Adresse (192.168.178.120) sieht so aus, wie eine lokale Zufallsadresse, wenn kein DHCP aktiv ist.

Hast Du DHCP im lokalen Netzwerk aktiv?
Wenn ja - ist 192.168... wirklich der Bereich der IP-Adressen?

Wenn nein - ist DHCP beim Arduino aktiv?

Wenn nein wirst Du vermutlich das aktivieren müssen oder routing-Tabellen anpassen (würde ich aber von abraten)
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 02 Januar 2018, 18:21:35
Die IP habe ich in dem Code vom Arduino vorgegeben, DHCP ist auf dem Router aktiv.
Habe das bei meinem Arduino mit der FIRMATA auch so gemacht, der läuft perfekt.

Was wäre an dem Bereich der IP Adressen falsch? Bis jetzt habe ich hier alles damit Gruppiert, damit man ungefähr weiß um welche Geräte es sich handelt, wenn man nur die IP liest.

Habe jetzt auch die IP im Arduino Code auf eine Stelle neben der Firmata geändert - bringt nichts.
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 02 Januar 2018, 18:37:09
Deshalb die Fragen nach den IP-Bereichen. Also ich verstehe das so, dass Du diesen IP-Bereich benutzt. Bleibt immer noch die Frage, ob die anderen Rechner den Arduino-Server wirklich übers Netz erreichen können. Für den Moment nehme ich einfach mal an, ja

Dann ist ohne die Firmware des Arduino zu kennen schwer zu sagen was schief läuft.
Mögliche Ansätze:
- Ist im Arduino eine Begrenzung auf bestimmte Adressen aktiv?
- Gibt es eine Beschränkung der gleichzeitigen Zugriffe und vielleicht ist schon einer aktiv?

Im Grund genommen vermute ich aber immer noch, dass es ein Routing-Problem ist, denn vielleicht können alle Rechner den Arduino erreichen, dieser aber nicht antworten (z.B. da er nur 255.255.255.0 als Netmask hat?).

Gib doch mal ein paar Infos zu den Netzwerkadressen heraus, so ist das irgendwie stochern im Dunkeln
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 02 Januar 2018, 21:08:15
Vorab schonmal vielen Dank für die Bemühungen mir hier zu helfen.

Hier mal der Arduino Code, eventuell findet ja jemand sofort den Fehler.

#include <DHT.h>

#define DHTPIN_inside 6     
#define DHTPIN_outside 7

// Uncomment whatever type you're using!
//#define DHTTYPE DHT11   // DHT 11
#define DHTTYPE DHT22   // DHT 22  (AM2302)
//#define DHTTYPE DHT21   // DHT 21 (AM2301)

DHT dht_in (DHTPIN_inside, DHTTYPE);
DHT dht_out (DHTPIN_outside, DHTTYPE);



// Ethernet

#include <SPI.h>
#include <Ethernet.h>


//MAC and IP address and Server Port:

   byte mac[] = {0xAD, 0xEE, 0xBB, 0xFF, 0xFA, 0xAD};
   IPAddress ip(192,168,178,35);
   
   EthernetServer server(80);

void setup() {
// Open serial communications and wait for port to open:
  Serial.begin(9600);
   while (!Serial) {
    ; // wait for serial port to connect. Needed for Leonardo only
  }

  dht_in.begin();
  dht_out.begin();

 

  // start the Ethernet connection and the server:
  Ethernet.begin(mac, ip);
  server.begin();
  Serial.print("server is at ");
  Serial.println(Ethernet.localIP());
}


void loop() {

  delay (1000);

  // Reading temperature or humidity takes about 250 milliseconds!
  // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
  float hi = dht_in.readHumidity();
  float ti = dht_in.readTemperature();
  float ho = dht_out.readHumidity();
  float to = dht_out.readTemperature();


// Ausgabe am Seriellen Monitor
  // check if returns are valid, if they are NaN (not a number) then something went wrong!
  if (isnan(to) || isnan(ti) || isnan(ho) || isnan(hi)) {
    Serial.println("Failed to read from DHT");
  } else {
    Serial.print("Humidity inside: ");
    Serial.print(hi);
    Serial.print(" %\t");
    Serial.print("Temperature inside: ");
    Serial.print(ti);
    Serial.println(" *C");
    Serial.print("Humidity outside: ");
    Serial.print(ho);
    Serial.print(" %\t");
    Serial.print("Temperature outside: ");
    Serial.print(to);
    Serial.println(" *C");
    delay (2000);
  }

  // listen for incoming clients
  EthernetClient client = server.available();
  if (client) {
    Serial.println("new client");
    // an http request ends with a blank line
    boolean currentLineIsBlank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        Serial.write(c);
        // if you've gotten to the end of the line (received a newline
        // character) and the line is blank, the http request has ended,
        // so you can send a reply
        if (c == '\n' && currentLineIsBlank) {
          // send a standard http response header
          client.println("HTTP/1.1 200 OK");
          client.println("Content-Type: text/html");
          client.println("Connection: close");  // the connection will be closed after completion of the response
          client.println("Refresh: 5");  // refresh the page automatically every 5 sec
          client.println();
          client.println("<!DOCTYPE HTML>");
          client.println("<html>");
       
         
// Ausgabe am Webserver
       
          client.print("Humidity inside: ");
          client.print(hi);
          client.print(" %\t");
          client.println("<p />");
          client.print("Temperature inside: "); 
          client.print(ti);
          client.println(" *C");
          client.println("<p />");
          client.print("Humidity outside: ");
          client.print(ho);
          client.print(" %\t");
          client.println("<p />");
          client.print("Temperature outside: "); 
          client.print(to);
          client.print(" *C");
          client.println("</html>");
          break;
        }
        if (c == '\n') {
          // you're starting a new line
          currentLineIsBlank = true;
        }
        else if (c != '\r') {
          // you've gotten a character on the current line
          currentLineIsBlank = false;
        }
      }
    }
    // give the web browser time to receive the data
    delay(1);
    // close the connection:
    client.stop();
    Serial.println("client disonnected");
  }
}



Ich weiß nicht genau, was ich zu den Netzwerkadressen sagen soll.  An 192.168.178.1 hängt eine Fritz.box als router mit DHCP, dann kommen 2 Router als WLAN AccessP. aber ohne DHCP, alles auf dem selben 24 Port Switch durchs haus Verteilt.



Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 02 Januar 2018, 21:16:00
Zitat von: daruel am 02 Januar 2018, 21:08:15

Ich weiß nicht genau, was ich zu den Netzwerkadressen sagen soll.  An 192.168.178.1 hängt eine Fritz.box als router mit DHCP, dann kommen 2 Router als WLAN AccessP. aber ohne DHCP, alles auf dem selben 24 Port Switch durchs haus Verteilt.


Naja der Router interessiert jetzt eher wenig:

Es gibt ja einen Rechner, der den Arduino erreicht und andere die Ihn nicht erreichen...
- Was sind deren IP-Adressen?
- Welche DHCP-Adressen werden vergeben
- Wenn Du feste IP-Adressen vergibts sind diese mit demselben Präfix 192.168.178 ?

Ich versuche ja rauszufinden, ob die netmask das Problem sein könnte, aber auch nach mehreren Beiträgen ist das immer noch unklar
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: andies am 02 Januar 2018, 21:18:58
 Bei httpmod muss definitiv ein slash ans Ende, wenn nur die IP angegeben wird.

Weist denn dein DHCP dem arduino keine IP zu? Das machst Du ja im Code selber, ist das im Netzwerk so eingestellt, dass es keine Probleme gibt? IP nicht doppelt vergeben? Poste doch auch mal den serial Output.



Gesendet vom iPhone mit Tapatalk Pro
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 03 Januar 2018, 16:18:48
Also:

der DHCP vergibt 192.168.178. 20-200

Der iMac ( von dem ich es erreiche) hat die .25 , vom iPhone .52  gehts nicht, von einem Win 10 Laptop .62 auch nicht. Alle bekommen die ip per DHCP.

Lediglich der Raspberry von FHEM , ein Arduino mit Firmata, ein Nas und die beiden Wlan AP haben eine feste IP, also Geräte die möglichst auch immer unter dieser zu finden sein sollen. Diese befinden sich alle im Bereich zwischen .1 und .20 und haben natürlich alle die. 192.168.178 vorstehen.

Dem nicht zu erreichenden Arduino habe ich schon 4-5 verschieden verpasst, .12 .35. .120, und immer das gleiche Spiel. Der iMac erkennt ihn, der Rest nicht.
Auch wenn der iMac aus ist und somit nicht zugreifen kann, erreiche ich das Teil nicht.


Wenn noch Fragen offen sein sollten, dann verstehe ich sie nicht ;-)

hier noch die serielle Ausgabe vom Arduino

server is at 192.168.178.12
Humidity inside: 38.50 % Temperature inside: 20.10 *C
Humidity outside: 40.70 % Temperature outside: 20.30 *C
new client
GET / HTTP/1.1
Host: 192.168.178.12
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/604.4.7 (KHTML, like Gecko) Version/11.0.2 Safari/604.4.7
Referer: http://192.168.178.12/
Cache-Control: max-age=0
Accept-Language: de-de

client disonnected
Humidity inside: 38.40 % Temperature inside: 20.10 *C
Humidity outside: 40.70 % Temperature outside: 20.30 *C
Humidity inside: 38.40 % Temperature inside: 20.10 *C
Humidity outside: 40.60 % Temperature outside: 20.30 *C
new client
GET / HTTP/1.1
Host: 192.168.178.12
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/604.4.7 (KHTML, like Gecko) Version/11.0.2 Safari/604.4.7
Referer: http://192.168.178.12/
Cache-Control: max-age=0
Accept-Language: de-de

client disonnected
Humidity inside: 38.50 % Temperature inside: 20.10 *C
Humidity outside: 40.60 % Temperature outside: 20.30 *C
Humidity inside: 38.50 % Temperature inside: 20.10 *C
Humidity outside: 40.70 % Temperature outside: 20.30 *C


usw.








Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 03 Januar 2018, 16:44:45
OK, damit würde ich annehmen, dass es nicht um IP-Erreichbarkeit in Deinem Netz geht, da alle im selben Subnetz sind.

Damit bleibt für mich nur die Vermutungen

- Dass der Arduino mit den Anfragen der anderen nicht umgehen kann --> das müsste sich aber normalerweise im log finden
- dass der Arduino die Anfragen der anderen nicht bearbeiten kann, weil beschäftigt

Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 03 Januar 2018, 17:04:29
Ich habe es auch mit einem vom System her identischen MacBook ohne erfolg versucht und alles andere war dabei aus. Warum erreiche ich ihn dann vom iMac?
Auch direkt am Switch oder anderen RJ45 dosen tut sich nichts.

Habe gerade nochmal im die IP geändert, auf dem iMac bekomm ich übers Terminal sofort einen Ping, gehe ich über das Terminal zum Raspberry läuft er ins leere....

Hat jemand eine Idee was man im Arduino Code ändern könnte oder ein anderes Beispiel ?

Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 03 Januar 2018, 17:39:54
Na ja - das mit dem ping kann bei recht ähnlichen Rechnern trotzdem durch die lokale Firewall im Rechner verhindert werden.

Hast Du auf dem Macbook auch versucht die webseite zu erreichen?
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 03 Januar 2018, 17:45:29
ja... geht natürlich nicht.
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 03 Januar 2018, 17:50:34
Was mir im Code auffällt, ist, dass Du eine Mac-Adresse setzt. Das kann natürlich auch das Routing durcheinanderbringen, hat das einen bestimmten Grund und ist diese Mac vielleicht auch bei dem anderen Arduino im Einsatz?

Wenn nicht kannst Du die mal ändern oder muss man die überhaupt setzen?
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 03 Januar 2018, 18:23:08
Habe die Mac mal getauscht, keine Änderung

Habe bis jetzt keine Anleitung und keinen Sketch ohne gefunden, aber auch keinen Grund ob notwendig oder nicht.

Würde ja auch mal versuchen, das EthernetShield zu tauschen, aber es geht ja nunmal an dem einen Rechner....

Vielleicht starte ich den Versuch trotzdem, muss dann nur die Firmata kurzfristig außer betrieb nehmen
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 03 Januar 2018, 19:14:06
ich glaube auch nicht, dass es am Ethernetshield liegt.

Dein Code ist so, dass er nur eine Verbindung zu einer Zeit zulässt, also kann es sein, dass von irgendwo ein Client verbunden ist?

Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 03 Januar 2018, 20:14:08
Das kann eigentlich nicht sein. Seit dem ich die IP nochmal getauscht habe, habe ich es nur an 2 Rechnern versucht. Selbst wenn der iMac aus ist, geht es nicht.

Aber was auch eventuell merkwürdig ist:

Pinge ich vom Terminal aus bekomme ich

Request timeout for icmp_seq 0

Gehe ich erst per ssh auf den Pi und pinge dann :

icmp_seq=2 Destination Host Unreachable

Ich glaube, ich muss mir mal einen andere Code basteln.

Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 03 Januar 2018, 20:19:38
Probier doch mal einfach die Beispiel-Anwendung aus der Arduino-Ethernet-Lib - da gibt es auch einen Webserver
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 04 Januar 2018, 18:17:52
Also das Beispiel sieht ziemlich genau so aus wie mein Sketch.

Habe jetzt nur schnell im Beispiel meine Sensoren eingebunden und den HTML Teil kopiert und siehe da: im Moment läufts!

Nur das state format zeigt die Werte nicht an, was wäre da falsch?

Die Readings passen, aber der Dewpoint kommt nicht automatisch, obwohl ich das mal für alle Devices mit T / H aktiviert hatte

      ---->Edit   Dewpoint allgemein mit "define dew_state dewpoint dewpoint .* T H D"  scheint ja dann nur zu funktionieren, wenn ich nur 1x T und H als reading bekomme und nicht wie bei mir Ti (inside) Hi und To (outside) Ho ??

reading01Name
Temperature inside
deleteattr
reading01Regex
Temperature inside:.([\d\.]+)
deleteattr
reading02Name
Humidity inside
deleteattr
reading02Regex
Humidity inside:.([\d\.]+)
deleteattr
reading03Name
Temperature outside
deleteattr
reading03Regex
Temperature outside:.([\d\.]+)
deleteattr
reading04Name
Humidity outside
deleteattr
reading04Regex
Humidity outside:.([\d\.]+)
deleteattr
room
Keller
deleteattr
stateFormat
stateFormat Ti: Temperature inside Hi: Humidity inside To: Temperature outside Ho: Humidity outside
deleteattr
userattr
get1CheckAllReadings:0,1 reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex reading04Name reading04Regex
deleteattr
verbose
5
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 05 Januar 2018, 00:23:29
Sorry das ist so kaum lesbar, kannst Du mal ein list von Deinem Device machen?

Also list <devicename> eingeben und das Ergebnis posten?
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 05 Januar 2018, 10:09:33
Habe das o.g. Device  gelöscht und nochmal ein neues angelegt.

StateFormat passt soweit, es fehlt mir nur noch das Reading dewpoint

Was mir aber mal wieder aufgefallen ist, die Readings wurden, bis auf eines, das letzte Mal gestern Abend aktualisiert. Was kann das wieder sein?

Internals:
   BUSY       0
   DEF        http://192.168.178.12/ 60
   Interval   60
   LASTSEND   1515143157.55835
   MainURL    http://192.168.178.12/
   ModuleVersion 3.4.0 - 9.9.2017
   NAME       Temp_Server
   NR         117
   STATE      T in: 19.30 H in: 37.30 T out: 21.20 H out: 41.40
   TRIGGERTIME 1515143217.55667
   TRIGGERTIME_FMT 2018-01-05 10:06:57
   TYPE       HTTPMOD
   addr       http://192.168.178.12:80
   auth       0
   code       200
   compress   1
   conn       
   data       
   displayurl http://192.168.178.12/
   header     
   host       192.168.178.12
   httpheader HTTP/1.1 200 OK
Content-Type: text/html
Connection: close
Refresh: 5
   httpversion 1.0
   hu_blocking 0
   hu_filecount 899
   hu_port    80
   hu_portSfx
   ignoreredirects 0
   loglevel   4
   path       /
   protocol   http
   redirects  0
   timeout    2
   url        http://192.168.178.12/
   value      0
   QUEUE:
   READINGS:
     2018-01-04 19:05:18   Hi              37.30
     2018-01-04 19:05:18   Ho              41.40
     2018-01-05 10:05:57   Ti              19.30
     2018-01-04 19:05:18   To              21.20
   REQUEST:
     data       
     header     
     ignoreredirects 0
     retryCount 0
     type       update
     url        http://192.168.178.12/
     value      0
   defptr:
     readingBase:
       Ti         reading
     readingNum:
       Ti         01
     readingOutdated:
     requestReadings:
       update:
         Ti         reading 01
   sslargs:
Attributes:
   reading01Name Ti
   reading01Regex Temperature inside:.([\d\.]+)
   room       Keller
   stateFormat T in: Ti H in: Hi T out: To H out: Ho
   userattr   reading01Name reading01Regex reading02Name reading02Regex
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 05 Januar 2018, 10:13:27
Das ist so nicht erkennbar, was sagt denn der logfile? (FHEM-log)
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 05 Januar 2018, 10:21:33
Kommando zurück!

Habe erst jetzt gesehen, dass die anderen Regex wohl bei einem Neustart noch nicht gespeichert waren!


Wenn das alles jetzt so läuft, fehlen mir nur noch die Dewpoint readings.

Kann man auch für die Temperature eine art Dummy erzeugen, so dass es aussieht als wären es 2 eigenständige Sensoren?

Internals:
   BUSY       0
   DEF        http://192.168.178.12/ 60
   Interval   60
   LASTSEND   1515143998.24216
   MainURL    http://192.168.178.12/
   ModuleVersion 3.4.0 - 9.9.2017
   NAME       Temp_Server
   NR         117
   STATE      T in: 19.70 H in: 37.20 T out: 19.80 H out: 39.70
   TRIGGERTIME 1515144058.24033
   TRIGGERTIME_FMT 2018-01-05 10:20:58
   TYPE       HTTPMOD
   addr       http://192.168.178.12:80
   auth       0
   code       200
   compress   1
   conn       
   data       
   displayurl http://192.168.178.12/
   header     
   host       192.168.178.12
   httpheader HTTP/1.1 200 OK
Content-Type: text/html
Connection: close
Refresh: 5
   httpversion 1.0
   hu_blocking 0
   hu_filecount 913
   hu_port    80
   hu_portSfx
   ignoreredirects 0
   loglevel   4
   path       /
   protocol   http
   redirects  0
   timeout    2
   url        http://192.168.178.12/
   value      0
   QUEUE:
   READINGS:
     2018-01-05 10:19:58   Hi              37.20
     2018-01-05 10:19:58   Ho              39.70
     2018-01-05 10:19:58   Ti              19.70
     2018-01-05 10:19:58   To              19.80
   REQUEST:
     data       
     header     
     ignoreredirects 0
     retryCount 0
     type       update
     url        http://192.168.178.12/
     value      0
   defptr:
     readingBase:
       Hi         reading
       Ho         reading
       Ti         reading
       To         reading
     readingNum:
       Hi         02
       Ho         04
       Ti         01
       To         03
     readingOutdated:
     requestReadings:
       update:
         Hi         reading 02
         Ho         reading 04
         Ti         reading 01
         To         reading 03
   sslargs:
Attributes:
   reading01Name Ti
   reading01Regex Temperature inside:.([\d\.]+)
   reading02Name Hi
   reading02Regex Humidity inside:.([\d\.]+)
   reading03Name To
   reading03Regex Temperature outside:.([\d\.]+)
   reading04Name Ho
   reading04Regex Humidity outside:.([\d\.]+)
   room       Keller
   stateFormat T in: Ti H in: Hi T out: To H out: Ho
   userattr   reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex reading04Name reading04Regex
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 05 Januar 2018, 10:23:12
Nicht sicher ob ich Deine Frage richtig verstehe, aber über ReadingsProxy kannst Du Readings als neues Device verfügbar machen

Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: daruel am 05 Januar 2018, 10:33:40
Danke, das war schonmal ein guter Hinweis!

Kann man da auch 2 Readings einlesen?  Habe Device:To Ho versucht lässt aber nur eins zu, auch nicht mit Komma

Internals:
   CFGFN     
   DEF        Temp_Server:To
   DEVICE     Temp_Server
   NAME       Temp_aussenTEST
   NOTIFYDEV  Temp_Server,global
   NR         493
   NTFY_ORDER 50-Temp_aussenTEST
   READING    To
   STATE      20.00
   TYPE       readingsProxy
   CONTENT:
     Temp_Server 1
   READINGS:
     2018-01-05 10:31:12   state           20.00
Attributes:
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: viegener am 05 Januar 2018, 10:39:03
Zitat von: daruel am 05 Januar 2018, 10:33:40
Danke, das war schonmal ein guter Hinweis!

Kann man da auch 2 Readings einlesen?  Habe Device:To Ho versucht lässt aber nur eins zu, auch nicht mit Komma


Soweit ich die Commandref lese nicht, aber ich muss zugeben ich benutze ReadingsProxy nicht selber
Titel: Antw:HTTPMOD Abfrage von Arduino Server
Beitrag von: Tesla am 10 Mai 2019, 10:30:51
Hi
Ich habe das gleiche Problem, bist du weitergekommen?
https://forum.fhem.de/index.php/topic,100404.0.html