Wetterstation HB-UNI-SEN-WEA

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

chka
Beiträge: 2483
Registriert: 13.02.2012, 20:23
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 302 Mal
Danksagung erhalten: 116 Mal

Re: Wetterstation HB-UNI-SEN-WEA

Beitrag von chka » 12.07.2018, 10:25

Ich schaue mir das am we mal an und nehme a0 bis a3 man kann dir wohl auch als digitale nehmen.
Wollte sowieso alles mal in den w132 einbauen icl aller sensoren und dem board
RaspberryMatic - CuL 868mHz- CuxDemon - PioTek Tracker - Velux mit KLF200 und Somfy Anbindung- io.Broker auf Proxmox NUC6I3SYH i3-6100U RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 849 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: Wetterstation HB-UNI-SEN-WEA

Beitrag von jp112sdl » 12.07.2018, 10:38

chka hat geschrieben:
12.07.2018, 10:25
man kann dir wohl auch als digitale nehmen.
Ja, das geht problemlos. Besonderheiten gibts nur bei Pin A6 und A7, die können nicht als digitale Eingänge genutzt werden.
Da kann man nur mit analogRead rangehen.

Wenn du den Code fertig hast, kannst du ja einen PullRequest machen oder die Änderungen hier posten (sofern du sie mit uns teilen möchtest).

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

chka
Beiträge: 2483
Registriert: 13.02.2012, 20:23
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 302 Mal
Danksagung erhalten: 116 Mal

Re: Wetterstation HB-UNI-SEN-WEA

Beitrag von chka » 12.07.2018, 10:42

Klar stelle ich das zu Verfügung wenn es läuft bzw wenn ich hilfe brauche 😜
Werde dafür separat einen Thread aufmachen, der Übersicht zu liebe.
RaspberryMatic - CuL 868mHz- CuxDemon - PioTek Tracker - Velux mit KLF200 und Somfy Anbindung- io.Broker auf Proxmox NUC6I3SYH i3-6100U RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 849 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: Wetterstation HB-UNI-SEN-WEA

Beitrag von jp112sdl » 12.07.2018, 10:49

Ich würde die Windrichtungsmessung für den W132 dann als separate Funktion in den Code mit aufnehmen, so dass man entweder a) über ein #define zu Beginn des Codes oder b) über eine Einstellung in der WebUI den Windrichtungsmesser-Typ auswählen kann.
Damit man nicht mehrere Sketche pflegen muss.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

chka
Beiträge: 2483
Registriert: 13.02.2012, 20:23
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 302 Mal
Danksagung erhalten: 116 Mal

Re: Wetterstation HB-UNI-SEN-WEA

Beitrag von chka » 12.07.2018, 10:56

Ja so wie mit dem helligkeitssensor
RaspberryMatic - CuL 868mHz- CuxDemon - PioTek Tracker - Velux mit KLF200 und Somfy Anbindung- io.Broker auf Proxmox NUC6I3SYH i3-6100U RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 849 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: Wetterstation HB-UNI-SEN-WEA

Beitrag von jp112sdl » 12.07.2018, 21:34

papa hat geschrieben:
11.07.2018, 20:48
jp112sdl hat geschrieben:
11.07.2018, 20:27
papa hat geschrieben:
11.07.2018, 20:22
jp112sdl hat geschrieben:
11.07.2018, 14:48
Dann habe ich das seltsame Phänomen, dass keine Konfigurationsdaten ordentlich quittiert werden.
Wahrscheinlich wird dann zu schnell geantwortet. Kannst ja mal den SendTimeOut in ChannelDevice::process in MultChannelDevice.h Zeile 215 erhöhen.
Mit FHEM habe ich da kein Problem.
Danke, werd ich morgen mal checken.
Heute konnte ich den Blitzdetektor endlich mal ausgiebig testen. :)
In

Code: Alles auswählen

Device::sendInfoParamResponsePairs()
und

Code: Alles auswählen

Device::sendInfoPeerList()
könnte nach dem send() auch noch ein

Code: Alles auswählen

radio().setSendTimeout(100)
rein.
Also es lag nicht am Timing.
Es hatte irgendwas damit zu tun, dass ich in der "PWFusion_AS3935.cpp" noch die Serial.println() drin hatte.
Habe dort jetzt alles auf DPRINT() umgestellt. Wenn ich nun mit NDEBUG das serielle Debugging deaktiviere, werden auch die Konfigurationsdaten korrekt übertragen.

Aber eins verstehe ich noch nicht.

Ich definiere in der HB-UNI-Sen-WEA.ino zu allererst

Code: Alles auswählen

#define NDEBUG
noch bevor ich die

Code: Alles auswählen

#include "Sensors/Sens_As3935.h"
hinzufüge, in der wiederum das

Code: Alles auswählen

#include "../PWFusion_AS3935.h"
erfolgt.

Es erscheinen trotzdem noch die DPRINTLN("...")-Meldungen aus der "PWFusion_AS3935.cpp".
Nur wenn ich in der "PWFusion_AS3935.cpp" auch noch mal #define NDEBUG hinzufüge, sind wirklich alle Debugmeldungen aus.

Wird das

Code: Alles auswählen

#define NDEBUG
aus dem "Hauptsketch" nicht bis in die Libs durchgereicht?
Muss ich dafür noch etwas zusätzlich machen?

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 849 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: Wetterstation HB-UNI-SEN-WEA

Beitrag von jp112sdl » 12.07.2018, 22:01

Hier noch für alle zur Info:
Im Github ist jetzt der aktuelle Sketch mit Regenerkennung.
Der Regendetektor kann an Pin 9 angeschlossen werden (sofern ihr den Pin nicht im Sketch ändert ^^).

Code: Alles auswählen

#define RAINDETECTOR_PIN    9
Die Pegel sind: Trocken = HIGH, Regen = LOW.

Das kann aber auch geändert werden bei

Code: Alles auswählen

#define PIN_LEVEL_ON_RAIN   LOW
-> HIGH eintragen.

Wird Regen erkannt, wird sofort ein Telegramm gesendet.
Ist es wieder trocken, wird dieser Zustand erst beim regulären nächsten zyklischen Telegramm gesendet.
Wer auch hier sofort eine Meldung haben möchte, ändert

Code: Alles auswählen

      if (wasraining != israining) {
        if (!israiningMsgSent) {
          sendExtraMessage();
          israiningMsgSent = true;
        }
      }
in

Code: Alles auswählen

      if (wasraining != israining) {
          sendExtraMessage();
      }
Aber bedenkt, dass es u.U. zu zu häufigen Übertragungen kommen kann, wenn der Zustand zwischen Regen/Trocken "flapped".

Extratelegramme (Regen erkannt, Böe > xx km/h (sofern konfiguriert)) werden grundsätzlich bidirektional übertragen; die zyklischen Meldungen werden weiterhin als Broadcast gesendet.

Der Sketch hat die Firmware Version 0x12 bekommen.
Mein Addon in der Version mind. V1.8 wird benötgt.
Es werden auch alle vorherigen Versionen (0x10 und 0x11) der Sketche weiterhin unterstützt.
Die XML-Device-Files liegen in allen Versionen im Addon drin.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Benutzeravatar
DiJe
Beiträge: 566
Registriert: 04.03.2015, 05:51
Hat sich bedankt: 2 Mal
Danksagung erhalten: 5 Mal

Re: Wetterstation HB-UNI-SEN-WEA

Beitrag von DiJe » 12.07.2018, 22:34

Hallo Jerome,
danke für die schnelle Umsetzung, deine tolle Arbeit und das du uns das zur Verfügung stellst.
Gruß Dieter
Gruß Dieter
----------------------------------------------------------------------------------------
RaspiMatic auf Raspi4 - 4Gb -nach Kernel Upgrade Temp.~50° - m.Addons: ioBroker, RedMatic, CCU-Historian, CUxD, Email, XMl Api
Geräte 120, davon DIY Geräte 35 -Variablen 213 - Programme 160 / Visualisierung mit Mediola auf 24" Acer DA241HL / läuft alles stabil

papa
Beiträge: 705
Registriert: 22.05.2018, 10:23
Hat sich bedankt: 24 Mal
Danksagung erhalten: 120 Mal

Re: Wetterstation HB-UNI-SEN-WEA

Beitrag von papa » 12.07.2018, 22:36

jp112sdl hat geschrieben:
12.07.2018, 21:34
Es erscheinen trotzdem noch die DPRINTLN("...")-Meldungen aus der "PWFusion_AS3935.cpp".
Nur wenn ich in der "PWFusion_AS3935.cpp" auch noch mal #define NDEBUG hinzufüge, sind wirklich alle Debugmeldungen aus.

Wird das

Code: Alles auswählen

#define NDEBUG
aus dem "Hauptsketch" nicht bis in die Libs durchgereicht?
Muss ich dafür noch etwas zusätzlich machen?
Das cpp-File wird separat übersetzt. Dort sind die Defines des Sketches nicht sichtbar. Du müsstest das NDEBUG global im Makefile setzen, damit es für alle Sourcefiles benutzt wird. In Eclipse kann ich das einfach in den Projekt-Settings einstellen. Keine Ahnung, ob das überhaupt mit der Arduino-IDE geht.
Anfragen zur AskSin++ werden nur im Forum beantwortet

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 849 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: Wetterstation HB-UNI-SEN-WEA

Beitrag von jp112sdl » 13.07.2018, 11:06

papa hat geschrieben:
12.07.2018, 22:36
Das cpp-File wird separat übersetzt. Dort sind die Defines des Sketches nicht sichtbar.
Alles klar, das erklärt es natürlich.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“