RWE/Innogy/Livisi Bewegungsmelder WMD - Homematic/AskSinPP Firmware

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

Moderator: Co-Administratoren

recep
Beiträge: 27
Registriert: 28.07.2020, 22:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal
Danksagung erhalten: 1 Mal

Re: RWE/Innogy/Livisi Bewegungsmelder WMD - Homematic/AskSinPP Firmware

Beitrag von recep » 09.10.2022, 16:20

Also ich hab es nicht geschaft den OPT3001 zu Implementieren, die beiden Bewegungsmelder Sensoren gehen.
Das was ich feststellen konnte sind diese beiden abschnitte die ich einfügen müste .
Leider sind meine kentnisse zuwenig

Code: Alles auswählen

#include <sensors/Opt3001.h>
typedef MotionChannel<Hal, PEERS_PER_CHANNEL, List0, Opt3001<> > MChannel;

recep
Beiträge: 27
Registriert: 28.07.2020, 22:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal
Danksagung erhalten: 1 Mal

Re: RWE/Innogy/Livisi Bewegungsmelder WMD - Homematic/AskSinPP Firmware

Beitrag von recep » 16.10.2022, 08:43

Ich habe anfang der woche horbitt geschrieben, Großen dank an ihn.
Er hat mir das gerkärt mit dem I2C.
aber nach dem alles nicht so geklaptt hat wie es sollte hab ich den Sensor aus gelötet da die Platine hinüber war.
Haben festgestellt das der Licht Sensor nur 4Pins hat somit ein Analoger Licht Sensor ist.
Der Sensor wird über PD4 mit Strom versorgt und über ADC6 wird die Spannung gemessen.

Mal sehen ob ich für ein Analogen Licht Sensor ein Stech finde damit ich es ein fügen kann, ich bin auch beim überlegen ob ich ein BH1750 da ein löte kostet ja auf aliexpress ja um die 1-2€. Aber würde es bevorzugen es ohne extra kosten zu machen

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: RWE/Innogy/Livisi Bewegungsmelder WMD - Homematic/AskSinPP Firmware

Beitrag von jp112sdl » 16.10.2022, 09:02

Das sollte sich relativ einfach umsetzen lassen.

Code: Alles auswählen


class analogBrightness : public Brightness {
public:
  analogBrightness () {}
  void init () {
    _present = true;
    pinMode(A6, INPUT);
  }

  void measure (__attribute__((unused)) bool async=false) {
    _brightness = analogRead(A6);
  }  
};

typedef MotionChannel<Hal,PEERS_PER_CHANNEL,List0,analogBrightness > MChannel;
Ist jetzt erstmal nur ein Code-Beispiel.

VG,
Jérôme ☕️

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

recep
Beiträge: 27
Registriert: 28.07.2020, 22:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal
Danksagung erhalten: 1 Mal

Re: RWE/Innogy/Livisi Bewegungsmelder WMD - Homematic/AskSinPP Firmware

Beitrag von recep » 16.10.2022, 20:09

Danke Jérôme,
ich habs ausprobiert, mit A6 hat der mir nichts angezeigt anzeige noch auf Helligkeit: 0
habe die Pin´s geändert von A6 auf D4 Helligkeit: 255
255 den Wert kannte ich schon 0,255 Mohm bei beleuchtetem raum und 1,8 Mohm bei Direkte beleuchtung mit LED Taschenlampe

recep
Beiträge: 27
Registriert: 28.07.2020, 22:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal
Danksagung erhalten: 1 Mal

Re: RWE/Innogy/Livisi Bewegungsmelder WMD - Homematic/AskSinPP Firmware

Beitrag von recep » 19.10.2022, 20:14

Guten Abend,
da ich mich in den letzten Tagen etwas eingelesen habe in Thema Arduino,
habe ich den code etwas überarbeitet oder besser gesagt in
Zeile 89: pinMode(4,OUTPUT);
Zeile 105: digitalWrite(4,HIGH);
eingefügt, werte für Helligkeit wird bei Bewegung übermittelt
255 Bei Dunkelheit
0 Bei Taschenlampe

Dieser Skech ist für den WMDO Bewegungmelder für Aussen
für den WMD Bewegungsmelder Innen muss der Skech angepsst werden.


Ich werde in der nächsten Zeit Testen und auch berichten auch wielange die Batterien halten

Code: Alles auswählen

//- -----------------------------------------------------------------------------------------------------------------------
// AskSin++
// 2016-10-31 papa Creative Commons - http://creativecommons.org/licenses/by-nc-sa/3.0/de/
// ci-test=yes board=328p aes=no
//- -----------------------------------------------------------------------------------------------------------------------


#define EI_NOTEXTERNAL
#include <EnableInterrupt.h>
#include <AskSinPP.h>
#include <LowPower.h>
#include <Register.h>

#include <MultiChannelDevice.h>
#include <Motion.h>

#define LED_PIN 8
#define CONFIG_BUTTON_PIN 0
// WMDO Bewegungsmelder Aussen
#define PIR_PIN 14
// WMD Bewegungsmelder Innen
//#define PIR_PIN1 17
//#define PIR_PIN2 14
#define PEERS_PER_CHANNEL 10



#define BAT_VOLT_LOW        34  // 3.4V low voltage threshold
#define BAT_VOLT_CRITICAL   29  // 2.9V critical voltage threshold, puts AVR into sleep-forever mode
#define BAT_SENSOR BatterySensor






// all library classes are placed in the namespace 'as'
using namespace as;

// define all device properties
const struct DeviceInfo PROGMEM devinfo = {
    {0x56,0x78,0x68},       // Device ID
    "papa222268",           // Device Serial
    {0x00,0x4a},            // Device Model
    0x16,                   // Firmware Version
    as::DeviceType::MotionDetector, // Device Type
    {0x01,0x00}             // Info Bytes
};

/**
 * Configure the used hardware
 */
typedef AvrSPI<10, 11, 12, 13> SPIType;
typedef Radio<SPIType,2> RadioType;
typedef StatusLed<LED_PIN> LedType;
typedef AskSin<LedType,BAT_SENSOR,RadioType,Brightness> Hal;

class analogBrightness : public Brightness {
public:
  analogBrightness () {}
  void init () {
    _present = true;
    pinMode(A6, INPUT);
  }

  void measure (__attribute__((unused)) bool async=false) {
    _brightness = analogRead(A6);
  }  
};

typedef MotionChannel<Hal,PEERS_PER_CHANNEL,List0,analogBrightness> MChannel;
typedef MultiChannelDevice<Hal,MChannel,1> MotionType;

Hal hal;
MotionType sdev(devinfo,0x20);
ConfigButton<MotionType> cfgBtn(sdev);

void setup () {
  DINIT(57600,ASKSIN_PLUS_PLUS_IDENTIFIER);
  sdev.init(hal);
  buttonISR(cfgBtn,CONFIG_BUTTON_PIN);
  // WMDO Bewegungsmelder Aussen
  motionISR(sdev,1,PIR_PIN);
  // WMD Bewegungsmelder Innen
  //motionISR(sdev,1,PIR_PIN1);
  //motionISR(sdev,2,PIR_PIN2);
  hal.initBattery(60UL*60,BAT_VOLT_LOW,BAT_VOLT_CRITICAL); // Measure Battery every 1h
  sdev.initDone();
  pinMode(4,OUTPUT);
}

void loop() {
  bool worked = hal.runready();
  bool poll = sdev.pollRadio();
  if( worked == false && poll == false ) {
    // deep discharge protection
    // if we drop below critical battery level - switch off all and sleep forever
    if( hal.battery.critical() ) {
      // this call will never return
      hal.activity.sleepForever(hal);
    }
    // if nothing to do - go sleep
    hal.activity.savePower<Sleep<>>(hal);
  }
  digitalWrite(4,HIGH);
}
Viel Spaß und Grüße aus Berlin

Lobot
Beiträge: 2
Registriert: 02.12.2022, 14:26
System: keine Zentrale (nur Pairing, FHEM etc.)

Re: RWE/Innogy/Livisi Bewegungsmelder WMD - Homematic/AskSinPP Firmware

Beitrag von Lobot » 02.12.2022, 14:36

Hallo zusammen!

Zunächst vielen Dank für die tolle Arbeit an den AskSin Sketches!

Ich habe bereits erfolgreich mehrere RWE BRC8 und WSC2 umgeflasht und in FHEM an einer VCCU mit dem HM-UART Modul in Betrieb genommen.

Nun habe ich mich an zwei WMD versucht.

Flashen und Bewegungserkennung funktioniert grundlegend schomal.

Ich habe nur das Problem, dass mir beide WMD genau alle 5 Minuten eine nicht vorhandene Bewegung zusammen mit einem Battery Low melden.

Batterien sind natürlich neu, voll und wurden auch mal durchgetauscht. Da es beide Bewegungsmelder betrifft, vermute ich mal, dass es an der Software hängt.

Hat jemand eine Idee?

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: RWE/Innogy/Livisi Bewegungsmelder WMD - Homematic/AskSinPP Firmware

Beitrag von jp112sdl » 03.12.2022, 10:41

Alle 5min. - das ist der Timer für die Übertragung der Umgebungshelligkeit
https://github.com/pa-pa/AskSinPP/blob/ ... tion.h#L64

Warum das bei dir Probleme macht, kann ich dir nicht sagen. Hab so einen WMD nicht.

Jedoch schrieb recep bereits:
recep hat geschrieben:
19.10.2022, 20:14
für den WMD Bewegungsmelder Innen muss der Skech angepsst werden.

Vielleicht meldet er sich ja hier noch.

VG,
Jérôme ☕️

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

recep
Beiträge: 27
Registriert: 28.07.2020, 22:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal
Danksagung erhalten: 1 Mal

Re: RWE/Innogy/Livisi Bewegungsmelder WMD - Homematic/AskSinPP Firmware

Beitrag von recep » 03.12.2022, 11:05

Ich bin grade leider nicht in Deutschland, wenn ich zurück bin werde ich mich daran setzten und schauen, was da los ist. Batterie LOW könnte sein das der Wert nicht richtig. Ich hab das auch war aber faul meinen nochmal auseinander zu nehmen und neu zu flashen. Bin Montag zurück Werd Mal sehen was ich tun kann.
Bis dahin etwas Geduld bitte

Lobot
Beiträge: 2
Registriert: 02.12.2022, 14:26
System: keine Zentrale (nur Pairing, FHEM etc.)

Re: RWE/Innogy/Livisi Bewegungsmelder WMD - Homematic/AskSinPP Firmware

Beitrag von Lobot » 07.12.2022, 11:18

Hi recep,

vielen Dank für die Rückmeldung.

Ich hatte hatte sowohl deinen zuletzt geposteten Sketch (auf WMD angepasst), als auch den aus dem ersten Post ohne den Helligkeitswert versucht. Beide werfen nach 5min einen Fehler.

Bei korrekt erkannter Bewegung wird der Helligkeitswert auch problemlos mit übermittelt.

Das Battery low ist quasi nur den Bruchteil einer Sekunde im Reading und dann wieder auf OK. Mit bloßem Auge wäre mir das nicht aufgefallen. Jedoch habe ich für die HM Geräte ein notify laufen, dass mir bei schwacher Batterie ein Push sendet und das ist dann regelmäßig alle 5min angesprungen.

Von AskSinPP habe ich den aktuellen Master-branch importiert.

Beste Grüße,
Martin

Surfi
Beiträge: 30
Registriert: 16.01.2019, 13:42
Hat sich bedankt: 5 Mal
Danksagung erhalten: 2 Mal

Re: RWE/Innogy/Livisi Bewegungsmelder WMD - Homematic/AskSinPP Firmware

Beitrag von Surfi » 04.02.2023, 17:57

Hallo zusammen,

ich habe auch mal den Sketch ausprobiert. Er scheint grundlegend zu funktionieren. Nach einigen Tests it mir auch aufgefallen,
dass die "low Battery" Meldungen auch bei meinem BM in dem Abstand kommen. Zusätzlich erkennt er häufig "falsche" Bewegungen.

Gibt es da etwas neues @recep?
recep hat geschrieben:
werte für Helligkeit wird bei Bewegung übermittelt
255 Bei Dunkelheit
0 Bei Taschenlampe
Ist das normalerweise bei den Bewegungsmeldern nicht genau umgekehrt? 0 bei Dunkelheit und 255 wenn es hell ist?
VG
Thomas
VG Thomas

Antworten

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