Reedkontakt für Gaszähler in BSB LAN integrieren

Begonnen von Flashor, 12 September 2022, 00:33:49

Vorheriges Thema - Nächstes Thema

Flashor

Hallo Leute!
Ich habe gerade mit Arduino und BSB LAN gleichzeitig angefangen und hänge an einem vermutlich für die meisten recht einfachem Problem. Ich wollte neben der Heizungssteuerung auch noch ein den Gaszähler über den Arduino auslesen. Da ich noch nie mit Arduino gearbeitet hab, war mein plan ersmal einfach nur die Codes zum Steuern von simplen Ausgängen anzuschauen, aber da scheitert es schon.
Mein Setup: Ich hab das Arudino mit Lan Shield (aber ohne Lan Kabel) und BSB-LAN (aber ohne angeschlossene Heizung) neben mir auf dem Tisch. Wenn ich Version 2.1.8 hochlade klappt auch alles wie geplant. Dann wollte ich mich an "6.8 Eigenen Code in BSB-LAN einbinden" langhangeln und erstmal nur Spannung an einem digitalen Ausgang ändern, aber hier scheitert es. Mein BSB_LAN_custom_global:


// Add custom code for setup function here which will be included at the end of the global section
const int gaszahlerpin = 23;
pinMode(gaszahlerpin, OUTPUT);    // sets the digital pin 13 as output
digitalWrite(gaszahlerpin, HIGH)
printlnToDebug(PSTR("SET 23 OUTPUT HIGH"));
DebugOutput.println(F("SET 23 OUTPUT HIGH"));
Serial.println("SET 23 OUTPUT HIGH");


und mein BSB_LAN_custom:

bool testtoggle= false;
if (custom_timer > custom_timer_compare+2000) {    // every 20 seconds 
  custom_timer_compare = millis();
  if (testtoggle == true){
  digitalWrite(gaszahlerpin, HIGH); // Setzt den Digitalpin 13 auf HIGH = "Ein"
  } else
  digitalWrite(gaszahlerpin, LOW);  // Setzt den Digitalpin 13 auf LOW = "Aus"
  testtoggle = !testtoggle;   
}


Leider sehe ich aber keinen Text im Seriellen Port und die Spannung über Pin 23 zu Ground ändert sich auch nicht.

1. Ich schaff es leider nichtmal mir irgendwie eine Botschaft über den Seriellen Monitor auszugeben. Was ist da der Befehl?
2. Gibt es schon eine Lösung für eine Erweiterung für einen einfachen Reed Kontakt für das BSB-LAN? Ich habe danach gesucht aber leider nichts gefunden.
3. Wie würde man generell einen Hardware Knopf in das System einbinden?
Vielen Dank!

Gisbert

#1
Hallo Flashor,

deine Anfrage ist für dieses Forum vermutlich schon sehr speziell. Ob es mindestens den einen gibt, der deine Installation bei sich implementiert hat und dir dann auch antwortet, ist nicht sicher.

Bei der Arduino-Programmierung von ESP8266/ESP32 hatte ich zu anfangs eigene Sketche, bei denen ich immer wieder an meine Grenzen gestoßen bin. Ich nutze deshalb mittlerweile fertige Binärdateien der Softwarepakete ESPEasy und Tasmota. Ich würde an deiner Stelle nach etwas vergleichbarem bei Arduino suchen, oder zumindest fertige Binärdateien flashen, die für deine Anwendung brauchbar sind. Das hilft dir jetzt auch nicht unmittelbar weiter, aber vielleicht ist es ein Ansatz.

Eine andere Möglichkeit wäre es, statt eines Arduinos einen ESP8266/ESP32 einzusetzen. Es gibt fertige Boards, z.B. NodeMCU oder Wemos D1 mini. Die ESPs sind zwar nicht in allen Funktionen identisch zu den Arduinos, aber so gut wie. Lediglich die Analogeingänge sind bei den ESPs schwächer als beim Arduino, dafür haben die ESPs schon Wlan integriert. Bei einem ESP8266/ESP32 könnte ich (und viele andere) dir direkt helfen.

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

Schotty

Hi Flashor,

nun auch nochmal kurz hier - Rückfragen bzw. die weitere Kommunikation zu jedweden BSB-LAN-Themen dann bitte drüben im BSB-LAN-Thread.

Zu deinem Code-Problem kann ich mangels Programmierkenntnissen leider nichts sagen.

Ich persönlich würde es in deinem Fall aber auch so machen, wie Gisbert es vorgeschlagen hat und für die Reedkontakt-Gaszählergeschichte ein eigenes Setup mit bspw nem ESP8266 und Tasmota o.ä. aufbauen, das sollte dann ja mit der Counter-Funktion klappen. Bauvorschläge samt Codebeispielen etc finden sich ja genug im Netz, das ist ja etwas, was schon viele Leute umgesetzt haben. Bzgl Tasmota (jetzt nur als Beispiel) guck z.B. mal hier: https://forum.creationx.de/forum/index.php?thread/1673-gasz%C3%A4hler-counter-mit-tasmota-firmware/&pageNo=2.

Je nachdem, welches Heizungs-&Reglermodell du genau hast, hast du dort aber evtl auch schon die Funktion einer internen Gasenergiezählung drin, die u.U. nur noch aktiviert und eingestellt werden muss. Die könntest du dann wiederum bequem per BSB-LAN abfragen, ohne dass du zusätzliche Hardware für den Gaszähler verbauen musst.
Handbuch zur BSB-LAN Hard- & Software (Anbindung v. Heizungsreglern, u.a. von Brötje & Elco):
https://1coderookie.github.io/BSB-LPB-LAN/