FHEM


  • Admin

    The newly supported FHEM controller should also have its own separate thread.

    Big thanks to @ntruchsess for all the effort you've put into this.

    I can't seem to find any install instructions in english at the moment.

    http://forum.fhem.de/index.php/topic,28198.msg210752.html#msg210752



  • Has anyone managed to get the water pulse meter to work with FHEM? Fhem just crashes when I power on the sensor.
    I've asked for support on FHEM homepage forum, but no one has answered in over a week. 😞


  • Plugin Developer

    @Aloha, I've just seen your post on fhem-forum. Seems you are not on the latest code, the kind of crash you experience has been fixed on Nov. 09 2014. Please upgrade:
    http://fhem.de/commandref.html#update

    • Norbert

  • Plugin Developer

    @hek said:

    I can't seem to find any install instructions in english at the moment.

    The commandref is in english:
    http://fhem.de/commandref.html#MYSENSORS
    http://fhem.de/commandref.html#MYSENSORS_DEVICE



  • @ntruchsess said:

    @Aloha, I've just seen your post on fhem-forum. Seems you are not on the latest code, the kind of crash you experience has been fixed on Nov. 09 2014. Please upgrade:
    http://fhem.de/commandref.html#update

    • Norbert

    Thank you ntruchsess! I updated to the latest version by running "update". Now it's not crashing any longer. But I'm still unable to get the water pulse meter to work. It's not logging any values. Currently the main log file is spammed with the following at an insane speed over and over again:

    2014.12.01 17:16:56 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 103-103-0 s=5,c=2,t=24,pt=0,l=0:'
    2014.12.01 17:16:56 5: MYSENSORS gateway gateway: read: 103-103-0 s=5,c=2,t=24,pt=0,l=0:
    2014.12.01 17:16:56 5: MYSENSORS Read: Rx: fr=103 ci=005 c=002(C_REQ ) st=024(V_VAR1 ) ack=0 ''
    2014.12.01 17:16:56 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 103-103-0 s=5,c=2,t=24,pt=0,l=0:'
    2014.12.01 17:16:56 5: MYSENSORS gateway gateway: read: 103-103-0 s=5,c=2,t=24,pt=0,l=0:
    2014.12.01 17:16:56 5: MYSENSORS Read: Rx: fr=103 ci=005 c=002(C_REQ ) st=024(V_VAR1 ) ack=0 ''
    2014.12.01 17:16:56 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 103-103-0 s=5,c=2,t=24,pt=0,l=0:'
    2014.12.01 17:16:56 5: MYSENSORS gateway gateway: read: 103-103-0 s=5,c=2,t=24,pt=0,l=0:
    2014.12.01 17:16:56 5: MYSENSORS Read: Rx: fr=103 ci=005 c=002(C_REQ ) st=024(V_VAR1 ) ack=0 ''
    2014.12.01 17:16:56 5: MYSENSORS Read: Rx: fr=000 ci=000 c=003(C_INTERNAL ) st=009(I_LOG_MESSAGE ) ack=0 'read: 103-103-0 s=5,c=2,t=24,pt=0,l=0:'
    2014.12.01 17:16:56 5: MYSENSORS gateway gateway: read: 103-103-0 s=5,c=2,t=24,pt=0,l=0:
    2014.12.01 17:16:56 5: MYSENSORS Read: Rx: fr=103 ci=005 c=002(C_REQ ) st=024(V_VAR1 ) ack=0 ''
    2014.12.01 17:16:56 5: MYSENSORS/RAW: 0;0;3;0;9;r/ead: 103-103-0 s=5,c=2,t=24,pt=0,l=0:
    103;5;2;0;24;
    0;0;3;0;9;read: 103-103-0 s=5,c=2,t=24,pt=0,l=0:
    103;5;2;0;24;
    0;0;3;0;9;read: 103-103-0 s=5,c=2,t=24,pt=0,l=0:
    103;5;2;0;24;
    0;0;3;0;9;read: 103-103-0 s=5,c=2,t=24,pt=0,l=0:
    103;5;2;0;24;

    This is my current config for this sensor:

    define Vatten MYSENSORS_DEVICE 103
    attr Vatten IODev gateway
    attr Vatten mapReading_flow5 5 flow
    attr Vatten mapReading_volume5 5 volume
    attr Vatten mode node
    attr Vatten room Vatten
    attr Vatten setReading_value15 1
    attr Vatten version 1.4
    attr Vatten stateFormat volume5 liter
    attr Vatten verbose 5

    Thanks!
    / Thomas


  • Plugin Developer

    @Aloha
    VAR_1 needs to be mapped for clientid 5:

    attr Vatten mapReading_value15 5 value1
    

    (you may choose to use any other identifier of your choice instead of 'value15' - this is just what the autocreate-mechanism is supposed to choose).

    Edit: I just noticed that V_VAR1 was missing in S_WATER definitions for autocreate (that is fixed now: http://sourceforge.net/p/fhem/code/7112/)
    With this fix it should be sufficient to just do a 'delete Vatten', enable inclusion-mode and restart the sensor. Autocreate should create all required attributes including the missing mapReading. As I didn't test with the Watersensor-sketch please let me know if it doesn't....

    • Norbert


  • Cool, it seems to work now! Thanks! Now I'm receiving some warning messages in fhem log (even if it seems to be working).

    2014.12.02 00:03:02 1: PERL WARNING: Subroutine Define redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 162.
    2014.12.02 00:03:02 1: PERL WARNING: Subroutine UnDefine redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 179.
    2014.12.02 00:03:02 1: PERL WARNING: Subroutine Set redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 185.
    2014.12.02 00:03:02 1: PERL WARNING: Subroutine Attr redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 230.
    2014.12.02 00:03:02 1: PERL WARNING: Subroutine onGatewayStarted redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 352.
    2014.12.02 00:03:02 1: PERL WARNING: Subroutine onPresentationMessage redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 356.
    2014.12.02 00:03:02 1: PERL WARNING: Subroutine onSetMessage redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 413.
    2014.12.02 00:03:02 1: PERL WARNING: Subroutine onRequestMessage redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 426.
    2014.12.02 00:03:02 1: PERL WARNING: Subroutine onInternalMessage redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 441.
    2014.12.02 00:03:02 1: PERL WARNING: Subroutine sendClientMessage redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 518.
    2014.12.02 00:03:02 1: PERL WARNING: Subroutine rawToMappedReading redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 525.
    2014.12.02 00:03:02 1: PERL WARNING: Subroutine mappedReadingToRaw redefined at ./FHEM/10_MYSENSORS_DEVICE.pm line 536.

    I only downloaded the new module and did a reload.


  • Plugin Developer

    @Aloha
    fhem (or better 'perl') is unable to do a clean reload of a single module without restart of the perl-process. Hence the warnings. Just do a 'shutdown restart' on the web-console.



  • Is it possible to use 2 gateways at the same time with Fhem? For instance multiple ethernet gateways or one ethernet gateway and one serial gateway?

    Thanks!


  • Plugin Developer

    @Aloha
    sure. You may use as many gateways in a single instance of fhem as the machine is capable to service in terms of cpu, ram and filehandles. What does not work is to use multiple gateways for the very same sensors to archive higher avaiability (or redundancy), so it would be beneficial to use different channels for each gateway to lessen cpu-load on the gateways ans save bandwith on the connection to fhem. If all sensors and gateways share the same channel you will have to assign each sensor to the gateway that suits best (e.g. is positioned with the least distance to the sensor) - fhem will just ignore messages for a gateway a sensor is not assigned to (if not in inclusion-mode).

    • Norbert


  • @ntruchsess how do I update my dummy switch value? my german language is not so good to understand everything on fhem. I've created fhem.cfg for my 4 buttons. and create 4 dummy switch for that. but when I press the real button, dummy switch doesn't change the state. but when I press dummy switch on web. the button status is changed.

    below is my fhem.cfg

    attr global userattr devStateIcon devStateStyle icon sortby webCmd widgetOverride
    attr global autoload_undefined_devices 1
    attr global logfile ./log/fhem-%Y-%m.log
    attr global modpath .
    attr global motd SecurityCheck:\
    \
    WEB,WEBphone,WEBtablet has no basicAuth attribute.\
    telnetPort has no password/globalpassword attribute.\
    \
    Restart FHEM for a new check if the problem is fixed,\
    or set the global attribute motd to none to supress this message.\
    
    attr global statefile ./log/fhem.save
    attr global updateInBackground 1
    attr global verbose 3
    
    define telnetPort telnet 7072 global
    
    define WEB FHEMWEB 8083 global
    
    define WEBphone FHEMWEB 8084 global
    attr WEBphone stylesheetPrefix smallscreen
    
    define WEBtablet FHEMWEB 8085 global
    attr WEBtablet stylesheetPrefix touchpad
    
    # Fake FileLog entry, to access the fhem log from FHEMWEB 
    define Logfile FileLog ./log/fhem-%Y-%m.log fakelog
    
    define autocreate autocreate
    attr autocreate filelog ./log/%NAME-%Y.log
    
    define eventTypes eventTypes ./log/eventTypes.txt
    
    # Disable this to avoid looking for new USB devices on startup
    define initialUsbCheck notify global:INITIALIZED usb create
    define gateway MYSENSORS /dev/tty.wchusbserial14120@115200
    attr gateway autocreate 1
    attr gateway first-sensorid 10
    attr gateway stateFormat connection
    define MySwitch MYSENSORS_DEVICE 10
    attr MySwitch IODev gateway
    attr MySwitch mapReading_switch 0 switch
    attr MySwitch mapReading_switch1 1 switch
    attr MySwitch mapReading_switch2 2 switch
    attr MySwitch mapReading_switch3 3 switch
    attr MySwitch mode node
    attr MySwitch setCommands on0:switch:on off0:switch:off on1:switch1:on off1:switch1:off on2:switch2:on off2:switch2:off on3:switch3:on off3:switch3:off
    attr MySwitch setReading_switch off,on
    attr MySwitch setReading_switch1 off,on
    attr MySwitch setReading_switch2 off,on
    attr MySwitch setReading_switch3 off,on
    attr MySwitch version 1.4.1
    
    #Switch Config
    # Blue LED
    define BlueLED dummy
     attr BlueLED group TestGroup
     attr BlueLED room MySensorLED
     attr BlueLED setList on off
     attr BlueLED webCmd on:off
     # normal Switch on
     define BlueLED1 notify BlueLED:on set MySwitch on0
     define BlueLED2 notify BlueLED:off set MySwitch off0
    
    # Orange LED
    define OrangeLED dummy
     attr OrangeLED group TestGroup
     attr OrangeLED room MySensorsLED
     attr OrangeLED setList on off
     attr OrangeLED webCmd on:off
     # normal Switch on
     define OrangeLED1 notify OrangeLED:on set MySwitch on1
     define OrangeLED2 notify OrangeLED:off set MySwitch off1
    
    # Red LED
    define RedLED dummy
     attr RedLED group TestGroup
     attr RedLED room MySensorsLED
     attr RedLED setList on off
     attr RedLED webCmd on:off
     # normal Switch on
     define RedLED1 notify RedLED:on set MySwitch on2
     define RedLED2 notify RedLED:off set MySwitch off2
    
    # Green LED
    define GreenLED dummy
     attr GreenLED group TestGroup
     attr GreenLED room MySensorsLED
     attr GreenLED setList on off
     attr GreenLED webCmd on:off
     # normal Switch on
     define GreenLED1 notify GreenLED:on set MySwitch on3
     define GreenLED2 notify GreenLED:off set MySwitch off3
    

  • Hardware Contributor

    @raditv
    A little late, but just to avoid an unanswered post... Did you try adding something like:

    define BlueLED1reverse notify MySwitch:switch setstate BlueLED $EVTPART1


  • I installed the water Meter. I use Version 1.5.1, the volume and flow aren't count. I use FHEM 5.7. please can anyone help me. What do you need for analyzing the problem?

    Sorry for my english.

    Thx for Help

    Jarnsen



  • Could you link your sketch and post your FHEM entries?



  • Hi @all,

    i tried to translate the original post on FHEM Forum into english for people, who does not speek german.
    btw. I'm sorry for my english, so feel free to make corrections πŸ˜‰

    The new MYSENSORS Module ...
    ... integrates the Arduino- an nRF24L01 based MySensors wireless sensors and -actors in FHEM.
    It supports MySensors serial and ethernet gateways.

    You can configure FHEM with
    define gateway MYSENSORS /dev/ttyUSB0@115200
    for serial, or with
    define gateway <IP>:<PORT>
    for ethernet gateway.

    After start, press the "Inclusion-mode" Button on gateway, or fire 'set gateway inclusion-mode on' command in FHEM.
    Then restart your sensors in the radio range. (the "inclusion-mode will be turned off automaticly after one minute)

    You can add new devices in FHEM with the define command:
    define temperaturesensor MYSENSORS_DEVICE 21
    attr temperaturesensor IODev gateway

    For controlling Actors (f.e. the 'RelayWithButtonActuator') you have to teach your MYSENSORS_DEVICE the relevant set-commands:
    define relay MYSENSORS_DEVICE <nodeid>
    attr relay setCommands on:switch_1:on off:switch_1:off
    attr relay stateFormat switch_1

    Now you can toggle the actor in the web ui.

    you can teach the gateway or single nodes to response every set-messagewith an individual acknowledge-packet with the following attribute:
    attr <gateway|node> requestAck 1

    With activated acknowledge the gateway will sending the command untill it received the acknowledge response. (If the actor is absent or off, it will receive the command as soon as it is accessible again. Warning: FHEM will lose these queued messages on a restart)



  • @ntruchsess Will the Module in FHEM be updated for Version 2.0.0?
    If there are only new Constants I could try to do it and make it available to be published in the FHEM SVN.



  • @Hermann-Kaiser That would be very nice! ......waiting for the new constants to use them in FHEM...



  • @Daniel-Lienhard @ntruchsess
    i have updated MY_SENSOR_DEVICE.pm and Constants.pm

    would be nice if these files can be cheked and then submitted to the FHEM SVN.
    I've only added constants.

    1_1471334476177_Constants.pm 0_1471334476176_10_MYSENSORS_DEVICE.pm



  • @Hermann-Kaiser thx, will check it today and get back to you.


Log in to reply
 

Suggested Topics

  • 9
  • 3
  • 2
  • 5
  • 1
  • 5

0
Online

11.4k
Users

11.1k
Topics

112.7k
Posts