[Benötige Hilfe] MYSENSORS Pulse Sensor Watermeter Einrichtung

Begonnen von Jarnsen, 10 Januar 2016, 00:41:18

Vorheriges Thema - Nächstes Thema

Jarnsen

Hallo,

Ich habe mal wieder eine Frage. Mysensors serialGateway ist eingebunden mit Zuordnung des USB über ID (FTDI). Der Sensor Pulse Water wird auch über autocreate angelegt. Leider mit RadioID0. Und es werden keine Daten übertragen. Habe ich was vergessen oder steckt der Fehler tiefer im Detail. Im Anhang ein Screen vom log.

THX Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

Ich muß nochmal n Log anhängen.

Zitat
2016.01.11 19:21:12 5: MYSENSORS/RAW: /0;0;
2016.01.11 19:21:12 5: MYSENSORS/RAW: 0;0;/3;0;9;read: 0-0-0 s=255,c=0,t=17,p
2016.01.11 19:21:12 5: MYSENSORS/RAW: 0;0;3;0;9;read: 0-0-0 s=255,c=0,t=17,p/t=0,l=5,sg=0:1.5
2016.01.11 19:21:12 5: MYSENSORS/RAW: 0;0;3;0;9;read: 0-0-0 s=255,c=0,t=17,pt=0,l=5,sg=0:1.5/.1
0;255;0;0;1
2016.01.11 19:21:12 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 0-0-0 s=255,c=0,t=17,pt=0,l=5,sg=0:1.5.1'

2016.01.11 19:21:12 5: MYSENSORS gateway MySensorsGateway: read: 0-0-0 s=255,c=0,t=17,pt=0,l=5,sg=0:1.5.1
2016.01.11 19:21:12 5: MYSENSORS/RAW: 0;255;0;0;1/7;1.5.1
0;0;3;0;9;read: 0-0-0 s=25
2016.01.11 19:21:12 5: MYSENSORS Read: Rx: fr=000 ci=255 c=000(C_PRESENTATION) st=017(S_ARDUINO_NODE  ) ack=0 '1.5.1'

2016.01.11 19:21:12 5: MYSENSORS/RAW: 0;0;3;0;9;read: 0-0-0 s=25/5,c=3,t=6,pt=1,l=1,sg=0:0

2016.01.11 19:21:12 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 0-0-0 s=255,c=3,t=6,pt=1,l=1,sg=0:0'

2016.01.11 19:21:12 5: MYSENSORS gateway MySensorsGateway: read: 0-0-0 s=255,c=3,t=6,pt=1,l=1,sg=0:0
2016.01.11 19:21:13 5: MYSENSORS/RAW: /0;0;3;0;9;re
2016.01.11 19:21:13 5: MYSENSORS/RAW: 0;0;3;0;9;re/ad: 0-0-0 s=255,c=3,t=11,pt=0,l=
2016.01.11 19:21:13 5: MYSENSORS/RAW: 0;0;3;0;9;read: 0-0-0 s=255,c=3,t=11,pt=0,l=/11,sg=0:Water Meter
0;0;3;0;9;read: 0-0-0 s=25
2016.01.11 19:21:13 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 0-0-0 s=255,c=3,t=11,pt=0,l=11,sg=0:Water Meter'

2016.01.11 19:21:13 5: MYSENSORS gateway MySensorsGateway: read: 0-0-0 s=255,c=3,t=11,pt=0,l=11,sg=0:Water Meter
2016.01.11 19:21:13 5: MYSENSORS/RAW: 0;0;3;0;9;read: 0-0-0 s=25/5,c=3,t=12,pt=0,l=3,sg=0:1.1
0;0;3;0;9;read: 0-
2016.01.11 19:21:13 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 0-0-0 s=255,c=3,t=12,pt=0,l=3,sg=0:1.1'

2016.01.11 19:21:13 5: MYSENSORS gateway MySensorsGateway: read: 0-0-0 s=255,c=3,t=12,pt=0,l=3,sg=0:1.1
2016.01.11 19:21:13 5: MYSENSORS/RAW: 0;0;3;0;9;read: 0-/0-0 s=1,c=0,t=21,pt=0,l=0,sg=0:
0;1;0;0;21;
0;0;3;0;9;read: 0
2016.01.11 19:21:13 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 0-0-0 s=1,c=0,t=21,pt=0,l=0,sg=0:'

2016.01.11 19:21:13 5: MYSENSORS gateway MySensorsGateway: read: 0-0-0 s=1,c=0,t=21,pt=0,l=0,sg=0:
2016.01.11 19:21:13 5: MYSENSORS Read: Rx: fr=000 ci=001 c=000(C_PRESENTATION) st=021(S_WATER         ) ack=0 ''

2016.01.11 19:21:13 5: MYSENSORS/RAW: 0;0;3;0;9;read: 0/-0-0 s=1,c=2,t=24,pt=0,l=0,sg=0:
0;1;2;0;24;

2016.01.11 19:21:13 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 0-0-0 s=1,c=2,t=24,pt=0,l=0,sg=0:'

2016.01.11 19:21:13 5: MYSENSORS gateway MySensorsGateway: read: 0-0-0 s=1,c=2,t=24,pt=0,l=0,sg=0:
2016.01.11 19:21:13 5: MYSENSORS Read: Rx: fr=000 ci=001 c=002(C_REQ         ) st=024(V_VAR1          ) ack=0 ''
2016.01.11 19:21:28 5: MYSENSORS/RAW: /0;0;3;0;9;
2016.01.11 19:21:28 5: MYSENSORS/RAW: 0;0;3;0;9;/read: 0-0-0 s=1,c=2,t=24,pt=0,l=0,
2016.01.11 19:21:28 5: MYSENSORS/RAW: 0;0;3;0;9;read: 0-0-0 s=1,c=2,t=24,pt=0,l=0,/sg=0:
0;1;2;0;24;

2016.01.11 19:21:28 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 0-0-0 s=1,c=2,t=24,pt=0,l=0,sg=0:'

2016.01.11 19:21:28 5: MYSENSORS gateway MySensorsGateway: read: 0-0-0 s=1,c=2,t=24,pt=0,l=0,sg=0:
2016.01.11 19:21:28 5: MYSENSORS Read: Rx: fr=000 ci=001 c=002(C_REQ         ) st=024(V_VAR1          ) ack=0 ''

das Fhem nicht empfängt ist ja so nicht richtig, aber der Sensor aktualisiert das MYSENSORS_DEVICE nicht.


Device
(http://up.picr.de/24256642bu.jpg)

Gateway
(http://up.picr.de/24256643ud.jpg)

kann bitte nochmal jemand drüber schauen, bitte gebt mir noch nen Anstoß wie sich der Flow und das Volumen aktualisieren und zusammenrechnen. Wenn das dann so läuft möchte ich diese Sensoreinheit an meinen Gaszähler hängen und an meine Wasseruhren.


Danke im voraus

Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

#2
wie bekomme ich Var in den Gateway??

The sensor starts by fetching current volume reading from gateway (VAR 1)

Bei Domoticz funktioniert der Sender auch wenn die Werte noch nicht passen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

Hallo Jarnsen,

so sieht es bei mir aus, wenn der GateWay was schickt. Das fehlt bei Dir.
Zitat
2016.01.14 00:05:52 5: MYSENSORS/RAW: /100;3;1;0;34;5.73
2016.01.14 00:05:52 5: MYSENSORS Read: Rx: fr=100 ci=003 c=001(C_SET         ) st=034(V_FLOW          ) ack=0 '5.73'

Kannst Du am Sensor per Serial Console den output loggen? Dort sollte kein st=fail: auftauchen.

Gruß,
Matscher

Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

Hallo,

Danke für deine Antwort. st=fail sehe ich auf anhieb nicht, habe aber mal den Output Serial geloggt.
Komischerweise erhalte ich erst einen lesbaren Output bei 230400 Baut. da wurde dann value 734 oder so in etwa angezeigt. Hatte dann versucht den Gateway auf 230400 zu stellen aber das brachte auch keine Besserung. Habe dann wieder auf 115200 am Gateway gestellt.

Mehr konnte ich erst mal nicht machen.

Grüße Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

Hallo Jarnsen,

115200 sollte passen, jedoch am Sensor Node (WaterMeter). Wenn Du den Log davon posten könntest.

Gruß,
Matscher
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

log stelle ich ein wenn ich zu Hause bin. Wie kann ich beim Sensor 115200 einstellen?? Im Sketch??


1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

Okay.

Die 115200 sind für die Console, wenn Du Dich mit dem Arduino verbindest und z.b. Den Serial Montior vom Arduino Studio nutzt.
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

#8
console spuckt das aus

send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=255,c=0,t=17,pt=0,l=5,sg=0,st=ok:1.5.1
send: 0-0-0-0 s=255,c=3,t=6,pt=1,l=1,sg=0,st=ok:0
sensor started, id=0, parent=0, distance=0
send: 0-0-0-0 s=255,c=3,t=11,pt=0,l=21,sg=0,st=ok:Water Meter and Valve
send: 0-0-0-0 s=255,c=3,t=12,pt=0,l=3,sg=0,st=ok:1.0
send: 0-0-0-0 s=0,c=0,t=21,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:


habe standartsketch von Mysensors auf dem 3.3 minipro

Habe auch noch einmal die Verkabelung überprüft. Am Gateway und am Sensor. Sketch neu drauf gespielt.

Wie kann ich die Node -ID beeinflussen?
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

Dann passt zumindest die Kommunikation zw. Sensor Node und GW. Eine Value-Übertragung sieht man jetzt leider nicht.

Die SensorID kannst Du im Sketch in der SetupMethode vergeben. Standard ist Auto.

Zitatgw.begin(incomingMessage,111);
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

Ich denke das liegt daran das der GW kein V_VAR1 sendet. Bzw das nicht angelegt ist. Wie kann ich das anlegen


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

Weil der GateWay wahrscheinlich kein V_VAR1 vom Sensor bekommt. Anlegen kannst Du im GW nichts für den Sensor. Der GW weiß was für ein Typ der Sensor ist. Der Sensor meldet sich beim GW an und requestet den letzten Status (Wert) falls dieser schon registriert ist. Oder er wird im GW neu angemeldet. (inclusion mode am GW an und autocreate).

Dann logge nochmal auf der Console den output mit, was passiert wenn ein Pulse erkannt wird. Es sollte auf der Console "pulsecount: 123456" kommen, wenn Du den Original sketch hast.
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

#12
Hallo,

nein kommt nichts mit pulsecount

füge nochmal den sketch ein zum kontrollieren.

//
// Use this sensor to measure volume and flow of your house watermeter.
// You need to set the correct pulsefactor of your meter (pulses per m3).
// The sensor starts by fetching current volume reading from gateway (VAR 1).
// Reports both volume and flow back to gateway.
//
// Unfortunately millis() won't increment when the Arduino is in
// sleepmode. So we cannot make this sensor sleep if we also want 
// to calculate/report flow.
//
// Sensor on pin 3

#include <MySensor.h>
#include <SPI.h>


#define DIGITAL_INPUT_SENSOR 3                  // The digital input you attached your sensor.  (Only 2 and 3 generates interrupt!)
//#define PULSE_FACTOR 1000                       // Nummber of blinks per m3 of your meter (One rotation/liter)
#define PULSE_FACTOR 1000
#define SLEEP_MODE false                        // flowvalue can only be reported when sleep mode is false.
#define MAX_FLOW 25                             // Max flow (l/min) value to report. This filetrs outliers.
#define INTERRUPT DIGITAL_INPUT_SENSOR-2        // Usually the interrupt = pin -2 (on uno/nano anyway)
#define CHILD_ID 0                              // Id of the sensor child
#define RELAY_1  4  // Arduino Digital I/O pin number for first relay
#define NUMBER_OF_RELAYS 0
#define RELAY_ON 0
#define RELAY_OFF 1
unsigned long SEND_FREQUENCY = 10000;              // Minimum time between send (in miliseconds). We don't want to spam the gateway.

MySensor gw;

double ppl = ((double)PULSE_FACTOR)/1000;        // Pulses per liter

volatile unsigned long pulseCount = 0;   
volatile unsigned long lastBlink = 0;
volatile double flow = 0;
boolean pcReceived = false;
unsigned long oldPulseCount = 0;
unsigned long newBlink = 0;   
double oldflow = 0;
double volume;                     
double oldvolume = 7200;
unsigned long lastSend;
unsigned long lastPulse;
unsigned long currentTime;
boolean metric;

MyMessage flowMsg(CHILD_ID,V_FLOW);
MyMessage volumeMsg(CHILD_ID,V_VOLUME);
MyMessage pcMsg(CHILD_ID,V_VAR1);

void setup() 

  //gw.begin(incomingMessage, AUTO, true);
  //gw.begin(incomingMessage, AUTO, false, AUTO, RF24_PA_LOW);
  gw.begin(incomingMessage, AUTO, false, AUTO);
  //  gw.send(pcMsg.set(0));
  //  gw.send(volumeMsg.set(0.000, 3));
  //Water meter setup
  //Serial.print("PPL:");
  //Serial.print(ppl);

  // Send the sketch version information to the gateway and Controller
  gw.sendSketchInfo("Water Meter and Valve", "1.0");

  // Register this device as Waterflow sensor
  gw.present(CHILD_ID, S_WATER);     

  // Fetch last known pulse count value from gw
  gw.request(CHILD_ID, V_VAR1);
  //pulseCount = oldPulseCount = 0;

  //Serial.print("Last pulse count from gw:");
  //Serial.println(pulseCount);

  attachInterrupt(INTERRUPT, onPulse, RISING);
  lastSend = millis();

  //RELAY SETUP
  for (int sensor=1, pin=RELAY_1; sensor<=NUMBER_OF_RELAYS;sensor++, pin++) {
    // Register all sensors to gw (they will be created as child devices)
    gw.present(sensor, S_LIGHT);
    // Then set relay pins in output mode
    pinMode(pin, OUTPUT);   
    // Set relay to last known state (using eeprom storage)
    digitalWrite(pin, gw.loadState(sensor)?RELAY_ON:RELAY_OFF);
  }

}


void loop()     
{
  gw.process();
  currentTime = millis();
  bool sendTime = currentTime - lastSend > SEND_FREQUENCY;
  if (pcReceived && (SLEEP_MODE || sendTime)) {
    // New flow value has been calculated 
    if (!SLEEP_MODE && flow != oldflow) {
      // Check that we dont get unresonable large flow value.
      // could hapen when long wraps or false interrupt triggered
      if (flow<((unsigned long)MAX_FLOW)) {
        gw.send(flowMsg.set(flow, 2));        // Send flow value to gw
      }

      //Serial.print("g/min:");
      // Serial.println(flow);
      oldflow = flow;
    }

    // No Pulse count in 2min
    if(currentTime - lastPulse > 20000){
      flow = 0;
    }


    // Pulse count has changed
    if (pulseCount != oldPulseCount) {
      gw.send(pcMsg.set(pulseCount));                  // Send  volumevalue to gw VAR1
      double volume = ((double)pulseCount/((double)PULSE_FACTOR)*264.172);
      //double volume = ((double)pulseCount/((double)PULSE_FACTOR));     
      oldPulseCount = pulseCount;
      if (volume != oldvolume) {
        gw.send(volumeMsg.set(volume, 3));               // Send volume value to gw
        oldvolume = volume;
      }
    }
    lastSend = currentTime;
  }
  else if (sendTime) {
    // No count received. Try requesting it again
    gw.request(CHILD_ID, V_VAR1);
    lastSend=currentTime;
  }

  if (SLEEP_MODE) {
    gw.sleep(SEND_FREQUENCY);
  }     


}


void onPulse()     
{
  if (!SLEEP_MODE) {
    unsigned long newBlink = micros();   
    unsigned long interval = newBlink-lastBlink;
    lastPulse = millis();
    if (interval < 2080) {       // Sometimes we get interrupt on RISING,  500000 = 0.5sek debounce ( max 120 l/min)  WAS 2080
      return;   
    }

    flow = ((60000000.0 /interval) / ppl)*.264172;
    //flow = ((60000000.0 /interval) / ppl);
    // Serial.print("interval:");
    // Serial.println(interval);
    lastBlink = newBlink;
    // Serial.println(flow, 4);
  }
  pulseCount++;

}

void incomingMessage(const MyMessage &message) {
  if (message.type==V_VAR1) { 
    pulseCount = oldPulseCount = message.getLong();
    Serial.print("Received last pulse count from gw:");
    Serial.println(pulseCount);
    pcReceived = true;
  }
  if (message.type==V_LIGHT) {
    // Change relay state
    digitalWrite(message.sensor-1+RELAY_1, message.getBool()?RELAY_ON:RELAY_OFF);
    // Store state in eeprom
    gw.saveState(message.sensor, message.getBool());
    // Write some debug info
    Serial.print("Incoming change for sensor:");
    Serial.print(message.sensor);

    Serial.print(", New status: ");
    Serial.println(message.getBool());
  }

}




oder ich flashe den GW neu. Es wird auch immer nur als Sensor 0 erkannt. Dachte das es immer ab 100 beginnt.


Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

Okay klar Serial.print fehlt an der Stelle für den Pulsecount...egal, dann kommentiere doch mal die Ausgabemethoden im OnPulse() ein, damit man sehen kann, ob der überhaupt was bekommt.
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

#14
Danke für deine Hilfe, leider habe ich nicht so recht den Plan von Sketchen und einkommentieren. Ich verstehe was du meinst kann es auch aus den anderen Einträgen ableiten. Aber mit sicherheit würde ich es an die falsche Stellen oder falsch schreiben.

Kannst du mir bitte die Passage aus dem Sketch berichtigen so das ich diese einfügen kann??

Danke
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

Klar kein Problem. :) Wenn Du das ersetzt hast und neu geladen hast, bin ich auf das Ergebnis gespannt. Dort muß, wenn alles funktioniert, "interval: 123346" als Beispiel auftauchen.

Zitat
void onPulse()     
{
  if (!SLEEP_MODE) {
    unsigned long newBlink = micros();   
    unsigned long interval = newBlink-lastBlink;
    lastPulse = millis();
    if (interval < 2080) {       // Sometimes we get interrupt on RISING,  500000 = 0.5sek debounce ( max 120 l/min)  WAS 2080
      return;   
    }

    flow = ((60000000.0 /interval) / ppl)*.264172;
    //flow = ((60000000.0 /interval) / ppl);
    Serial.print("interval:");
    Serial.println(interval);
    lastBlink = newBlink;
    // Serial.println(flow, 4);
  }
  pulseCount++;

}
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

ok geändert. 115200 nur Zeichensalat

230400 Baut bringt das

send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
interval:106420384
interval:131048
interval:641368
interval:134872
interval:4298984
interval:302872
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
interval:5400360
interval:1861464
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
interval:4312968
interval:817472
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
send: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:


hoffe kannst damit was anfangen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

#17
Habe Serial GW und SensorNode nochmal mit API 1.4.2 beschrieben, dies brachte auch keine Besserung. Was denkst du, soll ich auf 1.4 bleiben oder wieder auf 1.5 gehen? Denke am Fehler wird das nichts machen.


kann es am SerialGW liegen? Das er die Daten einfach nicht weiter gibt.

Grüße Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Hauswart

Nein so aktuell wie möglich sein, es gab mit 1.5 oder 1.6 eine kleine Umstellungen auf welches auch das FHEM Modul umgestellt wurde.
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

Jarnsen

#19
so, alles aktualisiert auf API 1.5.1

Watermeter ID auf 111 festgelegt. Seitdem die Feste ID da ist steht auch mehr im Device.

(http://up.picr.de/24297688zn.jpg)

aber aktualisieren tut sich nichts, wo kann ich im Sensorsketch den Zählerstand eintragen?? Vielleicht geht es dann.


Grüße Jarnsen

EDIT:

LOG:


2016.01.16 17:26:04 3: Opening MySensorsGateway device /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A5018N5J-if00-port0
2016.01.16 17:26:04 3: Setting MySensorsGateway serial parameters to 115200,8,N,1
2016.01.16 17:26:04 3: MySensorsGateway device opened
2016.01.16 17:26:17 5: MYSENSORS/RAW: /0;0
2016.01.16 17:26:17 5: MYSENSORS/RAW: 0;0/;3;0;9;read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:
2016.01.16 17:26:17 5: MYSENSORS/RAW: 0;0;3;0;9;read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:/
111;1;2;0;24;

2016.01.16 17:26:17 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:'

2016.01.16 17:26:17 5: MYSENSORS gateway MySensorsGateway: read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:
2016.01.16 17:26:17 5: MYSENSORS Read: Rx: fr=111 ci=001 c=002(C_REQ         ) st=024(V_VAR1          ) ack=0 ''

2016.01.16 17:26:32 5: MYSENSORS/RAW: /0;0;3
2016.01.16 17:26:32 5: MYSENSORS/RAW: 0;0;3/;0;9;read: 111-11
2016.01.16 17:26:32 5: MYSENSORS/RAW: 0;0;3;0;9;read: 111-11/1-0 s=1,c=2,t=24,pt=0,l=0,sg=0:

2016.01.16 17:26:32 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:'

2016.01.16 17:26:32 5: MYSENSORS gateway MySensorsGateway: read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:
2016.01.16 17:26:32 5: MYSENSORS/RAW: /111;1;2;0;24;

2016.01.16 17:26:32 5: MYSENSORS Read: Rx: fr=111 ci=001 c=002(C_REQ         ) st=024(V_VAR1          ) ack=0 ''

2016.01.16 17:26:49 5: MYSENSORS/RAW: /0;0;3;0;9;read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:
111;1;2;0;24;

2016.01.16 17:26:49 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:'

2016.01.16 17:26:49 5: MYSENSORS gateway MySensorsGateway: read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:
2016.01.16 17:26:49 5: MYSENSORS Read: Rx: fr=111 ci=001 c=002(C_REQ         ) st=024(V_VAR1          ) ack=0 ''

2016.01.16 17:27:02 5: MYSENSORS/RAW: /0;0;3;0
2016.01.16 17:27:02 5: MYSENSORS/RAW: 0;0;3;0/;9;read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:

2016.01.16 17:27:02 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:'

2016.01.16 17:27:02 5: MYSENSORS gateway MySensorsGateway: read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:
2016.01.16 17:27:02 5: MYSENSORS/RAW: /111;1;2;0;24;

2016.01.16 17:27:02 5: MYSENSORS Read: Rx: fr=111 ci=001 c=002(C_REQ         ) st=024(V_VAR1          ) ack=0 ''

2016.01.16 17:27:17 5: MYSENSORS/RAW: /0;0;3;0;9;re
2016.01.16 17:27:17 5: MYSENSORS/RAW: 0;0;3;0;9;re/ad: 111-111-0 s=1,c=2,t=24,pt=0,l
2016.01.16 17:27:17 5: MYSENSORS/RAW: 0;0;3;0;9;read: 111-111-0 s=1,c=2,t=24,pt=0,l/=0,sg=0:
111;1;
2016.01.16 17:27:17 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=009(I_LOG_MESSAGE   ) ack=0 'read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:'

2016.01.16 17:27:17 5: MYSENSORS gateway MySensorsGateway: read: 111-111-0 s=1,c=2,t=24,pt=0,l=0,sg=0:
2016.01.16 17:27:17 5: MYSENSORS/RAW: 111;1;/2;0;24;

2016.01.16 17:27:17 5: MYSENSORS Read: Rx: fr=111 ci=001 c=002(C_REQ         ) st=024(V_VAR1          ) ack=0 ''

1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

#20
Habe heute versucht den Gateway aus FHEM zu löschen. Das ging nicht mit  Delete this device (MySensorsGateway), sondern nur mit direkt aus der fhem.cfg löschen. Danach neu gestartet und device wieder neu angelegt. Ich glaube irgendwas passt mit dem GW nicht. Werde mir nächste Woche mal nen WLan-GW zusammenbasteln. Vielleicht wird es dann.


Hat noch jemand ne Idee???

@ Matscher

Passt der log so??

Gruß Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

#21
Hallo Jarson,

Zitatsend: 0-0-0-0 s=0,c=2,t=24,pt=0,l=0,sg=0,st=ok:
so wie ich das verstehe wird nur ein Request vom Sensor gesendet (c=2) für V_VAR1 (t=24), aber es kommt nichts vom Gateway.

Und daher vermute ich, das dadurch nichts gesendet wird, da nichts vom Gateway empfangen wurde.

Zitat
if (pcReceived && (SLEEP_MODE || sendTime)) {
ZitatIm kurzen log taucht kein Received last pulse count from gw: auf.

Was mich auch noch wundert:
Zitat
ok geändert. 115200 nur Zeichensalat

230400 Baut bringt das

Ich habe keine idee!, ausser den Gateway nochmal zu resetten.

Gruß,
Matscher
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

nur beim sensor muß ich 230400 einstellen das ich seriell was sehe.... beim GW ist bei 115200 alles i.o. wie gesagt versuche die Tage nen WLAN-GW... Serial GW mehrfach geflasht... wo kann ich den derzeitigen Zählerstand eintragen.... vielleicht bringt das was... alles läuft auf API 1.5.1...

stelle meinen GW sketch nocht ein
/**
* The MySensors Arduino library handles the wireless radio link and protocol
* between your home built sensors/actuators and HA controller of choice.
* The sensors forms a self healing radio network with optional repeaters. Each
* repeater and gateway builds a routing tables in EEPROM which keeps track of the
* network topology allowing messages to be routed to nodes.
*
* Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
* Copyright (C) 2013-2015 Sensnology AB
* Full contributor list: https://github.com/mysensors/Arduino/graphs/contributors
*
* Documentation: http://www.mysensors.org
* Support Forum: http://forum.mysensors.org
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* version 2 as published by the Free Software Foundation.
*
*******************************
*
* DESCRIPTION
* The ArduinoGateway prints data received from sensors on the serial link.
* The gateway accepts input on seral which will be sent out on radio network.
*
* The GW code is designed for Arduino Nano 328p / 16MHz
*
* Wire connections (OPTIONAL):
* - Inclusion button should be connected between digital pin 3 and GND 
* - RX/TX/ERR leds need to be connected between +5V (anode) and digital pin 6/5/4 with resistor 270-330R in a series
*
* LEDs (OPTIONAL):
* - To use the feature, uncomment WITH_LEDS_BLINKING in MyConfig.h
* - RX (green) - blink fast on radio message recieved. In inclusion mode will blink fast only on presentation recieved
* - TX (yellow) - blink fast on radio message transmitted. In inclusion mode will blink slowly
* - ERR (red) - fast blink on error during transmission error or recieve crc error
*
*/

#define NO_PORTB_PINCHANGES 

#include <MySigningNone.h>
#include <MyTransportRFM69.h>
#include <MyTransportNRF24.h>
#include <MyHwATMega328.h>
#include <MySigningAtsha204Soft.h>
#include <MySigningAtsha204.h>

#include <SPI.h> 
#include <MyParserSerial.h> 
#include <MySensor.h> 
#include <stdarg.h>
#include <PinChangeInt.h>
#include "GatewayUtil.h"

#define INCLUSION_MODE_TIME 1 // Number of minutes inclusion mode is enabled
#define INCLUSION_MODE_PIN  3 // Digital pin used for inclusion mode button
#define RADIO_ERROR_LED_PIN 4  // Error led pin
#define RADIO_RX_LED_PIN    6  // Receive led pin
#define RADIO_TX_LED_PIN    5  // the PCB, on board LED

// NRFRF24L01 radio driver (set low transmit power by default)
MyTransportNRF24 transport(RF24_CE_PIN, RF24_CS_PIN, RF24_PA_LEVEL_GW);
//MyTransportRFM69 transport;

// Message signing driver (signer needed if MY_SIGNING_FEATURE is turned on in MyConfig.h)
//MySigningNone signer;
//MySigningAtsha204Soft signer;
//MySigningAtsha204 signer;

// Hardware profile
MyHwATMega328 hw;

// Construct MySensors library (signer needed if MY_SIGNING_FEATURE is turned on in MyConfig.h)
// To use LEDs blinking, uncomment WITH_LEDS_BLINKING in MyConfig.h
#ifdef WITH_LEDS_BLINKING
MySensor gw(transport, hw /*, signer*/, RADIO_RX_LED_PIN, RADIO_TX_LED_PIN, RADIO_ERROR_LED_PIN);
#else
MySensor gw(transport, hw /*, signer*/);
#endif

char inputString[MAX_RECEIVE_LENGTH] = "";    // A string to hold incoming commands from serial/ethernet interface
int inputPos = 0;
boolean commandComplete = false;  // whether the string is complete

void parseAndSend(char *commandBuffer);

void output(const char *fmt, ... ) {
   va_list args;
   va_start (args, fmt );
   vsnprintf_P(serialBuffer, MAX_SEND_LENGTH, fmt, args);
   va_end (args);
   Serial.print(serialBuffer);
}

 
void setup() 
{
  gw.begin(incomingMessage, 0, true, 0);

  setupGateway(INCLUSION_MODE_PIN, INCLUSION_MODE_TIME, output);

  // Add interrupt for inclusion button to pin
  PCintPort::attachInterrupt(pinInclusion, startInclusionInterrupt, RISING);


  // Send startup log message on serial
  serial(PSTR("0;0;%d;0;%d;Gateway startup complete.\n"),  C_INTERNAL, I_GATEWAY_READY);
}

void loop() 
{
  gw.process();

  checkButtonTriggeredInclusion();
  checkInclusionFinished();
 
  if (commandComplete) {
    // A command wass issued from serial interface
    // We will now try to send it to the actuator
    parseAndSend(gw, inputString);
    commandComplete = false; 
    inputPos = 0;
  }
}


/*
  SerialEvent occurs whenever a new data comes in the
hardware serial RX.  This routine is run between each
time loop() runs, so using delay inside loop can delay
response.  Multiple bytes of data may be available.
*/
void serialEvent() {
  while (Serial.available()) {
    // get the new byte:
    char inChar = (char)Serial.read();
    // if the incoming character is a newline, set a flag
    // so the main loop can do something about it:
    if (inputPos<MAX_RECEIVE_LENGTH-1 && !commandComplete) {
      if (inChar == '\n') {
        inputString[inputPos] = 0;
        commandComplete = true;
      } else {
        // add it to the inputString:
        inputString[inputPos] = inChar;
        inputPos++;
      }
    } else {
       // Incoming message too long. Throw away
        inputPos = 0;
    }
  }
}


vielleicht passt was im Modul nicht

THX Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Kuzl

Kann das sein, dass du evtl nicht das richtige Board in der Arduino IDE eingestellt hast? Wenn du die Doppelte BAUD einstellen must, hört sich das so an, dass du z.b. ein 16MHz Quarz hast, aber auf 8MHz kompiliert hast. Daher könnte es auch sein, dass das Gateway keine Ahnung hat, was der Sensor eigentlich will.

Jarnsen

Ja ich habe auf 8 kompelliert, mein pro Mini soll ein 3.3v 8Mhz sein. Werde es nochmal mit 16 MHz versuchen.
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

@ Kuzl

du hattest recht, muß ein 5V 16Mhz sein, habe jetzt mit 5V 16Mhz beschrieben jetzt stimmt die Baudrate. Hatte als test nochmal das Blinkprogramm einmal mit 8 und einmal mit 16 draufgebügelt. Mit 8 Mhz waren es nur ca 500ms und mit 16 Mhz kam es schon so hin mit 1000ms. Das ändert aber immernoch nichts an meinem Problem. Ich glaube fast das das eine NRF24L01+ kaputt ist oder eines von beiden ein ohne das "+" ist. kann ich die beiden NRF24L01+ entfernen und die kabel direkt verbinden um das zu prüfen? Nur um die radio´s auszuschließen oder auch nicht. Habe die Radios auch schon mal getauscht vom GW zum Node und andersherum. Ich würde auch fast behaupten wollen das das eine mit 5V läuft. Bin ja über RAW in den mini und da es ja wie es aussieht ein 5V 16Mhz ist lief das NRF ja dann mit 5V. Auf dem StepDown auf dem mini steht "S8NJ" falls jemand was damit anfangen kann.


Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Kuzl

Wie auf mysensors.org zu lesen ist, sind zwar die Eingänge des NRF 5V-tollerant, allerdings kannst du ihn nicht mit 5V versorgen, kann sein, dass er kaputt ist.
Einfach Ausbauen und den Sensor ans GW hängen geht nicht, wird ja ganz anders angesprochen.

Am besten ist, du kompilierst nochmal mit einer neuen Sensor ID und schaust dann im Serial-Monitor, ob da schonmal alles passt.
Dann kannst du ihn versuchen im GW anzulernen.

Für Batteriebetrieb würd ich dir allerdings 8MHz/3.3V empfehlen, da keine verluste am Spgregler und weniger verbrauch durch 8MHz

Jarnsen

#27
Zitat von: Kuzl am 19 Januar 2016, 07:31:59
Wie auf mysensors.org zu lesen ist, sind zwar die Eingänge des NRF 5V-tollerant, allerdings kannst du ihn nicht mit 5V versorgen, kann sein, dass er kaputt ist.

Für Batteriebetrieb würd ich dir allerdings 8MHz/3.3V empfehlen, da keine verluste am Spgregler und weniger verbrauch durch 8MHz

hatte ja 3.3V bestellt. wie es aussieht nen anderen bekommen. An den NRF24L01 liegt es nicht, habe ich ausgetauscht. Bekomme aber am GW "nur" startup complete.
Hat denn jemand FHEM 5.7 und MySensors API 1.5.1 am laufen.

EDIT:

Sensor mit Arduino nano gebaut, brachte auch keine Besserung. Letzte Hoffnung das es mit dem WLan GW läuft den ich mir die Tage zusammenbau. Ansonsten bleibt nur noch den Grund im Modul zu suchen.


oder was denkt ihr??


Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

gloob

Da ich MySensor als Serial Gateway mit der aktuellen 1.5er Version nutze und keine Probleme habe, kann ich mir nicht vorstellen, dass es am Modul liegen sollte.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Jarnsen

#29
@ gloob

Hast du die Möglichkeit ein Watermeter nachzubauen???

EDIT:

Hast du FHEM 5.7 drauf oder ne alte Version.
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

@Jarnsen

Du könntest auch einen anderen Sketch zum testen nehmen. Einen einfachen Button oder ähnliches (http://www.mysensors.org/build/binary)
Ich denke das Ergebnis bleibt gleich...:/
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

#31
Zitat von: Matscher am 20 Januar 2016, 11:51:12
@Jarnsen

Du könntest auch einen anderen Sketch zum testen nehmen. Einen einfachen Button oder ähnliches (http://www.mysensors.org/build/binary)
Ich denke das Ergebnis bleibt gleich...:/

@ Matscher, du wirst es für komisch halten, aber dieser Sketch funktioniert. Wenn ich den Kontakt schließe habe ich off sobald ich öffne ein on. Das funktioniert also.




EDIT:

Ich denke echt der GW sendet kein VAR oder falsch, aber warum??
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

Okay, dann ist die Hardware schon mal in Ordnung.  :)

Dann nimm nochmal den original Sketch vom Watermeter und teste das nochmal.
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Hauswart

Ich glaube im FHEM-Code einen Fehler gefunden zu haben :)

Bitte probiere mal folgende Datei aus: https://raw.githubusercontent.com/Kolbi/fhem-mirror/ea5c2c2032cd18d5fa0466b9f2fcdb4fdc103cfd/fhem/FHEM/10_MYSENSORS_DEVICE.pm

Kommt ins Verzeichnis: /opt/fhem/FHEM/

Gruss
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

gloob

Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Hauswart

1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

gloob

#36
Muss Var1 dann aber nicht bei Receives eingetragen werden?
Immerhin soll FHEM ja den Wert an MySensors senden.



S_WATER                 => { receives => [V_VAR1], sends => [V_FLOW,V_VOLUME,V_VAR1] }, # Water meter

Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Jarnsen

#37
Danke für eure Hilfe.

Zitat von: gloob am 21 Januar 2016, 11:15:48
Muss Var1 dann aber nicht bei Receives eingetragen werden?
Immerhin soll FHEM ja den Wert an MySensors senden.



S_WATER                 => { receives => [V_VAR1], sends => [V_FLOW,V_VOLUME,V_VAR1] }, # Water meter



nach dieser Änderung zeigt es nun an wie oft ein Impuls kam, und direkt in Volumen umgerechnet. Habe Pulsfaktor 100/m³ genommen.
Leider zeigt es immernoch keinen Flow an, bzw. ändert der sich nicht.

Oder kann man das auch über den hourConter in nem Plot darstellen. Wenn dann alles so geht wie ich es möchte werde ich nochmal eine zusammenfassung im 1. Post schreiben.


Zitat von: Hauswart am 21 Januar 2016, 11:04:04
Ich glaube im FHEM-Code einen Fehler gefunden zu haben :)

Bitte probiere mal folgende Datei aus: https://raw.githubusercontent.com/Kolbi/fhem-mirror/ea5c2c2032cd18d5fa0466b9f2fcdb4fdc103cfd/fhem/FHEM/10_MYSENSORS_DEVICE.pm

Kommt ins Verzeichnis: /opt/fhem/FHEM/

Gruss

Das hat nicht gereicht, weil es keine Änderung gebracht.

(http://up.picr.de/24352673sy.jpg)

so sieht es momentan aus

Jarnsen


EDIT: Poständerung war nötig da erneutes prüfen ein anderes Ergebnis brachten.
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Hauswart

Kannst du mir ein paar Auszüge aus dem EventMonitor Posten?
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

Jarnsen

#39
Flow zeigt jetzt was an, Sensor gelöscht FHEM neu gestartet. Sensor angelernt.


2016-01-21 18:52:13 MYSENSORS_DEVICE Gaszaehler value11: 25
2016-01-21 18:52:13 MYSENSORS_DEVICE Gaszaehler volume1: 0.250
2016-01-21 18:52:41 MYSENSORS_DEVICE Gaszaehler parentId: 0
2016-01-21 18:52:43 MYSENSORS_DEVICE Gaszaehler SKETCH_NAME: Water Meter
2016-01-21 18:52:43 MYSENSORS_DEVICE Gaszaehler SKETCH_VERSION: 1.1
2016-01-21 18:52:44 MYSENSORS_DEVICE Gaszaehler value11: 25
2016-01-21 18:53:13 MYSENSORS_DEVICE Gaszaehler value11: 44
2016-01-21 18:53:13 MYSENSORS_DEVICE Gaszaehler volume1: 0.440
2016.01.21 18:54:13 5 : MYSENSORS/RAW: /0;0;3;0;9;read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0
2016.01.21 18:54:13 5 : MYSENSORS/RAW: 0;0;3;0;9;read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0/:50 11;1;1;0;24;50
2016.01.21 18:54:13 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:50'
2016.01.21 18:54:13 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:50
2016.01.21 18:54:13 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=024(V_VAR1 ) ack=0 '50'
2016-01-21 18:54:13 MYSENSORS_DEVICE Gaszaehler value11: 50
2016.01.21 18:54:13 5 : MYSENSORS/RAW: /0;0;3;0;9;read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.500 11;1;1;0;35;0.500
2016.01.21 18:54:13 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.500'
2016.01.21 18:54:13 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.500
2016.01.21 18:54:13 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=035(V_VOLUME ) ack=0 '0.500'
2016-01-21 18:54:13 MYSENSORS_DEVICE Gaszaehler volume1: 0.500
2016.01.21 18:54:43 5 : MYSENSORS/RAW: /0
2016.01.21 18:54:43 5 : MYSENSORS/RAW: 0/;0;3;0;9;read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:50
2016.01.21 18:54:43 5 : MYSENSORS/RAW: 0;0;3;0;9;read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:50/ 11;1;1;0;24;50 0;0;3;0;9;r
2016.01.21 18:54:43 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:50'
2016.01.21 18:54:43 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:50
2016.01.21 18:54:43 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=024(V_VAR1 ) ack=0 '50'
2016-01-21 18:54:43 MYSENSORS_DEVICE Gaszaehler value11: 50
2016.01.21 18:54:43 5 : MYSENSORS/RAW: 0;0;3;0;9;r/ead: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.500 11;1;1;0;35;0.500
2016.01.21 18:54:43 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.500'
2016.01.21 18:54:43 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.500
2016.01.21 18:54:43 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=035(V_VOLUME ) ack=0 '0.500'
2016-01-21 18:54:43 MYSENSORS_DEVICE Gaszaehler volume1: 0.500
2016.01.21 18:55:13 5 : MYSENSORS/RAW: /0;0;3;0;9;read:
2016.01.21 18:55:13 5 : MYSENSORS/RAW: 0;0;3;0;9;read: /11-11-0 s=1,c=1,t=24,pt=5,l=4,sg
2016.01.21 18:55:13 5 : MYSENSORS/RAW: 0;0;3;0;9;read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg/=0:53 11;1;1;0;24;53
2016.01.21 18:55:13 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:53'
2016.01.21 18:55:13 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:53
2016.01.21 18:55:13 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=024(V_VAR1 ) ack=0 '53'
2016-01-21 18:55:13 MYSENSORS_DEVICE Gaszaehler value11: 53
2016.01.21 18:55:13 5 : MYSENSORS/RAW: /0;0;3;0;9;read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.530 11;1;1;0;35;0.530
2016.01.21 18:55:13 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.530'
2016.01.21 18:55:13 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.530
2016.01.21 18:55:13 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=035(V_VOLUME ) ack=0 '0.530'
2016-01-21 18:55:13 MYSENSORS_DEVICE Gaszaehler volume1: 0.530
2016.01.21 18:55:43 5 : MYSENSORS/RAW: /0;0;3;0;9;read: 11
2016.01.21 18:55:43 5 : MYSENSORS/RAW: 0;0;3;0;9;read: 11/-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0
2016.01.21 18:55:43 5 : MYSENSORS/RAW: 0;0;3;0;9;read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0/:71 11;1;1;0;24;71
2016.01.21 18:55:43 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:71'
2016.01.21 18:55:43 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:71
2016.01.21 18:55:43 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=024(V_VAR1 ) ack=0 '71'
2016-01-21 18:55:43 MYSENSORS_DEVICE Gaszaehler value11: 71
2016.01.21 18:55:43 5 : MYSENSORS/RAW: /0;0;3;0;9;read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.710 11;1;1;0;35;0.710
2016.01.21 18:55:43 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.710'
2016.01.21 18:55:43 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.710
2016.01.21 18:55:43 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=035(V_VOLUME ) ack=0 '0.710'
2016-01-21 18:55:43 MYSENSORS_DEVICE Gaszaehler volume1: 0.710
2016.01.21 18:56:13 5 : MYSENSORS/RAW: /0;0;3;0;9;re
2016.01.21 18:56:13 5 : MYSENSORS/RAW: 0;0;3;0;9;re/ad: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:80 11;1;1;
2016.01.21 18:56:13 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:80'
2016.01.21 18:56:13 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:80
2016.01.21 18:56:13 5 : MYSENSORS/RAW: 11;1;1;/0;24;80 0;0;3;0;9;read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.80
2016.01.21 18:56:13 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=024(V_VAR1 ) ack=0 '80'
2016-01-21 18:56:13 MYSENSORS_DEVICE Gaszaehler value11: 80
2016.01.21 18:56:13 5 : MYSENSORS/RAW: 0;0;3;0;9;read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.80/0 11;1;1;0;35;0.800
2016.01.21 18:56:13 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.800'
2016.01.21 18:56:13 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.800
2016.01.21 18:56:13 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=035(V_VOLUME ) ack=0 '0.800'
2016-01-21 18:56:13 MYSENSORS_DEVICE Gaszaehler volume1: 0.800
2016.01.21 18:56:43 5 : MYSENSORS/RAW: /0;0
2016.01.21 18:56:43 5 : MYSENSORS/RAW: 0;0/;3;0;9;read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:80 11;1;1;0;24;80
2016.01.21 18:56:43 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:80'
2016.01.21 18:56:43 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=24,pt=5,l=4,sg=0:80
2016.01.21 18:56:43 5 : MYSENSORS/RAW: 11;1;1;0;24;80/ 0;0;3;0;9;read: 11-11-0 s=1,c=1,t=35,pt=7,l=
2016.01.21 18:56:43 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=024(V_VAR1 ) ack=0 '80'
2016-01-21 18:56:43 MYSENSORS_DEVICE Gaszaehler value11: 80
2016.01.21 18:56:43 5 : MYSENSORS/RAW: 0;0;3;0;9;read: 11-11-0 s=1,c=1,t=35,pt=7,l=/5,sg=0:0.800 11;1;1;0;35;0.800
2016.01.21 18:56:43 5 : MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.800'
2016.01.21 18:56:43 5 : MYSENSORS gateway MySensorsGateway: read: 11-11-0 s=1,c=1,t=35,pt=7,l=5,sg=0:0.800
2016.01.21 18:56:43 5 : MYSENSORS Read: Rx: fr=011 ci=001 c=001(C_SET ) st=035(V_VOLUME ) ack=0 '0.800'
2016-01-21 18:56:43 MYSENSORS_DEVICE Gaszaehler volume1: 0.800




EDIT:
da ich einen Puls von 100/m³ habe muß ich bestimmt max flow im sketch erhöhen oder??

Finde gut das man den Zählerstand über set Gaszaeler value11 angepasst werden kann.
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

Jetzt würde ich euch noch bitten mir bei der Erstellung des Plots dazu zu unterstützen. Ein logfile habe ich schon angelegt das den Zählerstand mitschneidet wenn er sich ändert. Wie bekomme ich da jetzt aktueller Verbrauch, Stunde, Tag, Monat und Jahr heraus um es graphisch darzustellen.
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Hauswart

Zitat von: Jarnsen am 21 Januar 2016, 19:01:44
Flow zeigt jetzt was an, Sensor gelöscht FHEM neu gestartet. Sensor angelernt.

D.h. der Sensor geht nun problemlos? Einen Screen würde ich mir wünschen :)

Dann würde ich meine Änderung weitergeben, damit diese es in offizielle FHEM schafft.
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

gloob

Ist es nicht aber trotzdem noch falsch?

ZitatMuss Var1 denn aber nicht bei Receives eingetragen werden?
Immerhin soll FHEM ja den Wert an MySensors senden.



S_WATER                 => { receives => [V_VAR1], sends => [V_FLOW,V_VOLUME,V_VAR1] }, # Water meter

Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Jarnsen

@ gloob

Habe ja geschrieben das ich deine Änderungen eingebaut habe... Siehe oben...

@ Hauswart

Deine Änderung hat nicht ausgereicht...

Screen sende ich wenn ich @ Home bin...


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

gloob

Sorry, deinen Post habe ich nicht gesehen. Aber gut wenn es jetzt funktioniert.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Hauswart

Zitat von: gloob am 22 Januar 2016, 10:18:26
Ist es nicht aber trotzdem noch falsch?
Zitat von: Jarnsen link=topic=47115.msg396165.html#msg396165
@ gloob
Habe ja geschrieben das ich deine Änderungen eingebaut habe... Siehe oben...

Okay wundert mich nur, dass fast alle Sensoren nur "sends" Werte haben, ausser die Sensoren an welche man von FHEM aus Daten senden möchte.

Sprich so hatte ich es verstanden:
"receives" <= welche Variablen sollen an den Sensor geschickt werden
"sends" <= welche Variablen soll FHEM vom Sensor erhalten

Die V_VAR1 ist ja ein Wert vom Sensor an FHEM?
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

Hauswart

@Jarnsen

Hast du auch nachdem du meine Version eingespielt hast, den Sensor gelöscht, gespeichert, FHEM neugestartet und den Sensor neu angelernt?
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

gloob

#47
Der Arduino Sketch fragt aber von FHEM auch den VAR1 ab bei der Initialisierung.

// Fetch last known pulse count value from gw
  gw.request(CHILD_ID, V_VAR1);
  //pulseCount = oldPulseCount = 0;


if (message.type==V_VAR1) { 
    pulseCount = oldPulseCount = message.getLong();
    Serial.print("Received last pulse count from gw:");
    Serial.println(pulseCount);
    pcReceived = true;
  }


Wahrscheinlich wird damit bei einem Neustart des Arduino der letzte bekannte Wert von FHEM geladen um von dort aus weiter zu zählen. Daher muss VAR1 bei send und receive eingetragen werden.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Hauswart

Schande über mich selbst :) Ich habe den Sketch nicht genau angeschaut, tatsächlich frägt er den Stand von FHEM ab und zählt dann weiter und sendet den neuen Stand wieder an FHEM...


So sollte er aber korrekt sein: https://raw.githubusercontent.com/Kolbi/fhem-mirror/master/fhem/FHEM/10_MYSENSORS_DEVICE.pm ?

Denn eigentlich sendet und empfängt er V_VAR1?
S_WATER                 => { receives => [V_VAR1], sends => [V_FLOW,V_VOLUME,V_VAR1] }, # Water meter
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

Jarnsen

Ok... Wie gesagt danke nochmal... Bekomme ich jetzt aus diesem gesamtzählerstand jetzt noch die Verbräuche aufgeschlüsselt?? Momentan, Tag , Woche usw???
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

gloob

Vielleicht kannst du ja einen Auszug aus deinem Log posten, dann würde ich mal gucken.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

ntruchsess

while (!asleep()) {sheep++};

Jarnsen

@ gloob

Hier ein screen vom Device.

(http://up.picr.de/24359953hg.jpg)

Habe versucht den Plot zu erstellen nach MEINTECHBLOG

Bekomme es aber nicht gebacken den Gesamtverbrauch und den Flow in ein Log zu speichern. Wie bekomme ich das hin oder geht das mit den zwei LogFiles schon.


FileLog_GasFlow GasFlow-2016-01.log
2016-01-22_13:42:57 GasFlow 0.00
2016-01-22_14:08:38 GasFlow 0.70
2016-01-22_14:12:38 GasFlow 0.00
2016-01-22_14:47:58 GasFlow 0.26
2016-01-22_14:48:58 GasFlow 288.67
2016-01-22_14:49:38 GasFlow 141.17
2016-01-22_14:51:58 GasFlow 0.00
2016-01-22_14:56:58 GasFlow 4.41
2016-01-22_14:59:58 GasFlow 0.00
2016-01-22_15:15:58 GasFlow 1.87
2016-01-22_15:17:58 GasFlow 4.31
2016-01-22_15:20:38 GasFlow 0.00



FileLog_GasVerbrauch GasVerbrauch-2016-01.log
2016-01-22_11:50:48 GasVerbrauch 0
2016-01-22_11:52:33 GasVerbrauch 0.020
2016-01-22_13:44:00 GasVerbrauch 0.100
2016-01-22_13:45:40 GasVerbrauch 0.130
2016-01-22_13:46:40 GasVerbrauch 0.190
2016-01-22_13:54:40 GasVerbrauch 0.250
2016-01-22_14:08:40 GasVerbrauch 0.260
2016-01-22_14:09:00 GasVerbrauch 0.590
2016-01-22_14:09:40 GasVerbrauch 0.930
2016-01-22_14:10:20 GasVerbrauch 1.150
2016-01-22_14:48:00 GasVerbrauch 1.160
2016-01-22_14:49:00 GasVerbrauch 1.200
2016-01-22_14:49:40 GasVerbrauch 1.270
2016-01-22_14:54:00 GasVerbrauch 1.300
2016-01-22_14:54:40 GasVerbrauch 1.350
2016-01-22_14:57:00 GasVerbrauch 1.360
2016-01-22_14:57:40 GasVerbrauch 1.390
2016-01-22_15:02:40 GasVerbrauch 1.420
2016-01-22_15:06:52 GasVerbrauch 1.480
2016-01-22_15:10:00 GasVerbrauch 1.540
2016-01-22_15:10:41 GasVerbrauch 1.610
2016-01-22_15:16:00 GasVerbrauch 1.620
2016-01-22_15:18:00 GasVerbrauch 1.630
2016-01-22_15:21:40 GasVerbrauch 1.700


Das sind die zwei Logdateien. Kann man das anders irgendwie lösen mit dem Plot? Die Werte darin sind nicht real, ich habe den Sensor nur hier auf dem Tisch liegen und löse immer am TCT5000 aus.
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

#53
Der Sketch und der Sensor funktionieren echt gut. Läßt sich auch gut justieren die Sensibilität der Reflexlichtschranke. Habe inzwischen auch nen PLOT erstellt. Leider nur mit Flow und Gesamtverbrauch.

(http://up.picr.de/24370888yp.jpg)

(http://up.picr.de/24370889ic.jpg)

(http://up.picr.de/24370890nv.jpg)

Es ist wunderschön zu erkennen wann und wieviel Gas verbrannt wird. Jetzt Interessiert mich natürlich noch wie ich den Tages-, Montas- und Jahresverbrauch herausbekomme bzw irgendwie darstellen kann.

Jarnsen

EDIT:

Heute nach ca 36h Einsatz habe ich eine Abweichung von 1000 Pulsen. Was 10m3 sind. Weiß noch nicht recht woran das liegt. Habe den abfrageintervall des dummy von 20 jetzt auf 30 gesetzt... Mal sehen ob es jetzt besser wird..
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Hauswart

Darf ich mal kurz nachfragen, welchen Sensor zu gekauft hast? Würde mir dann auch mal einen bestellen :D
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

Jarnsen

Hallo Hauswart

TCRT5000 also alles wie beim Orginal PulseWaterMeter. Funktioniert gut mit dem Gaszähler, bei der 6 ist eine Reflekionsschicht aufgebracht. Die Zeit wo ich daneben stand hat er richtig gezählt. Jetzt muss ich nur noch rausfinden wie ich das ganze ohne Abweichungen hin bekomme. Hatte heute keine Zeit nachzusehen ob die Abweichung wieder größer geworden ist. Als nächstes kommt dieser Sensor noch auf die Wasseruhren, da muss ich dann aber nochmal die eine von der anderen abziehen. Mal sehen ob das klappt. Hast du inzwischen eine Idee wie ich Tages Monats und Jahresverbrauch hin bekomme??


Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

Du kannst dafür zum Beispiel das statistc Modul verwenden.

Gruß,
Matscher
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

Bekomme ich mit Statistik nicht hin


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

So, habe das Teil nun seit geraumer Zeit im Einsatz, so richtig rund läuft es noch nicht.War jetzt mehrere Tage hintereinander schauen wie der Node seine Arbeit verrichtet. Er zählt ca das doppelte als ich am Tage verbrauche, wenn ich daneben stehe und kontrolliere passt es auch, immer auf der letzten Stelle bei der 6 wird ein Impuls gesendet.
Dachte erst das es eventuell daran liegt das ich den Sensor bei Licht eingestellt habe aber es sonst dunkel ist. Inzwischen habe ich drumherum alles abgedunkelt (zumindest um die letzten 3 Stellen... Das ganze sitzt auf ner Lochrasterplatine.
Habe jetzt mal den Pulse_Factor von 100 auf 200 gesetzt. Vielleicht geht es jetzt. Allerdings gibt es im Sketch noch so einiges was ich nicht verstehe.

double ppl = ((double)PULSE_FACTOR)/1000;        // Pulses per liter

volatile unsigned long pulseCount = 0;   
volatile unsigned long lastBlink = 0;
volatile double flow = 0; 
boolean pcReceived = false;
unsigned long oldPulseCount = 0;
unsigned long newBlink = 0;   
double oldflow = 0;
double volume = 0;                     
double oldvolume =0;


warum steht da double?? Verdoppelt mir das meine gemessenen Pulse oder was bedeutet es??


THX Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

eldrik

der war gut  ;D dabei handelt es sich um Datentypen

Greetz
Eldrik

Jarnsen

@eldrik

Sorry,

bin halt nicht firm darin. Ich kann zwar einiges aus dem Sketch lesen bzw interpretieren, verstehe sehr vieles darin nicht. Deshalb kommen solche Fragen zustande

Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

 :)

Zitat von: Jarnsen am 12 Februar 2016, 13:48:13
Habe jetzt mal den Pulse_Factor von 100 auf 200 gesetzt. Vielleicht geht es jetzt. Allerdings gibt es im Sketch noch so einiges was ich nicht verstehe.

Wichtig ist erstmal das der Sketsch zum "Zähler" passt.


#define PULSE_FACTOR 1000                       // Nummber of blinks per m3 of your meter


Also wie oft muss die 6 vorbei kommen, um 1 m3 Gas zu zählen.

Möglich das die RelfexLichtSchranke ungewollte auslöst, wenn die 6 auf "Kippe" steht. Vllt. noch etwas den Schwellwert werändern.
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

Zitat von: Matscher am 12 Februar 2016, 15:31:30
:)

Wichtig ist erstmal das der Sketsch zum "Zähler" passt.


#define PULSE_FACTOR 1000                       // Nummber of blinks per m3 of your meter


Also wie oft muss die 6 vorbei kommen, um 1 m3 Gas zu zählen.


Also die 6 muß 100 mal vorbei kommen um die letzte schwarze Zahl zu drehen. 1 Impuls alle 10 Liter. Schwellenwert ist ganz niedrig eingestellt. Noch n 0,01mm weiter und er reagiert nicht mehr bei der Reflekionsschicht auf der 6. Ein wenig mehr und es werden mehr Impulse gezählt... Komisch ist echt das es Ca das doppelte ist...

Hast du noch ne Idee?? Eventuell mal mit nem einfachen doorsketch und houercounter die Pulse zählen bzw beides parallel ? Eine Reflexlichtschranke und 2 Arduino??

Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

rippi46

Hallo Jarnsen,

habe auch bei meinen Gaszähler mit einem Reedkontakt und Firmata die Impulse gezählt und mit Hourcounter das ganze erfasst. Hat eigentlich ganz gut funktioniert.
War mir dann aber von der Auflösung her zu grob und habe jetzt das ganze noch mit einer Reflectionslichtschranke (TCRT5000 IR Barrier Line Track Sensor) erweitert.
Beide Systeme funktionieren einwandfrei. Eigentlich habe ich nur Abweichungen, wenn ich Probleme mit der Übertragung habe. Habe den Arduino über ein ESP8266 im Fhem eingebunden.

Gruß Rippi

FHEM, LMS, VDR ,Dell 9010 Ubuntu 20.04,Raspimatic, HM/HMIP, Max, Elro, Brennenstuhl u. Intertechno mit Connair.
Picoreplayer, Raspi IR-Lanadapter, Firmata(wifi), LaCrosse,
nanocul433, nanocul868, Signalduino, Connexoon,
MySensor-GW+Sensoren, RGBWW, Zigbee2mqtt,Xiaomi,Nextion,LEDMatrix,Alexa

Jarnsen

Hallo Rippi,

Bei mir läuft es auch mit nem TRCT5000, Reedkontakt ist nicht möglich da kein Magnet im Zähler verbaut ist.
Mit dem Ergebnis bin ich noch nicht so zufrieden. Wenn ich alles so mache wie es sein soll, mit Watermetersketch und den Pulsfactor auf 100 stelle (da die Reflekionsschicht in der 6 ist und somit alle 10 Liter ein Impuls kommen sollte) ist der gemessene Verbrauch nach einem Tag ca 12m^3 laut FHEM aber real am Zähler abgelesen ca 6m^3. Das ganze übertrage ich mit MYSENSORS und nem NRF24L01+, mir ist schleierhaft wie diese hohe Abweichungen zustande kommt. Habe es mit und ohne ack im Gateway versucht brachte nichts. Kann natürlich versuchen den Arduino über nen ESP8266 einzubinden oder ich stelle noch nen Rpi2 in den Heizungskeller und mache es mit FHEM2FHEM.

Bin ratlos

Jarnsen


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

rippi46

Hallo Jarnsen,

hatte am Anfang auch zu viele Impulse bekommen, weil die Empfindlichkeit zu hoch eingestellt war. Habe dann den digitalen Ausgang des Sensors verwendet und noch einen Pullupwiderstand eingebaut.
Hatte mir hier einige Anregungen geholt:
http://voizchat.de/gaszaehler-verbrauch-erfassen-mit-fhem-und-raspberry-gpio/

und hier
https://github.com/matscher2004/MySensors/tree/master/EnergyMeterPulseSensor
habe ich den Sketch für den Stromzähler geholt. Dieser sollte auch mit den Gaszähler funktionieren.

Falls du die Wasseruhr auch noch auslesen willst, findest du hier eine Anleitung
http://blog.steveundkristin.de/2015/09/13/fhem-wasserzaehler-auslesen-mit-hilfe-von-mysensors/

Oder du versuchst das ganze mit Firmata und Esp8266 und Hourcounter.

define hwr_Gaszaehler2_Reedkontakt FRM_IN 14
attr hwr_Gaszaehler2_Reedkontakt IODev WFirmata
attr hwr_Gaszaehler2_Reedkontakt event-on-change-reading .*
attr hwr_Gaszaehler2_Reedkontakt room Werkstatt
attr hwr_Gaszaehler2_Reedkontakt stateFormat reading

define hwr_Gaszaehler2 HourCounter hwr_Gaszaehler2_Reedkontakt:reading:.on
attr hwr_Gaszaehler2 room Werkstatt
attr hwr_Gaszaehler2 stateFormat {sprintf("Gesamtverbrauch: %.2f m³ ",ReadingsVal("hwr_Gaszaehler2","countsOverall","")/100)}

define Filelog_hwr_Gaszaehler2 FileLog ./log/hwr_Gaszaehler2-%Y.log hwr_Gaszaehler2
attr Filelog_hwr_Gaszaehler2 room Werkstatt

define GasverbrauchStdN2 dummy
attr GasverbrauchStdN2 room Büro,Werkstatt

define GasverbrauchStdNotiN2 notify Gasverbrauch2 {\
my $GasUmlaufzeitN2=ReadingsVal("Gasverbrauch2","pauseTimeEdge","0")+ReadingsVal("Gasverbrauch2","pulseTimeEdge","0");;\
my $GasProStdN2=36/$GasUmlaufzeitN2;;\
my $GasProStdRoundedN2=int(100 * $GasProStdN2 + 0.5) / 100;;\
\
fhem("set GasverbrauchStdN2 $GasProStdRoundedN2");;;;\
fhem("delete tmp_time_gasn2");;;;\
fhem("define tmp_time_gasn2 at +00:01:00 set GasverbrauchStdN2 0");;;;\
}
attr GasverbrauchStdNotiN2 room Zähler

define Filelog_GasverbrauchStdN2 FileLog ./log/GasverbrauchStdN2-%Y.log GasverbrauchStdN2
attr Filelog_GasverbrauchStdN2 room Büro,Werkstatt

define SVG_Filelog_GasverbrauchStdN2_1 SVG Filelog_GasverbrauchStdN2:SVG_Filelog_GasverbrauchStdN2_1:CURRENT
attr SVG_Filelog_GasverbrauchStdN2_1 label "Gasverbrauch/Stunde $data{max1} m3 Last $data{currval1} m3"
attr SVG_Filelog_GasverbrauchStdN2_1 room Plots,Werkstatt,Zähler


Reedkontakt ist natürlich kein Reedkontakt sondern der TCRT5000. Hatte es von der Reedkontakt-config übernommen

Gruß Rippi

FHEM, LMS, VDR ,Dell 9010 Ubuntu 20.04,Raspimatic, HM/HMIP, Max, Elro, Brennenstuhl u. Intertechno mit Connair.
Picoreplayer, Raspi IR-Lanadapter, Firmata(wifi), LaCrosse,
nanocul433, nanocul868, Signalduino, Connexoon,
MySensor-GW+Sensoren, RGBWW, Zigbee2mqtt,Xiaomi,Nextion,LEDMatrix,Alexa

Jarnsen

Hallo Rippi,

Das sind die gleichen Quellen wie bei mir. Nur das ich das MySensors Watermeter Projekt genommen habe. Digital nehme ich von Anfang an. Pullup-Wiederstand?? Was bewirkt der wo muss er hin wie groß muss er sein. Versuche heute mal den Energymeter Sketch, aber nach meinem Verständnis sind die doch fast gleich außer das Energymeter kW ausgibt und Watermeter nen Gesamtverbrauch und ne Durchflussmenge.
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

rippi46

Hallo Jarnsen

den Pullup nimmt man in der Regel um eindeutige Zustände zwischen High und Low Signalen zu erreichen. Größenordnung 4,7k bis 10k zwischen Signaleingang und Spannungsversorgung.

Gruß Rippi
FHEM, LMS, VDR ,Dell 9010 Ubuntu 20.04,Raspimatic, HM/HMIP, Max, Elro, Brennenstuhl u. Intertechno mit Connair.
Picoreplayer, Raspi IR-Lanadapter, Firmata(wifi), LaCrosse,
nanocul433, nanocul868, Signalduino, Connexoon,
MySensor-GW+Sensoren, RGBWW, Zigbee2mqtt,Xiaomi,Nextion,LEDMatrix,Alexa

Jarnsen

Ok dann häng ich mal 4,7k rein sonst habe ich nur 470k und 1M zur Hand


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

Obwohl es ja an nem digitalAusgang eh nur 1 oder 0 geben sollte...


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

(http://uploads.tapatalk-cdn.com/20160213/1acf834c8a8be62e8b541fe0075256a7.jpg)

So sieht der Spaß jetzt aus... Pullup ist dran... Input zum Arduino sind 5V am raw den sich der Arduino auf 3,3V runterregelt... Auch für den SENSOR

Jarnsen


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

rippi46

Hallo Jarnsen

den Pullup nimmt man für einen definierten Zustand am Eingang de Arduino.
Funktioniert jetzt deine Anordnung?


Gruß Rippi
FHEM, LMS, VDR ,Dell 9010 Ubuntu 20.04,Raspimatic, HM/HMIP, Max, Elro, Brennenstuhl u. Intertechno mit Connair.
Picoreplayer, Raspi IR-Lanadapter, Firmata(wifi), LaCrosse,
nanocul433, nanocul868, Signalduino, Connexoon,
MySensor-GW+Sensoren, RGBWW, Zigbee2mqtt,Xiaomi,Nextion,LEDMatrix,Alexa

Jarnsen

Kann ich noch nicht sagen... Will noch ne Nacht warten... Arduino hatte sich verabschiedet, deshalb keine Auswertung möglich... Was macht es für nen Unterschied ob ich den TCRT5000 mit 3.3V oder mit 5V betreibe.


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

snagus

#73
Hallo Bastler,

ich häng mich hier mal rein, weil ihr mir heute sehr geholfen habt, dieser Thread noch so tagesaktuell ist und ich euch vielleicht bei dem zu großen Verbrauchsablesewert helfen kann.

Ich habe in den letzten Tagen damit begonnen, den Power Meter Pulse Sensor von MySensors (standard Sketch) per Fhem in mein System zu integrieren.
Nach dem Zusammenbau schien es auch keine hardwarebedingten Probleme zu geben. Durch den Inclusion-Mode ließ sich der Sensor anmelden, es wurden die Readings energy1 und power1 in den Attributen automatisch angelegt (mapReading_XXX), es konnte aber leider kein Wert empfangen werden. Ich hab dann mal die Meldungen im serial Monitor in der Arduino-IDE angeschmissen und die Werte, die dort aufgetaucht sind, gegoogelt. Ich kam so irgendwie auch zu diesem Thread und hab herausgefunden, dass der Sensor einen Startwert (V_VAR1) verlangt.

Ihr habt hier ja das gleiche Problem für den Gas- bzw. Wassersensor identifiziert und mit eurer Hilfe habe ich es hinbekommen. Ich hab die V_VAR1 in der Datei 10_MYSENSORS_DEVICE.pm am Fhem-Server (Raspberry pi) im Ordner /opt/fhem/FHEM in der Zeile

S_POWER                 => { receives => [V_VAR1], sends => [V_WATT,V_KWH,V_VAR1] }, # Power measuring device, like power meters

so eingefügt, wie ihr es auch mit der S_WATER -Zeile gemacht habt.

(Evtl. auch in der Originaldatei ändern? Wer kann so etwas, damit es in einem Update für alle geändert wird?)

Das hat funktioniert. Ein value11 erscheint seitdem in meinem Fhem und ich konnte diese Variable mit setreading MYSENSOR_107 value11 128830000 auf meinen aktuellen Zählerstand einstellen (ich habe 10000 Impulse pro Kilowattstunde).

Die Impulse lese ich mit einem Lichtsensor digital ab. Mit einer Handykamera kann man übrigens ganz schön die IR-Impulse des Stromzählers sichtbar machen. So konnte ich mich vergewissern, dass die Impulse des Zählers und die LED des Sensors, die den Empfang des Sensors anzeigt, schön parallel laufen.

Trotzdem hatte ich das Problem, dass der Zählerstand in Fhem viel schneller zählte als Impulse am Stromzähler vorlagen. Der Sensor hatte ca. doppelt so viele Impulse gezählt als wirklich gesendet wurden. Ich hab den Tip mit dem pull-up-Widerstand aufgegriffen und einen installiert. Es brachte keine Besserung.

Schließlich fand ich eine Lösung: Ich habe die Empfindlichkeit am Sensor ganz hochgeschraubt (mit einem Schraubenzieher an der kleinen Schraube) und ganz gaaaaaanz vorsichtig die Empfindlichkeit runter geregelt bis die LED nicht mehr dauerhaft leuchtet, sondern blinkt.

Jetzt klappt es. Langzeitstudien stehen noch aus. 

Glück auf!

Jarnsen

Zitat von: snagus am 14 Februar 2016, 19:35:15
V_VAR1 in der Datei 10_MYSENSORS_DEVICE.pm am Fhem-Server (Raspberry pi) im Ordner /opt/fhem/FHEM in der Zeile

S_POWER                 => { receives => [V_VAR1], sends => [V_WATT,V_KWH,V_VAR1] }, # Power measuring device, like power meters

so eingefügt, wie ihr es auch mit der S_WATER -Zeile gemacht habt.

(Evtl. auch in der Originaldatei ändern? Wer kann so etwas, damit es in einem Update für alle geändert wird?)


Habe ich gemeldet, denke wird demnächst geändert. Das mit der Stellschraube am Sensor ist mir bekannt, ich bin schon an der Grenze. Es blinkt immer nur wenn die 6 vorbei kommt. Zumindest hat es so den Anschein. Betreibst du den Sensor mit 5 oder 3.3V??


Grüße Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

snagus

Mit 5 V.
Ich musste aber wirklich mehrmals nachstellen, bis die Werte stimmten. Auch wenn die LEDs von Zähler und Sensor im Takt blinkten, wurde nicht immer richtig gezählt. Hab mehrmals an der Übergangstelle ganz leicht hin und her gedreht. Irgendwann stimmte dann Blinken der Stromzählers, Blinken der Sensor-LED und das Zählen in Fhem überein.

Hauswart

Zitat von: Jarnsen am 14 Februar 2016, 20:37:29
Habe ich gemeldet, denke wird demnächst geändert. Das mit der Stellschraube am Sensor ist mir bekannt, ich bin schon an der Grenze. Es blinkt immer nur wenn die 6 vorbei kommt. Zumindest hat es so den Anschein. Betreibst du den Sensor mit 5 oder 3.3V??
Habe ich in meiner Version (https://github.com/Kolbi/fhem-mirror/blob/master/fhem/FHEM/10_MYSENSORS_DEVICE.pm) auch schon gefixt und als PR (https://github.com/ntruchsess/fhem-mirror/pull/29) an Norbert gesendet :)
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

Jarnsen

@ Hauswart,

War im letzten Update noch nicht geändert.

________________

Dieses Modul gibt es für teuer Geld für meinen Gaszähler zu kaufen. Habe jetzt mal noch nen Hall-Sensor bestellt, vielleicht geht es damit besser.

Genauer kann ich den TCRT5000 nicht einstellen. Höchstens noch mit 5V betreiben, aber ob das den Unterschied bringen wird???


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Hauswart

Zitat von: Jarnsen am 15 Februar 2016, 13:02:12
@ Hauswart,

War im letzten Update noch nicht geändert.
Ist leider auch noch nicht offiziell in der FHEM-Repo. :)
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

Matscher

Zitat von: Jarnsen am 12 Februar 2016, 22:20:33
Bei mir läuft es auch mit nem TRCT5000, Reedkontakt ist nicht möglich da kein Magnet im Zähler verbaut ist.

Dann wird das mit dem Hall-Sensor auch nicht funktionieren.

Aber wenn Du ein Cyble Target am Gaszähler hast (ein Zeiger mit einem metallischen Halbmond), dann könntest Du auch einen induktiven Näherungssensor benutzen.
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

Reagiert der Hallsensor nicht auf Metall??? Was für induktive 5 oder 3.3V Näherungssensoren kennst du??? Will nicht unbedingt noch 12 V verlegen.


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

http://www.ebay.de/ulk/itm/252266483987

Was ist mit dem??? Der ist zwar 6V und ist ein Schließer wo minus geschaltet wird. Wir brauchen plus geschaltet oder???


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

jorge

Ich komme nicht weiter:

Habe erste Arduino Tests mit dem Modul FRM erfolgreich beendet und wollte mich nun an die Anbindung von MySensors machen:

- Arduino mit WaterPulseMeterSensor geflasht

- Define in FHEM angelegt:

define ArduinoGateway MYSENSORS COM12@115200
attr ArduinoGateway autocreate 1
attr ArduinoGateway first-sensorid 1
attr ArduinoGateway requestAck 1
attr ArduinoGateway room MySensors
attr ArduinoGateway stateFormat connection
attr ArduinoGateway verbose 5

Hatte dann nach der Beschreibung im Wiki die Erwartung, dass die MYSENSORS_DEVICE automatisch angelegt werden.

Habe mich dann bei Matscher bedient:

define WaterMeter MYSENSORS_DEVICE 100
attr WaterMeter IODev ArduinoGateway
attr WaterMeter mapReading_flow3 3 flow
attr WaterMeter mapReading_value13 3 value1
attr WaterMeter mapReading_volume3 3 volume
attr WaterMeter mode node
attr WaterMeter room MySensors
attr WaterMeter setReading_value13 1
attr WaterMeter stateFormat volume3 m3, flow3 l/min, water l/h
attr WaterMeter userReadings water:statVolume3 { SplittedStatisticReading("WaterMeter","statVolume3","Hour")*1000;; },floorplantext { ''.(SplittedStatisticReading("WaterMeter","statVolume3","Hour")*1000).' l/h
attr WaterMeter version 1.4.1

Habe D3 versuchsweise mit +5V manuell getriggert:
Nichts passiert...
Ich nehme an, dass die 100 in der Defintion als node für die Pins stehen?
Wahrscheinlich fehlt mir das Verständnis, wie die Readings in MYSENSORS_DEVICE definiert werden...

Kann mir jemand auf die Sprünge helfen?
Wohlmöglich wäre für alle auch ein Wiki-Eintrag im Sinne eines HowTo sinnvoll?
FHEM.RaspberryPi 2 (HM, 1Wire, Callmonitor.FB 7490, GPIO, I2C, MQTT-Server, MCP23018)
FHEM.RaspberryPi  (FHEM2FHEM, CUL, FS20)
FHEM.RPiZeroW (I2C, 1Wire, python.api, XiaomiBTLESens.MQTT)
FHEM.Win7 (FHEM2FHEM,DBLOG.MySql)
ESPEasy (WEMOSD1, I2C, Analog, 1Wire), Sonoff_T1_3ch, Mobotix QM25, robonect

schka17

Hallo Jorge,

Wirklich helfen kann ich nicht da die Infos etwas dürftig sind, also z.b. Keine logmeldungen....
Grundsätzlich werden die mysensors devices angelegt sofern autocreate nicht disabled ist.
Lt. Commandref ist die Zahl 100 die Sensorid, du hast dein Gateway mit first sensor id = 1 definiert ???? Siehst du im Logfile überhaupt Daten vom Gateway?
Wenn ja dann siehst du auch die Syntax der Meldungen inkl. ChildID, das was du für das readings mappings benötigst.




Sent from my iPad using Tapatalk
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

jorge

Zitat von: schka17 am 05 Juli 2016, 19:43:00
Hallo Jorge,

Wirklich helfen kann ich nicht da die Infos etwas dürftig sind, also z.b. Keine logmeldungen....


Natürlich, deshalb hatte ich auch verbose auf 5 gestellt...

Die relevaten Logdaten (nach restart)

2016.07.06 12:46:50 3: Opening ArduinoGateway device COM12
2016.07.06 12:46:50 3: Setting ArduinoGateway serial parameters to 115200,8,N,1
2016.07.06 12:46:50 3: ArduinoGateway device opened
2016.07.06 12:46:50 5: MYSENSORS send: Rx: fr=000 ci=000 c=003(C_INTERNAL    ) st=002(I_VERSION       ) ack=0 ''

2016.07.06 12:46:50 5: SW: 303b303b333b303b323b0a

Ich kann damit leider nicht viel anfangen...

Beim Triggern auf D3 wird nichts ins Logfile geschrieben.

Zitat von: schka17 am 05 Juli 2016, 19:43:00

lt. Commandref ist die Zahl 100 die Sensorid, du hast dein Gateway mit first sensor id = 1 definiert ????


Also müßte bei der Gateway-def

attr ArduinoGateway first-sensorid 100

stehen?

Hab ich probiert, keine Änderung...

LG

Jorge
FHEM.RaspberryPi 2 (HM, 1Wire, Callmonitor.FB 7490, GPIO, I2C, MQTT-Server, MCP23018)
FHEM.RaspberryPi  (FHEM2FHEM, CUL, FS20)
FHEM.RPiZeroW (I2C, 1Wire, python.api, XiaomiBTLESens.MQTT)
FHEM.Win7 (FHEM2FHEM,DBLOG.MySql)
ESPEasy (WEMOSD1, I2C, Analog, 1Wire), Sonoff_T1_3ch, Mobotix QM25, robonect

schka17

ZitatAlso müßte bei der Gateway-def

attr ArduinoGateway first-sensorid 100

stehen?

Hab ich probiert, keine Änderung...

Nein, das habe ich nicht gesagt oder gemeint, ich meinte wenn du die commandref gelesen hättest, dann hättest du die Frage nicht gestellt.
Dort steht:
define <name> MYSENSORS_DEVICE <Sensor-type> <node-id>

Ich glaube auch nicht dass das die relevanten Logdaten sind, wenn ja, dann sendet dein Sensor nicht (bzw. empfängt dein Gateway nichts), deine gepostete Zeile ist keine empfangene message. Dann wird natürlich auch das Device nicht automatisch angelegt werden und dann nützt es auch nichts wenn du  per copy paste irgendein Device anlegst.

Ohne jetzt das Protokoll im Detail analysiert zu haben (ich gebe zu, auch das Wiki nicht gelesen zu haben) funktioniert es bei mir so:

1. autocreate enabled
2. inclusion mode on
3. Sensor einschalten
4. entweder habe ich die SensorID im sketch definiert, wenn nicht wird über den standardprozess über das Gateway von FHEM die nächste freie SensorID definiert, gestartet wird dabei von der im Attr first-sensorid definierten Nummer, ich verwende hier auch 100, alle SensorID's darunter habe ich fix im Sketch definiert.
4. Das Device wird automatisch angelegt!! --> auch das ist normalerweise ganz klar im Log erkennbar

Dann solltest auch solche, oder ähnliche messages im Log sehen:

2016.06.13 17:04:47 5: MYSENSORS/RAW: /100;0;1;0;1;42.7
2016.06.13 17:04:47 5: MYSENSORS Read: Rx: fr=100 ci=000 c=001(C_SET         ) st=001(V_HUM           ) ack=0 '42.7'


das bedeutet der Sensor mit der ID 100 meldet einen V_HUM Wert von 42.7 des Child's 1.

Solange du keine Meldungen empfängst brauchst du nichts selbst definieren oder mit D3 herumspielen, der Sensor muss beim poweron irgendwas senden.

Also, Babyschritte. Stelle mal sicher dass dein Sensor sendet und dass dein Gateway empfängt. und dann schau ma weiter.
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

jorge

Zitat von: schka17 am 06 Juli 2016, 16:58:15

Also, Babyschritte. Stelle mal sicher dass dein Sensor sendet und dass dein Gateway empfängt. und dann schau ma weiter.


Hast ja recht, es kommt am seriellen Port nichts an. Das Einzige, was im seriellen Monitor nach reset zu sehen ist:

radio init fail

Sucht der Arduino-sketch irgend ein shield? Vielleicht noch mal zur Hardware: Habe den Nano ohne shields über USB angeschlossen.

LG

Jorge


FHEM.RaspberryPi 2 (HM, 1Wire, Callmonitor.FB 7490, GPIO, I2C, MQTT-Server, MCP23018)
FHEM.RaspberryPi  (FHEM2FHEM, CUL, FS20)
FHEM.RPiZeroW (I2C, 1Wire, python.api, XiaomiBTLESens.MQTT)
FHEM.Win7 (FHEM2FHEM,DBLOG.MySql)
ESPEasy (WEMOSD1, I2C, Analog, 1Wire), Sonoff_T1_3ch, Mobotix QM25, robonect

gloob

Also ein Funkmodul musst du schon an den Arduino anschließen, ohne geht es nicht.
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

schka17

Zitat von: gloob am 06 Juli 2016, 21:36:25
Also ein Funkmodul musst du schon an den Arduino anschließen, ohne geht es nicht.
Dem kann ich nichts hinzufügen.


Sent from my iPad using Tapatalk
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000