NEWS
Welches WLAN GErät um Magnetkontakt aufzunehmen?
-
N'abend zusammen!
Hat jemand einen Tipp?Problem: Magnetkontakt im Rollladenkasten muss auf ein Gerät (Shelly?Sonoff?..) gebracht und über IOBROKER ausgewertet werden.
Zur Verfügung stehen ebenfalls im Rollladenkasten L, N, PE, sprich: 230V
anders ausgedrückt: Wir brauchen einen potentialfreien Eingang.Grund: Unser IY(ST)Y Kabel zum KNX Koppler ist defekt und nicht austauschbar.
Frage: Was kann man hier am einfachsten nehmen? Arduino ist leider raus da keine Kenntnisse vorliegen. Kann man z.B. einen Sonoff
dazu missbrauchen? Sonoff oder Shelly würden von der Größe gut funktionieren.
Die Zugängigkeit ist nach der Installation allerdings nicht mehr gegeben. Einmal einbauen - immer laufen ist der Ansatz.Hat jemand einen schnellen Tipp für uns?
VG
Chrizzel -
@chrizzel
Was soll denn ein potentialfreier Eingang sein? -
@el_malto Hast recht, falsch ausgedrückt. Also eigentlich einfach ein Eingang zum Anschluss eines Magnetkontaktes.
Natürlich ist der Magnetkontakt potentialfrei (sprich: hat keine eigene Spannung), nicht der Eingang. -
@chrizzel sagte in Welches WLAN GErät um Magnetkontakt aufzunehmen?:
Grund: Unser IY(ST)Y Kabel zum KNX Koppler ist defekt und nicht austauschbar.
Was wäre hiermit :
.
-
ich würde trotzdem ein Arduino o.ä. nehmen, z.B. das Nano iot 33 welcher bereits wlan hat und mit mqtt-library sehr einfach in den iobroker intrgriert wird.
Das braucht ein paar wenige Zeilen Code die du im Netz zusammensammeln kannst (Wifi init, mqtt init, senden an iobroker bei Änderung) und kostet weniger als die meisten anderen Lösungen. Für einen einzelnen Magnetsensor musst du nicht mal löten, einfach Kabel auf einen DI und GND stecken und DI auf INPUT_PULLUP stellen. Den Code würde ich dir sogar noch schreiben -
Code fürs Arduino würde dann ungefähr so aussehen:
#include <WiFiNINA.h> #include <MQTT.h> // Settings const char WIFI_SSID[] = "wifissid"; const char WIFI_PASS[] = "wifipasswd"; const char mqttServer[] = "192.168.1.100"; // IP IO-Broker const char mqttDevice[] = "DeviceName"; // Device Name for IO-Broker #define PIN_MAGNET_CONTACT 3 WiFiClient WiFi_client; MQTTClient MQTT_client; void setup(void) { pinMode(PIN_MAGNET_CONTACT, INPUT_PULLUP); pinMode(LED_BUILTIN, OUTPUT); digitalWrite(LED_BUILTIN, HIGH); } bool StateBefore = false; bool Resend = true; void loop(void) { if (!WiFi_client.connected()) { Resend = true; digitalWrite(LED_BUILTIN, HIGH); while (WiFi.begin(WIFI_SSID, WIFI_PASS) != WL_CONNECTED) { delay(1000); } MQTT_client.begin(mqttServer, 1883, WiFi_client); while (!MQTT_client.connect(mqttDevice)) { delay(1000); } digitalWrite(LED_BUILTIN, LOW); } MQTT_client.loop(); bool State = digitalRead(PIN_MAGNET_CONTACT) == HIGH; if (State != StateBefore || Resend) { StateBefore = State; Resend = false; MQTT_client.publish("/MagnetContact.State", State ? "true" : "false", true); } delay(1000); }
-
@chrizzel
Wenn der Magnetkontakt 230V schalten kann, kannst einen Shelly nehmen.