Das Problem hatte ich auch, dass er das nicht speichert nach dem Neustart der App. Nach dem neusten Update des Servers und dem verwenden eines aktuellen Plug-Ins (2020) klappt das aber jetzt perfekt
Beiträge von DerJan
-
-
ich vermute, es liegt an dem Plugin für den Server. Die sind ja auch nicht mehr so aktuell wenn man aufs Datum guckt. Hab mal ein anderes ausprobiert und dieses speichert den Zustand aber schaltet irgendwie nicht das Relais...
Hat das vielleicht noch was damit zutun die Plugins Global zu installieren(-g)? Ist aber nicht mehr möglich dort einzugreifen bei der neuen Weboberfläche vom Server
-
Sofort und unverzögert! Hab noch alles bei mir auf dem Tisch zu liegen zum Testen. Der Router ist 5m weg
-
Hallo Leute!
Ich habe ein Problem mit dem aktuellen Status der Geräte in der Apple Home App. Zur Einleitung erstmal ein paar Infos. Ich habe mehrere ESP8266 mit Relais Programiert und sie erfolgreich in den makesmart-server eingebunden. Wenn ich jetzt auf dem iPhone die Home App öffne, zeigt er mir alle ESP an. Nach ein paar Sekunden sind alle aktualliesiert und ich kann sie unverzögert ein- und ausschalten. Wenn ich jetzt aber z.B. den Button Licht Terrasse aktiviere schaltet das Relais erfolgreich ein und ich verlasse dann die App. Nach 1-2 Minuten öffne ich die Home-App wieder und möchte jetzt eigendlich das aktivierte Terrassenlicht sehen. Jetzt wird mir aber das Licht Terrasse als aus dagestellt bzw. manchmal kommt die Meldung "Antwortet nicht" obwohl das Relais noch angezogen ist! Ich denke es ist ein Problem mit dem Code vom ESP oder meine Fritz Box ist schuld an der fehlenden Aktualliesierung....
Vieleicht könnte mir jemand ein Tipp geben.
IOS.jpg
Code vom ESPCode- #include <ESP8266WiFi.h>
- #include <ESP8266WebServer.h>
- #include <ESP8266mDNS.h>
- ESP8266WebServer server(80);
- const char* ssid = "XXXXXXXXXXXXXXX";
- const char* password = "XXXXXXXXXXXXXXXXXXXX";
- // following for the name of: http://Licht-Garage.loacal/
- const char* dns_name = "Licht-Garage";
- int d0 = 16;
- int d0_status = 0;
- int d1 = 5;
- int d1_status = 0;
- int d2 = 4;
- int d2_status = 0;
- void setup()
- {
- Serial.begin(115200);
- Serial.println("ESP Gestartet");
- pinMode(d0, OUTPUT);
- pinMode(d1, OUTPUT);
- pinMode(d2, OUTPUT);
- WiFi.begin(ssid, password);
- Serial.print("Verbindung wird hergestellt ...");
- while (WiFi.status() != WL_CONNECTED)
- {
- delay(500);
- Serial.print(".");
- }
- Serial.println();
- Serial.print("Verbunden! IP-Adresse: ");
- Serial.println(WiFi.localIP());
- if (MDNS.begin("dns_name")) {
- Serial.println("DNS gestartet, erreichbar unter: ");
- Serial.println("http://"+String(dns_name)+".local/");
- }
- server.onNotFound([](){
- server.send(404, "text/plain", "esp8266 test");
- });
- server.on("/", []() {
- server.send(200, "text/plain", "ESP-Startseite!");
- });
- server.on("/relay1_on",[]() {
- server.send(200, "text/plain", "Relais an");
- relay1_on();
- });
- server.on("/relay1_off", []() {
- server.send(200, "text/plain", "Relais aus");
- relay1_off();
- });
- server.on("/relay1_state", []() {
- server.send(200, "text/plain", String(digitalRead(16)));
- });
- server.on("/relay2_on",[]() {
- server.send(200, "text/plain", "Relais an");
- relay2_on();
- });
- server.on("/relay2_off", []() {
- server.send(200, "text/plain", "Relais aus");
- relay2_off();
- });
- server.on("/relay2_state", []() {
- server.send(200, "text/plain", String(digitalRead(5)));
- });
- server.on("/relay3_on",[]() {
- server.send(200, "text/plain", "Relais an");
- relay3_on();
- });
- server.on("/relay3_off", []() {
- server.send(200, "text/plain", "Relais aus");
- relay3_off();
- });
- server.on("/relay3_state", []() {
- server.send(200, "text/plain", String(digitalRead(4)));
- });
- server.begin();
- Serial.println("Webserver gestartet.");
- }
- void loop() {
- server.handleClient();
- }
- void relay1_on(){
- digitalWrite(d0, HIGH);
- }
- void relay1_off(){
- digitalWrite(d0, LOW);
- }
- void relay2_on(){
- digitalWrite(d1, HIGH);
- }
- void relay2_off(){
- digitalWrite(d1, LOW);
- }
- void relay3_on(){
- digitalWrite(d2, HIGH);
- }
- void relay3_off(){
- digitalWrite(d2, LOW);
- }
-
Nutze ich... hab es jetzt aber nach langen Probieren hinbekommen und es funktioniert auch per iPhone. Weitere Schalter einrichten ist ja jetzt kopieren und einfügen.
Jetzt ist nur das Problem, dass der ESP bzw der Status manchmal „Einschläft“ und es erst nach kurzer Zeit aktuell ist
-
Hey Dankeschön erstmal für den Tipp! Ich probiere das gleich heute Abend noch aus.
Sind die Zeilen für accessories soweit richtig?
ich bekomme keine Geräte in der Homekit App angezeigt -
Hallo Leute!
ich bin neu im Forum weil ich langsam verzweifelt bin... ich habe auf der Weboberfläche (makesmart-server) einen HTTP Switch installiert und wollte diesen jetzt in der config anpassen. Leider sind da immer irgendwie fehler drin laut jsonlint.com. Mein ESP8266 reagiert schon auf meine anfragen im Browser ohne Probleme (relay_on und relay_off). Dazu kommt noch erschwerend, dass ich die Weboberfläche plötzlich nicht mehr im Browser erreichen kann unter http://makesmart-server:8080/login. Es kommt immer eine Fehlermeldung. Mit FileZilla komm ich noch auf den Server drauf und kann alles öffnen. Vieleicht hat jemand einen Tipp für mich wo der fehler liegt!?
Hier der Code im Server:
Code- {
- "bridge": {
- "name": "makesmart-Server",
- "username": "CC:22:3D:E3:CE:30",
- "port": 51826,
- "pin": "031-45-154"
- ],
- "platforms": [
- {
- "platform": "config",
- "name": "Config",
- "port": 8080,
- "sudo": true,
- "restart": "sudo /etc/init.d/homebridge restart",
- "log": {
- "method": "file",
- "path": "/var/log/homebridge.log"
- }
- }
- ],
- "accessories": [
- {
- "accessory": "HTTP-SWITCH",
- "name": "Licht Haustür",
- "switchType": "stateful",
- "onUrl": "http://esp-haustuer.fritz.box/relay_on",
- "offUrl": "http://esp-haustuer.fritz.box/relay_off",
- "statusUrl": "http://esp-haustuer.fritz.box/relay_status"
- }
- ]
- }
Hier der Code vom ESP:
Code- #include <ESP8266WiFi.h>
- #include <ESP8266WebServer.h>
- #include <ESP8266mDNS.h>
- ESP8266WebServer server(80);
- const char* ssid = "FRITZ!Box 7590 RY";
- const char* password = "XXXXXXXXXX";
- // following for the name of: http://haustuer.loacal/
- const char* dns_name = "Haustuer";
- int d1 = 5;
- int d1_status = 0;
- void setup()
- {
- Serial.begin(115200);
- Serial.println("ESP Gestartet");
- pinMode(d1, OUTPUT);
- WiFi.begin(ssid, password);
- Serial.print("Verbindung wird hergestellt ...");
- while (WiFi.status() != WL_CONNECTED)
- {
- delay(500);
- Serial.print(".");
- }
- Serial.println();
- Serial.print("Verbunden! IP-Adresse: ");
- Serial.println(WiFi.localIP());
- if (MDNS.begin("dns_name")) {
- Serial.println("DNS gestartet, erreichbar unter: ");
- Serial.println("http://"+String(dns_name)+".local/");
- }
- server.onNotFound([](){
- server.send(404, "text/plain", "esp8266 test");
- });
- server.on("/", []() {
- server.send(200, "text/plain", "ESP-Startseite!");
- });
- server.on("/relay_on",[]() {
- server.send(200, "text/plain", "Relais an");
- relay_on();
- });
- server.on("/relay_off", []() {
- server.send(200, "text/plain", "Relais aus");
- relay_off();
- });
- server.begin();
- Serial.println("Webserver gestartet.");
- }
- void loop() {
- server.handleClient();
- }
- void relay_on(){
- digitalWrite(d1, HIGH);
- }
- void relay_off(){
- digitalWrite(d1, LOW);
- }