Nodon Octan Remote (How to)

The way Z-Wave works you can’t wander around the house with any Z-Wave device, it needs to stay relatively near where you include it, or you have to run a Heal after you move it to another room.

Mine controls a WiFi connected light, and is at the far end of my house from the controller, so at best there’s normally 3 hops to the controller, sometimes 4. Despite this control is fairly responsive, comfortably less than a second from pushing the button on the controller and an action happening - dimming takes a fraction longer, just because the remote doesn’t send the button held Scene immediately.

If you’re seeing longer, I’d look at both the health of your Z-Wave mesh (see this thread for how to generate a map), and the load on your Home Assistant server (which you can do with the top command, or tools like Netdata).

1 Like

@Tinkerer Thanks! :smiley: You are a lifesaver! I included the device in the basement close to the controller and I am trying to use it on the second floor. This will for sure be a problem!

I am happy to report that the switch works much better now. I ended up removing my switch and readding it to the network as the healing did not help alot. After re-adding it however (sitting on the toilet, in the room it is destined to end up!) it worked alot better.

After this I tried the cookbook entry on dimming up and down but to be honest this was not a perfect solution. The dimming is much too hard to control and not very user friendly. I ended up adding the following automations to use steps instead. One click on + is 32 steps brighter, double click on + is 62 steps brighter. This is very easy and works fine even with a bit of lag. Wife approved :slight_smile:

- alias: Bryter Toalett Overetasjen På
  trigger:
    platform: event
    event_type: zwave.scene_activated
    event_data:
      entity_id: zwave.bryter_toalett_overetasje
      scene_id: 10
  action:
    - service: light.turn_on
      entity_id: light.dimmer_toalett_overetasje_level

- alias: Bryter Toalett Overetasjen av
  trigger:
    platform: event
    event_type: zwave.scene_activated
    event_data:
      entity_id: zwave.bryter_toalett_overetasje
      scene_id: 30
  action:
    - service: light.turn_off
      entity_id: light.dimmer_toalett_overetasje_level

- alias: Lysere på Toalettet +10%
  trigger:
    - platform: event
      event_type: zwave.scene_activated
      event_data:
        entity_id: zwave.bryter_toalett_overetasje
        scene_id: 20
  action:
    - service: light.turn_on
      entity_id: light.dimmer_toalett_overetasje_level
      data_template:
        brightness: '{{ states.light.dimmer_toalett_overetasje_level.attributes.brightness|int + 31 }}'
- alias: Lysere på Toalettet +20%
  trigger:
    - platform: event
      event_type: zwave.scene_activated
      event_data:
        entity_id: zwave.bryter_toalett_overetasje
        scene_id: 23
  action:
    - service: light.turn_on
      entity_id: light.dimmer_toalett_overetasje_level
      data_template:
        brightness: '{{ states.light.dimmer_toalett_overetasje_level.attributes.brightness|int + 62 }}'
- alias: Mørkere på Toalettet -10%
  trigger:
    - platform: event
      event_type: zwave.scene_activated
      event_data:
        entity_id: zwave.bryter_toalett_overetasje
        scene_id: 40
  action:
    - service: light.turn_on
      entity_id: light.dimmer_toalett_overetasje_level
      data_template:
        brightness: '{{ states.light.dimmer_toalett_overetasje_level.attributes.brightness|int - 31 }}'
- alias: Mørkere på Toalettet -20%
  trigger:
    - platform: event
      event_type: zwave.scene_activated
      event_data:
        entity_id: zwave.bryter_toalett_overetasje
        scene_id: 43
  action:
    - service: light.turn_on
      entity_id: light.dimmer_toalett_overetasje_level
      data_template:
        brightness: '{{ states.light.dimmer_toalett_overetasje_level.attributes.brightness|int - 62 }}'

Next step would be to define a minumum and maximum setting that + and - would stop at. I think that about 32 is basically minimum for practical reasons, and somewhere around 200 is the maximum. Anything above that does not show visible change. At least this simple setup works rock solid for now.

1 Like

Awesome!! That worked perfectly!! Thanks for the info :slight_smile:

Can someone tell me what I have done wrong? My remote want respond to det switch.

Please don’t post your code as images, post your code as text - as explained here.

1 Like

I have a easier solution with node-red if anyone is interested.

Yes please @fernmac , can you share your solution ???

well, you just have to install mios package and follow this:

[{"id":"d954a9ba.ffa08","type":"tab","label":"Botões do Vera","disabled":false,"info":""},{"id":"c4f553ad.34f7a","type":"mios-in","z":"d954a9ba.ffa08","name":"Octan Nodon Input","server":"d061eba0.f8dac8","item":"Sala:Octan Remote","exact":false,"x":110,"y":480,"wires":[["ac4b86f9.2b99c","d6496281.1f7d8"]]},{"id":"966bb180.0cc72","type":"api-call-service","z":"d954a9ba.ffa08","name":"Ligar televisão","server":"9d094a0b.dff7f8","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.ficha_da_sala_23","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":560,"y":440,"wires":[[]]},{"id":"ac4b86f9.2b99c","type":"switch","z":"d954a9ba.ffa08","name":"","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"1","vt":"num"},{"t":"eq","v":"2","vt":"num"},{"t":"eq","v":"3","vt":"str"},{"t":"eq","v":"5","vt":"str"},{"t":"eq","v":"6","vt":"str"},{"t":"eq","v":"7","vt":"str"}],"checkall":"true","repair":false,"outputs":6,"x":330,"y":480,"wires":[["d67f7c66.08e9e8"],["966bb180.0cc72"],["506ef9d7.567548"],["6d846ca6.aa6adc"],["dad14698.fcf308"],["878002fa.82746"]]},{"id":"d6496281.1f7d8","type":"debug","z":"d954a9ba.ffa08","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":370,"y":660,"wires":[]},{"id":"d67f7c66.08e9e8","type":"api-call-service","z":"d954a9ba.ffa08","name":"Ligar candeeiro sala","server":"9d094a0b.dff7f8","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.candeeiro_sala","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":580,"y":400,"wires":[[]]},{"id":"506ef9d7.567548","type":"api-call-service","z":"d954a9ba.ffa08","name":"Abrir estores sala","server":"9d094a0b.dff7f8","version":1,"debugenabled":false,"service_domain":"cover","service":"open_cover","entityId":"cover.estores_sala_24","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":570,"y":480,"wires":[[]]},{"id":"6d846ca6.aa6adc","type":"api-call-service","z":"d954a9ba.ffa08","name":"Desligar candeeiro sala","server":"9d094a0b.dff7f8","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_off","entityId":"switch.candeeiro_sala","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":590,"y":520,"wires":[[]]},{"id":"dad14698.fcf308","type":"api-call-service","z":"d954a9ba.ffa08","name":"Desligar televisão","server":"9d094a0b.dff7f8","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_off","entityId":"switch.ficha_da_sala_23","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":570,"y":560,"wires":[[]]},{"id":"878002fa.82746","type":"api-call-service","z":"d954a9ba.ffa08","name":"Fechar estores sala","server":"9d094a0b.dff7f8","version":1,"debugenabled":false,"service_domain":"cover","service":"close_cover","entityId":"cover.estores_sala_24","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":570,"y":600,"wires":[[]]},{"id":"8987ee8e.7bff7","type":"inject","z":"d954a9ba.ffa08","name":"","topic":"","payload":"2","payloadType":"num","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":130,"y":400,"wires":[["ac4b86f9.2b99c"]]},{"id":"d061eba0.f8dac8","type":"mios-server","z":"","name":"Vera","host":"192.168.1.64","port":"3480"},{"id":"9d094a0b.dff7f8","type":"server","z":"","name":"Home Assistant"}]

I’m using the QT OpenZWave beta + Mosquitto add-ons, but they don’t seem to create entities that will work in these automations. For the entities I get:

sensor.crc_3_6_0x_soft_remote_basic
sensor.crc_3_6_0x_soft_remote_basic_duration
sensor.crc_3_6_0x_soft_remote_basic_target
sensor.crc_3_6_0x_soft_remote_battery_level

I realise that the battery level sensor is not relevant for this automation, but none of the others will work either. I’m seeing the scene_id in the OpenZWave log (10, 20, 30, 40 for the buttons 1, 2, 3, 4 respectively), but it doesn’t seem to be associated with any of the known entities.

Does anyone have any idea on what I’m doing wrong? Thanks.

You need to switch your node configuration from Central Scene to Scene Activation :

I already did change to Scene Activation - no difference.

When you do this, It do not create any additional entities but trigger ozw.scene_activated events.

OK, thanks, I’ll keep trying this. I’m new to HA (been using Domoticz for years), and still finding (groping) my way around…

I am seeing the scene_id events in the ozw log, but not clear how to connect these up with scenes in HA…

I’m using NodeRed to manage my automation but if you use HA automation it must look something like this (based from exemple seen before) :

- alias: Bryter Toalett Overetasjen På
  trigger:
    platform: event
    event_type: ozw.scene_activated
    event_data:
      entity_id: zwave.bryter_toalett_overetasje
      scene_id: 10
  action:
    - service: light.turn_on
      entity_id: light.dimmer_toalett_overetasje_level

Well, I tried something like that:

alias: Button 1 pressed
description: ''
trigger:
  - platform: event
    event_type: zwave.scene_activated
    event_data:
      entity_id: sensor.crc_3_6_0x_soft_remote_battery_level
      scene_id: 10
condition: []
action:
  - type: turn_on
    device_id: fffa7d1113c111eba1553948e862da35
    entity_id: switch.fgwpe_f_wall_plug_switch_2
    domain: switch
mode: single

Looking at that code, a couple of things now strike me.

  1. I used zwave.scene_activated as the event type - but is this for the older zwave integration? I’m using the OpenZwave (Beta) + MQTT - so is there another id namespace that I should be using?
  2. I tried all the entity ids for the remote, with no difference - nothing worked.

You’re right, your problem is the event_type.
In the “Old” Zwave integration, it trigger zwave.scene_activated but the “new” one trigger ozw.scene_activated.
I’m not sure about the event_data/entity_id … but battery entity seem strange.

Thanks again. I’ll play around with this further…

I think it must be something like this :

      event_data:
        node_id: 38
        scene_id: 2

It’s very odd…
Button 1 on the remote (node_id: 46) sends a scene_id of 10, while button 3 sends a scene_id of 30.

So I have two automations set up:

alias: Button 1 pressed
description: ''
trigger:
  - platform: event
    event_type: ozw.scene_activated
    event_data:
      node_id: 46
      scene_id: 1
condition: []
action:
  - type: turn_on
    device_id: fffa7d1113c111eba1553948e862da35
    entity_id: switch.fgwpe_f_wall_plug_switch_2
    domain: switch
mode: single
alias: Button 3 pressed
description: ''
trigger:
  - platform: event
    event_type: ozw.scene_activated
    event_data:
      node_id: 46
      scene_id: 30
condition: []
action:
  - type: turn_off
    device_id: fffa7d1113c111eba1553948e862da35
    entity_id: switch.fgwpe_f_wall_plug_switch_2
    domain: switch
mode: single

Now, I would have expected the Button 1 automation to have a scene_id of 10 (since that is what I see in the ozw log), yet it has to be set to 1 as shown for the button press to work.

And I’ve tried different values for the Button 3 automation, e.g. 2, 3, ‘30’, 30, but nothing seems to work when I press button 3…

So I’m stumped again…