Vorab ist mir bewusst das dies hier ein Forum für die Software FHEM ist.
Da aber im Homebridge Forum eine Unverschämtheit an den Tag gelegt wird (Threat existiert seit 3 Wochen 102 Aufrufe 0 Antworten), versuche ich einmal in diesem Forum mein Glück.
Ich habe bereits Homebridge auf meinem Raspberry Pi B2+ Installiert dies läuft auch. Als Gerät werden Realy Boards von LC-Technology (Esp8266-01) mit passendem Code verwendet
Hier der Code:
"#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
const char* ssid = "Dark_W-Lan";
const char* password = "xxxx";
const long lockTimeout = 3;
byte relON[] = {0xA0, 0x01, 0x01, 0xA2};
byte relOFF[] = {0xA0, 0x01, 0x00, 0xA1};
ESP8266WebServer server(80);
long unlockedTime = 2;
void handleQuery() {
char rsp[255];
sprintf(rsp, "{\"state\":\"%s\",\"statusCode\":200}", Serial.write(relON, sizeof(relON)) ? "auf" : "zu");
server.send(200, "text/plain", rsp);
}
void handleLock() {
String state = server.arg("state");
if (state == "locked") {
Serial.write(relOFF, sizeof(relOFF));
} else {
Serial.write(relON, sizeof(relON));
unlockedTime = millis();
}
server.send(200, "text/plain", "{\"battery\":100,\"statusCode\":200}");
}
void setup() {
Serial.begin(9600);
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);
server.on("/", HTTP_GET, handleQuery);
server.on("/", HTTP_POST, handleLock);
server.begin();
}
void loop() {
server.handleClient();
// Restore lock status
if ((unlockedTime > 2) && (millis() - unlockedTime > lockTimeout)) {
unlockedTime = 0;
Serial.write(relON, sizeof(relON));
}
}
"
Das Problem ist das wenn ich auf die App Homekit tippe dass das Relay sich einschaltet und das Homebridge nach einer weile nicht mehr erreichbar ist.
Anfersich funktioniert sonst alles nur hallt diese zwei Probleme die dieses Projekt unnutzbar machen.