IQTronic IQWS4000 Weather station integration

Hello,

I’ve bought a weather station from French website Planete-domotique and successfully integrated it to HA.

!! Attention !!
This device is PoE only, but it requires 12V passive PoE. So you need to buy a injector sold separately or find a way to get 12V for the device.
Forget about PoE, PoE+, PoE++… It will just break it.
Planete domotique won’t tell you about it and won’t take any responsability…

Anyway, after configuring its IP, I’ve put some username and password on the webpage (under Settings > User settings).
The page http://YourIPAddress/status.xml returns pretty much all you need from a weather station:
image

I then just create the rest sensor to get the info from it and some template sensors to format values properly:

- platform: rest
  authentication: basic
  username: !secret iqws4000_username
  password: !secret iqws4000_password
  name: "IQWS 4000"
  resource: !secret iqws4000_url
  scan_interval: 30
  timeout: 25
  json_attributes_path: "$.status"
  value_template: "OK"
  json_attributes:
    - "windspeed"
    - "winddir"
    - "wdird"
    - "windgust"
    - "pressure"
    - "systemp"
    - "temperature"
    - "baraltitude"
    - "windchill"
    - "relhumidity"
    - "abshumidity"
    - "dewpoint"
    - "spower"
    - "uf"
    - "stime"
    - "sdist"
    - "senr"
    - "lpd"
    
- platform: template
  sensors:
    iqws_4000_wind_speed:
      friendly_name: "IQWS 4000 - Average wind speed"
      icon_template: mdi:windsock
      unit_of_measurement: "m/s"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["windspeed"] is defined %}
           {{ states.sensor.iqws_4000.attributes["windspeed"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_wind_direction:
      friendly_name: "IQWS 4000 - Wind direction"
      icon_template: mdi:sign-direction
      unit_of_measurement: "°"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["wdird"] is defined %}
           {{ states.sensor.iqws_4000.attributes["wdird"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_wind_gust:
      friendly_name: "IQWS 4000 - Wind gust"
      icon_template: mdi:weather-dust
      unit_of_measurement: "m/s"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["windgust"] is defined %}
           {{ states.sensor.iqws_4000.attributes["windgust"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_pressure:
      friendly_name: "IQWS 4000 - Absolute pressure"
      icon_template: mdi:weather-rainy
      unit_of_measurement: "hPa"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["pressure"] is defined %}
           {{ states.sensor.iqws_4000.attributes["pressure"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_temperature:
      friendly_name: "IQWS 4000 - Outside temperature"
      unit_of_measurement: "°C"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["temperature"] is defined %}
           {{ states.sensor.iqws_4000.attributes["temperature"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_baraltitude:
      friendly_name: "IQWS 4000 - Barometric altitude"
      icon_template: mdi:terrain
      unit_of_measurement: "m"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["baraltitude"] is defined %}
           {{ states.sensor.iqws_4000.attributes["baraltitude"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_windchill:
      friendly_name: "IQWS 4000 - Wind chill"
      icon_template: mdi:sun-thermometer-outline
      unit_of_measurement: "°C"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["windchill"] is defined %}
           {{ states.sensor.iqws_4000.attributes["windchill"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_relhumidity:
      friendly_name: "IQWS 4000 - Relative humidity"
      icon_template: mdi:cloud-percent
      unit_of_measurement: "%"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["relhumidity"] is defined %}
           {{ states.sensor.iqws_4000.attributes["relhumidity"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_abshumidity:
      friendly_name: "IQWS 4000 - Absolute humidity"
      icon_template: mdi:cloud-percent
      unit_of_measurement: "%"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["abshumidity"] is defined %}
           {{ states.sensor.iqws_4000.attributes["abshumidity"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_dewpoint:
      friendly_name: "IQWS 4000 - Dew point"
      icon_template: mdi:thermometer-water
      unit_of_measurement: "°C"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["dewpoint"] is defined %}
           {{ states.sensor.iqws_4000.attributes["dewpoint"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_spower:
      friendly_name: "IQWS 4000 - Sunlight intensity"
      icon_template: mdi:white-balance-sunny
      unit_of_measurement: "W/m²"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["spower"] is defined %}
           {{ states.sensor.iqws_4000.attributes["spower"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_stime:
      friendly_name: "IQWS 4000 - Storm last lightning strike time"
      icon_template: mdi:flash-alert
      unit_of_measurement: "date"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["stime"] is defined %}
           {{ states.sensor.iqws_4000.attributes["stime"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_sdist:
      friendly_name: "IQWS 4000 - Storm last lightning strike distance"
      icon_template: mdi:flash-alert
      unit_of_measurement: "m"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["sdist"] is defined %}
           {{ states.sensor.iqws_4000.attributes["sdist"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_senr:
      friendly_name: "IQWS 4000 - Storm last lightning strike energy"
      icon_template: mdi:flash-alert
      unit_of_measurement: "W"
      value_template: >
         {% if states.sensor.iqws_4000.attributes["senr"] is defined %}
           {{ states.sensor.iqws_4000.attributes["senr"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_uf:
      friendly_name: "IQWS 4000 - UV factor"
      icon_template: mdi:sun-wireless
      value_template: >
         {% if states.sensor.iqws_4000.attributes["uf"] is defined %}
           {{ states.sensor.iqws_4000.attributes["uf"] }}
         {% else %}
           0
         {% endif %}

    iqws_4000_lpd:
      friendly_name: "IQWS 4000 - Storm lightnings per day"
      icon_template: mdi:flash-alert
      value_template: >
         {% if states.sensor.iqws_4000.attributes["lpd"] is defined %}
           {{ states.sensor.iqws_4000.attributes["lpd"] }}
         {% else %}
           0
         {% endif %}

    

This gives you the following sensors:

Now, I just need some time to mount it outside :-).
Hope this post is gonna be useful to someone…

1 Like