mirror of
https://github.com/openhab/openhab-addons.git
synced 2025-01-11 07:32:11 +01:00
b82d5f8063
Signed-off-by: Laurent Garnier <lg.hc@free.fr>
840 lines
65 KiB
Markdown
840 lines
65 KiB
Markdown
# Netatmo Binding
|
|
|
|
The Netatmo binding integrates the following Netatmo products:
|
|
|
|
- *Personal Weather Station*. Reports temperature, humidity, air pressure, carbon dioxide concentration in the air, as well as the ambient noise level.
|
|
- *Thermostat*. Reports ambient temperature, allow to check target temperature, consult and change furnace heating status.
|
|
- *Indoor Camera / Welcome*. Reports last event and persons at home, consult picture and video from event/camera.
|
|
- *Outdoor Camera / Presence*. Reports last event, consult picture and video from event/camera.
|
|
|
|
See http://www.netatmo.com/ for details on their product.
|
|
|
|
Please note, recent Netatmo thermostats are not supported because they require the Energy API which is not yet implemented in the binding.
|
|
Only older Netatmo thermostats compatible with the Thermostat API are supported.
|
|
For the same reason, Netatmo valves are also not supported.
|
|
|
|
|
|
## Binding Configuration
|
|
|
|
The binding has the following configuration options:
|
|
|
|
| Parameter | Name | Description |
|
|
|---------------------|----------------------|-----------------------------------|
|
|
| backgroundDiscovery | Background Discovery | If set to true, the device and its associated modules are updated in the discovery inbox at each API call run to refresh device data. Default is false. |
|
|
|
|
Before setting up your 'Things', you will have to grant openHAB to access Netatmo API.
|
|
Here is the procedure:
|
|
|
|
### 1. Application Creation
|
|
|
|
Create an application at https://dev.netatmo.com/dev/createapp
|
|
|
|
The variables you will need to get to setup the binding are:
|
|
|
|
* `<CLIENT_ID>` Your client ID taken from your App at https://dev.netatmo.com/dev/listapps
|
|
* `<CLIENT_SECRET>` A token provided along with the `<CLIENT_ID>`.
|
|
* `<USERNAME>` The username you use to connect to the Netatmo API (usually your mail address).
|
|
* `<PASSWORD>` The password attached to the above username.
|
|
|
|
|
|
### 2. Bridge and Things Configuration
|
|
|
|
Once you will get needed informations from the Netatmo API, you will be able to configure bridge and things.
|
|
|
|
E.g.
|
|
|
|
```
|
|
Bridge netatmo:netatmoapi:home [ clientId="<CLIENT_ID>", clientSecret="<CLIENT_SECRET>", username = "<USERNAME>", password = "<PASSWORD>", readStation=true|false, readHealthyHomeCoach=true|false, readThermostat=true|false, readWelcome=true|false, readPresence=true|false] {
|
|
Thing NAMain inside [ id="aa:aa:aa:aa:aa:aa" ]
|
|
Thing NAModule1 outside [ id="yy:yy:yy:yy:yy:yy", parentId="aa:aa:aa:aa:aa:aa" ]
|
|
Thing NHC homecoach [ id="cc:cc:cc:cc:cc:cc", [refreshInterval=60000] ]
|
|
Thing NAPlug plugtherm [ id="bb:bb:bb:bb:bb:bb", [refreshInterval=60000] ]
|
|
Thing NATherm1 thermostat [ id="xx:xx:xx:xx:xx:xx", parentId="bb:bb:bb:bb:bb:bb" ]
|
|
Thing NAWelcomeHome home [ id="58yyacaaexxxebca99x999x", refreshInterval=600000 ]
|
|
Thing NACamera camera [ id="cc:cc:cc:cc:cc:cc", parentId="58yyacaaexxxebca99x999x" ]
|
|
Thing NOC presenceOutdoorCamera [ id="dd:dd:dd:dd:dd:dd", parentId="58yyacaaexxxebca99x999x" ]
|
|
Thing NAWelcomePerson sysadmin [ id="aaaaaaaa-bbbb-cccc-eeee-zzzzzzzzzzzz", parentId="58yyacaaexxxebca99x999x" ]
|
|
...
|
|
}
|
|
```
|
|
|
|
|
|
### Webhook
|
|
|
|
For Welcome or Presence Camera, Netatmo servers can send push notifications to the Netatmo Binding by using a callback URL.
|
|
The webhook URL is setup at bridge level using "Webhook Address" parameter.
|
|
You will define here public way to access your openHAB server:
|
|
|
|
```
|
|
http(s)://xx.yy.zz.ww:8080
|
|
```
|
|
|
|
Your Netatmo App will be configured automatically by the bridge to the endpoint :
|
|
|
|
```
|
|
http(s)://xx.yy.zz.ww:8080/netatmo/%id%/camera
|
|
```
|
|
|
|
where %id% is the id of your camera thing.
|
|
|
|
Please be aware of Netatmo own limits regarding webhook usage that lead to a 24h ban-time when webhook does not answer 5 times.
|
|
|
|
|
|
### Configure Things
|
|
|
|
The IDs for the modules can be extracted from the developer documentation on the netatmo site.
|
|
First login with your user.
|
|
Then some examples of the documentation contain the **real results** of your weather station.
|
|
In order to try the examples, you need the `device_id` of your Netatmo station.
|
|
You can find it in the configuration menu of the app (android or apple).
|
|
Get the IDs of your devices (indoor, outdoor, rain gauge)
|
|
[here](https://dev.netatmo.com/resources/technical/reference/weather/getstationsdata).
|
|
|
|
`main_device` is the ID of the "main device", the indoor sensor.
|
|
This is equal to the MAC address of the Netatmo.
|
|
|
|
The other modules you can recognize by "module_name" and then note the "\_id" which you need later.
|
|
|
|
**Another way to get the IDs is to calculate them:**
|
|
|
|
You have to calculate the ID for the outside module as follows: (it cannot be read from the app)
|
|
|
|
- if the first serial character is "h": start with "02"
|
|
- if the first serial character is "i": start with "03"
|
|
|
|
append ":00:00:",
|
|
|
|
split the rest into three parts of two characters and append with a colon as delimiter.
|
|
|
|
For example your serial number "h00bcdc" should end up as "02:00:00:00:bc:dc".
|
|
|
|
|
|
## Discovery
|
|
|
|
If you did not manually create things in the *.things file, the Netatmo Binding is able to discover automatically all depending modules and devices from Netatmo website.
|
|
|
|
|
|
## Channels
|
|
|
|
|
|
### Weather Station Main Indoor Device
|
|
|
|
Weather station does not need any refreshInterval setting.
|
|
Based on a standard update period of 10mn by Netatmo systems - it will auto adapt to stick closest as possible to last data availability.
|
|
|
|
Example item for the **indoor module**:
|
|
|
|
```
|
|
Number Netatmo_Indoor_CO2 "CO2" <carbondioxide> { channel = "netatmo:NAMain:home:inside:Co2" }
|
|
```
|
|
|
|
**Supported channels for the main indoor module:**
|
|
|
|
| Channel ID | Item Type | Description |
|
|
|---------------------|----------------------|----------------------------------------------------------|
|
|
| Co2 | Number:Dimensionless | Air quality |
|
|
| MinCo2 | Number:Dimensionless | Minimum CO2 on current day |
|
|
| MinCo2ThisWeek | Number:Dimensionless | Minimum CO2 this week |
|
|
| MinCo2ThisMonth | Number:Dimensionless | Minimum CO2 this month |
|
|
| MaxCo2 | Number:Dimensionless | Maximum CO2 on current day |
|
|
| MaxCo2ThisWeek | Number:Dimensionless | Maximum CO2 this week |
|
|
| MaxCo2ThisMonth | Number:Dimensionless | Maximum CO2 this month |
|
|
| DateMinCo2 | DateTime | Date when minimum CO2 was reached on current day |
|
|
| DateMinCo2ThisWeek | DateTime | Date when minimum CO2 was reached this week |
|
|
| DateMinCo2ThisMonth | DateTime | Date when minimum CO2 was reached this month |
|
|
| DateMaxCo2 | DateTime | Date when maximum CO2 was reached on current day |
|
|
| DateMaxCo2ThisWeek | DateTime | Date when maximum CO2 was reached this week |
|
|
| DateMaxCo2ThisMonth | DateTime | Date when maximum CO2 was reached this month |
|
|
| Temperature | Number:Temperature | Current temperature |
|
|
| TempTrend | String | Temperature evolution trend (up, down, stable) |
|
|
| Noise | Number:Dimensionless | Current noise level |
|
|
| MinNoise | Number:Dimensionless | Minimum noise on current day |
|
|
| MinNoiseThisWeek | Number:Dimensionless | Minimum noise this week |
|
|
| MinNoiseThisMonth | Number:Dimensionless | Minimum noise this month |
|
|
| MaxNoise | Number:Dimensionless | Maximum noise on current day |
|
|
| MaxNoiseThisWeek | Number:Dimensionless | Maximum noise this week |
|
|
| MaxNoiseThisMonth | Number:Dimensionless | Maximum noise this month |
|
|
| DateMinNoise | DateTime | Date when minimum noise was reached on current day |
|
|
| DateMinNoiseThisWeek| DateTime | Date when minimum noise was reached this week |
|
|
| DateMinNoiseThisMonth| DateTime | Date when minimum noise was reached this month |
|
|
| DateMaxNoise | DateTime | Date when maximum noise was reached on current day |
|
|
| DateMaxNoiseThisWeek| DateTime | Date when maximum noise was reached this week |
|
|
| DateMaxNoiseThisMonth| DateTime | Date when maximum noise was reached this month |
|
|
| Pressure | Number:Pressure | Current pressure |
|
|
| MinPressure | Number:Pressure | Minimum pressure on current day |
|
|
| MinPressureThisWeek | Number:Pressure | Minimum pressure this week |
|
|
| MinPressureThisMonth| Number:Pressure | Minimum pressure this month |
|
|
| MaxPressure | Number:Pressure | Maximum pressure on current day |
|
|
| MaxPressureThisWeek | Number:Pressure | Maximum pressure this week |
|
|
| MaxPressureThisMonth| Number:Pressure | Maximum pressure this month |
|
|
| DateMinPressure | DateTime | Date when minimum pressure was reached on current day |
|
|
| DateMinPressureThisWeek | DateTime | Date when minimum pressure was reached this week |
|
|
| DateMinPressureThisMonth| DateTime | Date when minimum pressure was reached this month |
|
|
| DateMaxPressure | DateTime | Date when maximum pressure was reached on current day |
|
|
| DateMaxPressureThisWeek | DateTime | Date when maximum pressure was reached this week |
|
|
| DateMaxPressureThisMonth| DateTime | Date when maximum pressure was reached this month |
|
|
| PressTrend | String | Pressure evolution trend for last 12h (up, down, stable) |
|
|
| AbsolutePressure | Number:Pressure | Absolute pressure |
|
|
| Humidity | Number:Dimensionless | Current humidity |
|
|
| MinHumidity | Number:Dimensionless | Minimum humidity on current day |
|
|
| MinHumidityThisWeek | Number:Dimensionless | Minimum humidity this week |
|
|
| MinHumidityThisMonth| Number:Dimensionless | Minimum humidity this month |
|
|
| MaxHumidity | Number:Dimensionless | Maximum humidity on current day |
|
|
| MaxHumidityThisWeek | Number:Dimensionless | Maximum humidity this week |
|
|
| MaxHumidityThisMonth| Number:Dimensionless | Maximum humidity this month |
|
|
| DateMinHumidity | DateTime | Date when minimum humidity was reached on current day |
|
|
| DateMinHumidityThisWeek | DateTime | Date when minimum humidity was reached this week |
|
|
| DateMinHumidityThisMonth| DateTime | Date when minimum humidity was reached this month |
|
|
| DateMaxHumidity | DateTime | Date when maximum humidity was reached on current day |
|
|
| DateMaxHumidityThisWeek | DateTime | Date when maximum humidity was reached this week |
|
|
| DateMaxHumidityThisMonth| DateTime | Date when maximum humidity was reached this month |
|
|
| Humidex | Number | Computed Humidex index |
|
|
| HeatIndex | Number:Temperature | Computed Heat Index |
|
|
| Dewpoint | Number:Temperature | Computed dewpoint temperature |
|
|
| DewpointDepression | Number:Temperature | Computed dewpoint depression |
|
|
| MinTemp | Number:Temperature | Minimum temperature on current day |
|
|
| MinTempThisWeek | Number:Temperature | Minimum temperature this week |
|
|
| MinTempThisMonth | Number:Temperature | Minimum temperature this month |
|
|
| MaxTemp | Number:Temperature | Maximum temperature on current day |
|
|
| MaxTempThisWeek | Number:Temperature | Maximum temperature this week |
|
|
| MaxTempThisMonth | Number:Temperature | Maximum temperature this month |
|
|
| DateMinTemp | DateTime | Date when minimum temperature was reached on current day |
|
|
| DateMinTempThisWeek | DateTime | Date when minimum temperature was reached this week |
|
|
| DateMinTempThisMonth| DateTime | Date when minimum temperature was reached this month |
|
|
| DateMaxTemp | DateTime | Date when maximum temperature was reached on current day |
|
|
| DateMaxTempThisWeek | DateTime | Date when maximum temperature was reached this week |
|
|
| DateMaxTempThisMonth| DateTime | Date when maximum temperature was reached this month |
|
|
| DateMinTemp | DateTime | Date when minimum temperature was reached on current day |
|
|
| DateMaxTemp | DateTime | Date when maximum temperature was reached on current day |
|
|
| TimeStamp | DateTime | Timestamp when data was measured |
|
|
| LastStatusStore | DateTime | Last status store |
|
|
| WifiStatus | Number | Signal strength (0 for no signal, 1 for weak, 2 for average, 3 for good or 4 for excellent) |
|
|
| Location | Location | Location of the device |
|
|
|
|
All these channels are read only.
|
|
|
|
|
|
### Weather Station Outdoor module
|
|
|
|
Example item for the **outdoor module**
|
|
|
|
```
|
|
Number Netatmo_Outdoor_Temperature "Temperature" { channel = "netatmo:NAModule1:home:outside:Temperature" }
|
|
```
|
|
|
|
**Supported channels for the outdoor module:**
|
|
|
|
| Channel ID | Item Type | Description |
|
|
|---------------------|----------------------|----------------------------------------------------------|
|
|
| Temperature | Number:Temperature | Current temperature |
|
|
| TempTrend | String | Temperature evolution trend (up, down, stable) |
|
|
| Humidity | Number:Dimensionless | Current humidity |
|
|
| MinHumidity | Number:Dimensionless | Minimum humidity on current day |
|
|
| MinHumidityThisWeek | Number:Dimensionless | Minimum humidity this week |
|
|
| MinHumidityThisMonth| Number:Dimensionless | Minimum humidity this month |
|
|
| MaxHumidity | Number:Dimensionless | Maximum humidity on current day |
|
|
| MaxHumidityThisWeek | Number:Dimensionless | Maximum humidity this week |
|
|
| MaxHumidityThisMonth| Number:Dimensionless | Maximum humidity this month |
|
|
| DateMinHumidity | DateTime | Date when minimum humidity was reached on current day |
|
|
| DateMinHumidityThisWeek | DateTime | Date when minimum humidity was reached this week |
|
|
| DateMinHumidityThisMonth| DateTime | Date when minimum humidity was reached this month |
|
|
| DateMaxHumidity | DateTime | Date when maximum humidity was reached on current day |
|
|
| DateMaxHumidityThisWeek | DateTime | Date when maximum humidity was reached this week |
|
|
| DateMaxHumidityThisMonth| DateTime | Date when maximum humidity was reached this month |
|
|
| Humidex | Number | Computed Humidex index |
|
|
| HeatIndex | Number:Temperature | Computed Heat Index |
|
|
| Dewpoint | Number:Temperature | Computed dewpoint temperature |
|
|
| DewpointDepression | Number:Temperature | Computed dewpoint depression |
|
|
| MinTemp | Number:Temperature | Minimum temperature on current day |
|
|
| MinTempThisWeek | Number:Temperature | Minimum temperature this week |
|
|
| MinTempThisMonth | Number:Temperature | Minimum temperature this month |
|
|
| MaxTemp | Number:Temperature | Maximum temperature on current day |
|
|
| MaxTempThisWeek | Number:Temperature | Maximum temperature this week |
|
|
| MaxTempThisMonth | Number:Temperature | Maximum temperature this month |
|
|
| DateMinTemp | DateTime | Date when minimum temperature was reached on current day |
|
|
| DateMinTempThisWeek | DateTime | Date when minimum temperature was reached this week |
|
|
| DateMinTempThisMonth| DateTime | Date when minimum temperature was reached this month |
|
|
| DateMaxTemp | DateTime | Date when maximum temperature was reached on current day |
|
|
| DateMaxTempThisWeek | DateTime | Date when maximum temperature was reached this week |
|
|
| DateMaxTempThisMonth| DateTime | Date when maximum temperature was reached this month |
|
|
| TimeStamp | DateTime | Timestamp when data was measured |
|
|
| LastMessage | DateTime | Last message emitted by the module |
|
|
| LowBattery | Switch | Low battery |
|
|
| BatteryVP | Number | Battery level |
|
|
| RfStatus | Number | Signal strength (0 for no signal, 1 for weak, 2 for average, 3 for good or 4 for excellent) |
|
|
|
|
All these channels are read only.
|
|
|
|
|
|
### Weather Station Additional Indoor module
|
|
|
|
Example item for the **indoor module**
|
|
|
|
```
|
|
Number Netatmo_Indoor2_Temperature "Temperature" { channel = "netatmo:NAModule4:home:insidesupp:Temperature" }
|
|
```
|
|
|
|
**Supported channels for the additional indoor module:**
|
|
|
|
| Channel ID | Item Type | Description |
|
|
|---------------------|----------------------|----------------------------------------------------------|
|
|
| Co2 | Number:Dimensionless | Air quality |
|
|
| MinCo2 | Number:Dimensionless | Minimum CO2 on current day |
|
|
| MinCo2ThisWeek | Number:Dimensionless | Minimum CO2 this week |
|
|
| MinCo2ThisMonth | Number:Dimensionless | Minimum CO2 this month |
|
|
| MaxCo2 | Number:Dimensionless | Maximum CO2 on current day |
|
|
| MaxCo2ThisWeek | Number:Dimensionless | Maximum CO2 this week |
|
|
| MaxCo2ThisMonth | Number:Dimensionless | Maximum CO2 this month |
|
|
| DateMinCo2 | DateTime | Date when minimum CO2 was reached on current day |
|
|
| DateMinCo2ThisWeek | DateTime | Date when minimum CO2 was reached this week |
|
|
| DateMinCo2ThisMonth | DateTime | Date when minimum CO2 was reached this month |
|
|
| DateMaxCo2 | DateTime | Date when maximum CO2 was reached on current day |
|
|
| DateMaxCo2ThisWeek | DateTime | Date when maximum CO2 was reached this week |
|
|
| DateMaxCo2ThisMonth | DateTime | Date when maximum CO2 was reached this month |
|
|
| Temperature | Number:Temperature | Current temperature |
|
|
| TempTrend | String | Temperature evolution trend (up, down, stable) |
|
|
| Humidity | Number:Dimensionless | Current humidity |
|
|
| MinHumidity | Number:Dimensionless | Minimum humidity on current day |
|
|
| MinHumidityThisWeek | Number:Dimensionless | Minimum humidity this week |
|
|
| MinHumidityThisMonth| Number:Dimensionless | Minimum humidity this month |
|
|
| MaxHumidity | Number:Dimensionless | Maximum humidity on current day |
|
|
| MaxHumidityThisWeek | Number:Dimensionless | Maximum humidity this week |
|
|
| MaxHumidityThisMonth| Number:Dimensionless | Maximum humidity this month |
|
|
| DateMinHumidity | DateTime | Date when minimum humidity was reached on current day |
|
|
| DateMinHumidityThisWeek | DateTime | Date when minimum humidity was reached this week |
|
|
| DateMinHumidityThisMonth| DateTime | Date when minimum humidity was reached this month |
|
|
| DateMaxHumidity | DateTime | Date when maximum humidity was reached on current day |
|
|
| DateMaxHumidityThisWeek | DateTime | Date when maximum humidity was reached this week |
|
|
| DateMaxHumidityThisMonth| DateTime | Date when maximum humidity was reached this month |
|
|
| Humidex | Number | Computed Humidex index |
|
|
| HeatIndex | Number:Temperature | Computed Heat Index |
|
|
| Dewpoint | Number:Temperature | Computed dewpoint temperature |
|
|
| DewpointDepression | Number:Temperature | Computed dewpoint depression |
|
|
| MinTemp | Number:Temperature | Minimum temperature on current day |
|
|
| MinTempThisWeek | Number:Temperature | Minimum temperature this week |
|
|
| MinTempThisMonth | Number:Temperature | Minimum temperature this month |
|
|
| MaxTemp | Number:Temperature | Maximum temperature on current day |
|
|
| MaxTempThisWeek | Number:Temperature | Maximum temperature this week |
|
|
| MaxTempThisMonth | Number:Temperature | Maximum temperature this month |
|
|
| DateMinTemp | DateTime | Date when minimum temperature was reached on current day |
|
|
| DateMinTempThisWeek | DateTime | Date when minimum temperature was reached this week |
|
|
| DateMinTempThisMonth| DateTime | Date when minimum temperature was reached this month |
|
|
| DateMaxTemp | DateTime | Date when maximum temperature was reached on current day |
|
|
| DateMaxTempThisWeek | DateTime | Date when maximum temperature was reached this week |
|
|
| DateMaxTempThisMonth| DateTime | Date when maximum temperature was reached this month |
|
|
| TimeStamp | DateTime | Timestamp when data was measured |
|
|
| LastMessage | DateTime | Last message emitted by the module |
|
|
| LowBattery | Switch | Low battery |
|
|
| BatteryVP | Number | Battery level |
|
|
| RfStatus | Number | Signal strength (0 for no signal, 1 for weak, 2 for average, 3 for good or 4 for excellent) |
|
|
|
|
All these channels are read only.
|
|
|
|
|
|
### Rain Gauge
|
|
|
|
Example item for the **rain gauge**
|
|
|
|
```
|
|
Number Netatmo_Rain_Current "Rain [%.1f mm]" { channel = "netatmo:NAModule3:home:rain:Rain" }
|
|
```
|
|
|
|
**Supported channels for the rain guage:**
|
|
|
|
| Channel ID | Item Type | Description |
|
|
|---------------------|---------------|----------------------------------------------------------|
|
|
| Rain | Number:Length | Quantity of water |
|
|
| SumRain1 | Number:Length | Quantity of water on last hour |
|
|
| SumRain24 | Number:Length | Quantity of water on last day |
|
|
| SumRainThisWeek | Number:Length | Quantity of water this week |
|
|
| SumRainThisMonth | Number:Length | Quantity of water this month |
|
|
| TimeStamp | DateTime | Timestamp when data was measured |
|
|
| LastMessage | DateTime | Last message emitted by the module |
|
|
| LowBattery | Switch | Low battery |
|
|
| BatteryVP | Number | Battery level |
|
|
| RfStatus | Number | Signal strength (0 for no signal, 1 for weak, 2 for average, 3 for good or 4 for excellent) |
|
|
|
|
All these channels are read only.
|
|
|
|
|
|
### Weather Station Wind module
|
|
|
|
Example item for the **wind module**:
|
|
|
|
```
|
|
Number Netatmo_Wind_Strength "Wind Strength [%.0f KPH]" { channel = "netatmo:NAModule2:home:wind:WindStrength" }
|
|
```
|
|
|
|
**Supported channels for the wind module:**
|
|
|
|
| Channel ID | Item Type | Description |
|
|
|---------------------|--------------|----------------------------------------------------------|
|
|
| WindAngle | Number:Angle | Current 5 minutes average wind direction |
|
|
| WindStrength | Number:Speed | Current 5 minutes average wind speed |
|
|
| GustAngle | Number:Angle | Direction of the last 5 minutes highest gust wind |
|
|
| GustStrength | Number:Speed | Speed of the last 5 minutes highest gust wind |
|
|
| TimeStamp | DateTime | Timestamp when data was measured |
|
|
| LastMessage | DateTime | Last message emitted by the module |
|
|
| LowBattery | Switch | Low battery |
|
|
| BatteryVP | Number | Battery level |
|
|
| RfStatus | Number | Signal strength (0 for no signal, 1 for weak, 2 for average, 3 for good or 4 for excellent) |
|
|
| MaxWindStrength | Number:Speed | Maximum wind strength recorded |
|
|
| DateMaxWindStrength | DateTime | Timestamp when MaxWindStrength was recorded |
|
|
|
|
All these channels are read only.
|
|
|
|
|
|
### Healthy Home Coach Device
|
|
|
|
Example item for the **Healthy Home Coach**:
|
|
|
|
```
|
|
String Netatmo_LivingRoom_HomeCoach_HealthIndex "Climate" { channel = "netatmo:NHC:home:livingroom:HealthIndex" }
|
|
```
|
|
|
|
**Supported channels for the healthy home coach device:**
|
|
|
|
| Channel ID | Item Type | Description |
|
|
|---------------------|----------------------|----------------------------------------------------------|
|
|
| HealthIndex | String | Health index (healthy, fine, fair, poor, unhealthy) |
|
|
| Co2 | Number:Dimensionless | Air quality |
|
|
| Temperature | Number:Temperature | Current temperature |
|
|
| TempTrend | String | Temperature evolution trend (up, down, stable) |
|
|
| Noise | Number:Dimensionless | Current noise level |
|
|
| Pressure | Number:Pressure | Current pressure |
|
|
| PressTrend | String | Pressure evolution trend for last 12h (up, down, stable) |
|
|
| AbsolutePressure | Number:Pressure | Absolute pressure |
|
|
| Humidity | Number:Dimensionless | Current humidity |
|
|
| MinTemp | Number:Temperature | Minimum temperature on current day |
|
|
| MaxTemp | Number:Temperature | Maximum temperature on current day |
|
|
| DateMinTemp | DateTime | Date when minimum temperature was reached on current day |
|
|
| DateMaxTemp | DateTime | Date when maximum temperature was reached on current day |
|
|
| TimeStamp | DateTime | Timestamp when data was measured |
|
|
| LastStatusStore | DateTime | Last status store |
|
|
| WifiStatus | Number | Signal strength (0 for no signal, 1 for weak, 2 for average, 3 for good or 4 for excellent) |
|
|
| Location | Location | Location of the device |
|
|
|
|
All these channels are read only.
|
|
|
|
|
|
### Thermostat Relay Device
|
|
|
|
**Supported channels for the thermostat relay device:**
|
|
|
|
| Channel ID | Item Type | Description |
|
|
|---------------------|-----------|----------------------------------------------------------|
|
|
| ConnectedBoiler | Switch | Plug connected boiler |
|
|
| LastPlugSeen | DateTime | Last plug seen |
|
|
| LastBilan | DateTime | Month of the last available thermostat bilan |
|
|
| LastStatusStore | DateTime | Last status store |
|
|
| WifiStatus | Number | Signal strength (0 for no signal, 1 for weak, 2 for average, 3 for good or 4 for excellent) |
|
|
| Location | Location | Location of the device |
|
|
|
|
All these channels are read only.
|
|
|
|
|
|
### Thermostat Module
|
|
|
|
**Supported channels for the thermostat module:**
|
|
|
|
| Channel ID | Item Type | Description |
|
|
|---------------------|--------------------|------------------------------------------------------------|
|
|
| Temperature | Number:Temperature | Current temperature |
|
|
| Sp_Temperature | Number:Temperature | Thermostat temperature setpoint |
|
|
| SetpointMode | String | Chosen setpoint_mode (program, away, hg, manual, off, max) |
|
|
| Planning | String | Id of the currently active planning when mode = program |
|
|
| ThermRelayCmd | Switch | Indicates whether the furnace is heating or not |
|
|
| ThermOrientation | Number | Physical orientation of the thermostat module |
|
|
| TimeStamp | DateTime | Timestamp when data was measured |
|
|
| SetpointEndTime | DateTime | Thermostat goes back to schedule after that timestamp |
|
|
| LastMessage | DateTime | Last message emitted by the module |
|
|
| LowBattery | Switch | Low battery |
|
|
| BatteryVP | Number | Battery level |
|
|
| RfStatus | Number | Signal strength (0 for no signal, 1 for weak, 2 for average, 3 for good or 4 for excellent) |
|
|
|
|
All these channels except Sp_Temperature, SetpointMode and Planning are read only.
|
|
|
|
|
|
### Welcome Home
|
|
|
|
All these channels are read only.
|
|
|
|
**Supported channels for the Home thing:**
|
|
|
|
| Channel ID | Item Type | Description |
|
|
|--------------------------|-----------|----------------------------------------------------------|
|
|
| welcomeHomeCity | String | City of the home |
|
|
| welcomeHomeCountry | String | Country of the home |
|
|
| welcomeHomeTimezone | String | Timezone of the home |
|
|
| welcomeHomePersonCount | Number | Total number of Persons that are at home |
|
|
| welcomeHomeUnknownCount | Number | Count how many Unknown Persons are at home |
|
|
| welcomeEventType | String | Type of event |
|
|
| welcomeEventTime | DateTime | Time of occurrence of event |
|
|
| welcomeEventCameraId | String | Camera that detected the event |
|
|
| welcomeEventPersonId | String | Id of the person the event is about (if any) |
|
|
| welcomeEventSnapshot | Image | picture of the last event, if it applies |
|
|
| welcomeEventSnapshotURL | String | if the last event (depending upon event type) in the home lead a snapshot picture, the picture URL will be available here |
|
|
| welcomeEventVideoURL | String | if the last event (depending upon event type) in the home lead a snapshot picture, the corresponding video URL will be available here |
|
|
| welcomeEventVideoStatus | String | Status of the video (recording, deleted or available) |
|
|
| welcomeEventIsArrival | Switch | If person was considered "away" before being seen during this event |
|
|
| welcomeEventMessage | String | Message sent by Netatmo corresponding to given event |
|
|
| welcomeEventSubType | String | Sub-type of SD and Alim events |
|
|
|
|
**Supported trigger channels for the Home thing:**
|
|
|
|
| Channel Type ID | Options | Description |
|
|
|------------------|------------------------|-------------------------------------------------------|
|
|
| cameraEvent | | A camera event is triggered with a short delay but without requiring a webhook. The information of the event can get retrieved from the other "welcomeEvent" home thing channels |
|
|
| | HUMAN | Triggered when a human (or person) was detected |
|
|
| | ANIMAL | Triggered when an animal was detected |
|
|
| | MOVEMENT | Triggered when an unspecified movement was detected |
|
|
| | VEHICLE | Triggered when a vehicle was detected |
|
|
| welcomeHomeEvent | | A welcome home event is triggered directly via a configured webhook |
|
|
| | PERSON | Triggered when a concrete person was detected |
|
|
| | PERSON_AWAY | Triggered when a concrete person leaves |
|
|
| | MOVEMENT | Triggered when a movement was detected |
|
|
| | CONNECTION | Triggered when a camera connection gets created |
|
|
| | DISCONNECTION | Triggered when a camera connection got lost |
|
|
| | ON | Triggered when camera monitoring is switched on |
|
|
| | OFF | Triggered when camera monitoring is switched off |
|
|
| | BOOT | Triggered when a camera is booting |
|
|
| | SD | Triggered when a camera SD card status was changed |
|
|
| | ALIM | Triggered when a power supply status was changed |
|
|
| | NEW_MODULE | Triggered when a new module was discovered |
|
|
| | MODULE_CONNECT | Triggered when a module gets connected |
|
|
| | MODULE_DISCONNECT | Triggered when a module gets disconnected |
|
|
| | MODULE_LOW_BATTERY | Triggered when the battery of a module gets low |
|
|
| | MODULE_END_UPDATE | Triggered when a firmware update of a module is done |
|
|
| | TAG_BIG_MOVE | Triggered when a big movement of a tag was detected |
|
|
| | TAG_SMALL_MOVE | Triggered when a small movement of a tag was detected |
|
|
| | TAG_UNINSTALLED | Triggered when a tag gets uninstalled |
|
|
| | TAG_OPEN | Triggered when an open event of a tag was detected |
|
|
|
|
### Welcome and Presence Camera
|
|
|
|
Warnings:
|
|
|
|
- The URL of the live snapshot is a fixed URL so the value of the channel cameraLivePictureUrl / welcomeCameraLivePictureUrl will never be updated once first set by the binding. So to get a refreshed picture, you need to use the refresh parameter in your sitemap image element.
|
|
- Some features like the video surveillance are accessed via the local network, so it may be helpful to set a static IP address for the camera within your local network.
|
|
|
|
**Supported channels for the Welcome Camera thing:**
|
|
|
|
| Channel ID | Item Type | Read/Write | Description |
|
|
|-----------------------------|-----------|------------|--------------------------------------------------------------|
|
|
| welcomeCameraStatus | Switch | Read-write | State of the camera (video surveillance on/off) |
|
|
| welcomeCameraSdStatus | Switch | Read-only | State of the SD card |
|
|
| welcomeCameraAlimStatus | Switch | Read-only | State of the power connector |
|
|
| welcomeCameraIsLocal | Switch | Read-only | indicates whether the camera is on the same network than the openHAB Netatmo Binding |
|
|
| welcomeCameraLivePicture | Image | Read-only | Camera Live Snapshot |
|
|
| welcomeCameraLivePictureUrl | String | Read-only | Url of the live snapshot for this camera |
|
|
| welcomeCameraLiveStreamUrl | String | Read-only | Url of the live stream for this camera |
|
|
|
|
**Supported channels for the Presence Camera thing:**
|
|
|
|
Warnings:
|
|
|
|
- The floodlight auto-mode (cameraFloodlightAutoMode) isn't updated it is changed by another application. Therefore the binding handles its own state of the auto-mode. This has the advantage that the user can define its own floodlight switch off behaviour.
|
|
|
|
| Channel ID | Item Type | Read/Write | Description |
|
|
|-----------------------------|-----------|------------|--------------------------------------------------------------|
|
|
| cameraStatus | Switch | Read-write | State of the camera (video surveillance on/off) |
|
|
| cameraSdStatus | Switch | Read-only | State of the SD card |
|
|
| cameraAlimStatus | Switch | Read-only | State of the power connector |
|
|
| cameraIsLocal | Switch | Read-only | indicates whether the camera is on the same network than the openHAB Netatmo Binding |
|
|
| cameraLivePicture | Image | Read-only | Camera Live Snapshot |
|
|
| cameraLivePictureUrl | String | Read-only | Url of the live snapshot for this camera |
|
|
| cameraLiveStreamUrl | String | Read-only | Url of the live stream for this camera |
|
|
| cameraFloodlightAutoMode | Switch | Read-write | When set the floodlight gets switched to auto instead of off |
|
|
| cameraFloodlight | Switch | Read-write | Switch for the floodlight |
|
|
|
|
|
|
### Welcome Person
|
|
|
|
Netatmo API distinguishes two kinds of persons:
|
|
|
|
* Known persons : have been identified by the camera and you have defined a name for those.
|
|
* Unknown persons : identified by the camera, but no name defined.
|
|
|
|
Person things are automatically created in discovery process for all known persons.
|
|
|
|
**Supported channels for the Person thing:**
|
|
|
|
| Channel ID | Item Type | Description |
|
|
|-------------------------------|-----------|--------------------------------------------------------|
|
|
| welcomePersonLastSeen | DateTime | Time when this person was last seen |
|
|
| welcomePersonAtHome | Switch | Indicates if this person is known to be at home or not |
|
|
| welcomePersonAvatarUrl | String | URL for the avatar of this person |
|
|
| welcomePersonAvatar | Image | Avatar of this person |
|
|
| welcomePersonLastEventMessage | String | Last event message from this person |
|
|
| welcomePersonLastEventTime | DateTime | Last event message time for this person |
|
|
| welcomePersonLastEventUrl | String | URL for the picture of the last event for this person |
|
|
| welcomePersonLastEvent | Image | Picture of the last event for this person |
|
|
|
|
All these channels except welcomePersonAtHome are read only.
|
|
|
|
# Configuration Examples
|
|
|
|
|
|
## things/netatmo.things
|
|
|
|
```
|
|
// Bridge configuration:
|
|
Bridge netatmo:netatmoapi:home "Netatmo API" [ clientId="*********", clientSecret="**********", username = "mail@example.com", password = "******", readStation=true, readThermostat=false] {
|
|
// Thing configuration:
|
|
Thing NAMain inside "Netatmo Inside" [ id="aa:aa:aa:aa:aa:aa" ]
|
|
Thing NAModule1 outside "Netatmo Outside" [ id="bb:bb:bb:bb:bb:bb", parentId="aa:aa:aa:aa:aa:aa" ]
|
|
Thing NAModule3 rain "Netatmo Rain" [ id="cc:cc:cc:cc:cc:cc", parentId="aa:aa:aa:aa:aa:aa" ]
|
|
}
|
|
```
|
|
|
|
## items/netatmo.items
|
|
|
|
```
|
|
# Indoor Module
|
|
Number:Temperature Indoor_Temp "Temperature [%.1f %unit%]" <temperature> { channel = "netatmo:NAMain:home:inside:Temperature" }
|
|
Number:Temperature Indoor_Min_Temp "Min Temperature Today [%.1f %unit%]" <temperature> { channel = "netatmo:NAMain:home:inside:MinTemp" }
|
|
Number:Temperature Indoor_Min_Temp_This_Week "Min Temperature This Week [%.1f %unit%]" <temperature> { channel = "netatmo:NAMain:home:inside:MinTempThisWeek" }
|
|
Number:Temperature Indoor_Min_Temp_This_Month "Min Temperature This Month [%.1f %unit%]" <temperature> { channel = "netatmo:NAMain:home:inside:MinTempThisMonth" }
|
|
Number:Temperature Indoor_Max_Temp "Max Temperature Today [%.1f %unit%]" <temperature> { channel = "netatmo:NAMain:home:inside:MaxTemp" }
|
|
Number:Temperature Indoor_Max_Temp_This_Week "Max Temperature This Week [%.1f %unit%]" <temperature> { channel = "netatmo:NAMain:home:inside:MaxTempThisWeek" }
|
|
Number:Temperature Indoor_Max_Temp_This_Month "Max Temperature This Month [%.1f %unit%]" <temperature> { channel = "netatmo:NAMain:home:inside:MaxTempThisMonth" }
|
|
DateTime Indoor_Min_Temp_TS "Min Temperature Today [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinTemp" }
|
|
DateTime Indoor_Min_Temp_This_Week_TS "Min Temperature This Week [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinTempThisWeek" }
|
|
DateTime Indoor_Min_Temp_This_Month_TS "Min Temperature This Month [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinTempThisMonth" }
|
|
DateTime Indoor_Max_Temp_TS "Max Temperature Today [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxTemp" }
|
|
DateTime Indoor_Max_Temp_This_Week_TS "Max Temperature This Week [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxTempThisWeek" }
|
|
DateTime Indoor_Max_Temp_This_Month_TS "Max Temperature This Month [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxTempThisMonth" }
|
|
Number:Dimensionless Indoor_Humidity "Humidity [%d %unit%]" <humidity> { channel = "netatmo:NAMain:home:inside:Humidity" }
|
|
Number:Dimensionless Indoor_Min_Humidity "Min Humidity Today [%d %unit%]" <humidity> { channel = "netatmo:NAMain:home:inside:MinHumidity" }
|
|
Number:Dimensionless Indoor_Min_Humidity_This_Week "Min Humidity This Week [%d %unit%]" <humidity> { channel = "netatmo:NAMain:home:inside:MinHumidityThisWeek" }
|
|
Number:Dimensionless Indoor_Min_Humidity_This_Month "Min Humidity This Month [%d %unit%]" <humidity> { channel = "netatmo:NAMain:home:inside:MinHumidityThisMonth" }
|
|
Number:Dimensionless Indoor_Max_Humidity "Max Humidity Today [%d %unit%]" <humidity> { channel = "netatmo:NAMain:home:inside:MaxHumidity" }
|
|
Number:Dimensionless Indoor_Max_Humidity_This_Week "Max Humidity This Week [%d %unit%]" <humidity> { channel = "netatmo:NAMain:home:inside:MaxHumidityThisWeek" }
|
|
Number:Dimensionless Indoor_Max_Humidity_This_Month "Max Humidity This Month [%d %unit%]" <humidity> { channel = "netatmo:NAMain:home:inside:MaxHumidityThisMonth" }
|
|
DateTime Indoor_Min_Humidity_TS "Min Humidity Today [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinHumidity" }
|
|
DateTime Indoor_Min_Humidity_This_Week_TS "Min Humidity This Week [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinHumidityThisWeek" }
|
|
DateTime Indoor_Min_Humidity_This_Month_TS "Min Humidity This Month [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinHumidityThisMonth" }
|
|
DateTime Indoor_Max_Humidity_TS "Max Humidity Today [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxHumidity" }
|
|
DateTime Indoor_Max_Humidity_This_Week_TS "Max Humidity This Week [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxHumidityThisWeek" }
|
|
DateTime Indoor_Max_Humidity_This_Month_TS "Max Humidity This Month [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxHumidityThisMonth" }
|
|
Number Indoor_Humidex "Humidex [%.0f]" <temperature_hot> { channel = "netatmo:NAMain:home:inside:Humidex" }
|
|
Number:Temperature Indoor_HeatIndex "HeatIndex [%.1f %unit%]" <temperature_hot> { channel = "netatmo:NAMain:home:inside:HeatIndex" }
|
|
Number:Temperature Indoor_Dewpoint "Dewpoint [%.1f %unit%]" <temperature_cold> { channel = "netatmo:NAMain:home:inside:Dewpoint" }
|
|
Number:Temperature Indoor_DewpointDepression "DewpointDepression [%.1f %unit%]" <temperature_cold> { channel = "netatmo:NAMain:home:inside:DewpointDepression" }
|
|
Number:Dimensionless Indoor_Co2 "CO2 [%d %unit%]" <carbondioxide> { channel = "netatmo:NAMain:home:inside:Co2" }
|
|
Number:Dimensionless Indoor_Min_Co2 "Min CO2 Today [%.1f %unit%]" <carbondioxide> { channel = "netatmo:NAMain:home:inside:MinCo2" }
|
|
Number:Dimensionless Indoor_Min_Co2_This_Week "Min CO2 This Week [%.1f %unit%]" <carbondioxide> { channel = "netatmo:NAMain:home:inside:MinCo2ThisWeek" }
|
|
Number:Dimensionless Indoor_Min_Co2_This_Month "Min CO2 This Month [%.1f %unit%]" <carbondioxide> { channel = "netatmo:NAMain:home:inside:MinCo2ThisMonth" }
|
|
Number:Dimensionless Indoor_Max_Co2 "Max CO2 Today [%.1f %unit%]" <carbondioxide> { channel = "netatmo:NAMain:home:inside:MaxCo2" }
|
|
Number:Dimensionless Indoor_Max_Co2_This_Week "Max CO2 This Week [%.1f %unit%]" <carbondioxide> { channel = "netatmo:NAMain:home:inside:MaxCo2ThisWeek" }
|
|
Number:Dimensionless Indoor_Max_Co2_This_Month "Max CO2 This Month [%.1f %unit%]" <carbondioxide> { channel = "netatmo:NAMain:home:inside:MaxCo2ThisMonth" }
|
|
DateTime Indoor_Min_Co2_TS "Min CO2 Today [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinCo2" }
|
|
DateTime Indoor_Min_Co2_This_Week_TS "Min CO2 This Week [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinCo2ThisWeek" }
|
|
DateTime Indoor_Min_Co2_This_Month_TS "Min CO2 This Month [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinCo2ThisMonth" }
|
|
DateTime Indoor_Max_Co2_TS "Max CO2 Today [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxCo2" }
|
|
DateTime Indoor_Max_Co2_This_Week_TS "Max CO2 This Week [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxCo2ThisWeek" }
|
|
DateTime Indoor_Max_Co2_This_Month_TS "Max CO2 This Month [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxCo2ThisMonth" }
|
|
Number:Pressure Indoor_Pressure "Pressure [%.1f %unit%]" <pressure> { channel = "netatmo:NAMain:home:inside:Pressure" }
|
|
Number:Pressure Indoor_Min_Pressure "Min Pressure Today [%d %unit%]" <pressure> { channel = "netatmo:NAMain:home:inside:MinPressure" }
|
|
Number:Pressure Indoor_Min_Pressure_This_Week "Min Pressure This Week [%d %unit%]" <pressure> { channel = "netatmo:NAMain:home:inside:MinPressureThisWeek" }
|
|
Number:Pressure Indoor_Min_Pressure_This_Month "Min Pressure This Month [%d %unit%]" <pressure> { channel = "netatmo:NAMain:home:inside:MinPressureThisMonth" }
|
|
Number:Pressure Indoor_Max_Pressure "Max Pressure Today [%d %unit%]" <pressure> { channel = "netatmo:NAMain:home:inside:MaxPressure" }
|
|
Number:Pressure Indoor_Max_Pressure_This_Week "Max Pressure This Week [%d %unit%]" <pressure> { channel = "netatmo:NAMain:home:inside:MaxPressureThisWeek" }
|
|
Number:Pressure Indoor_Max_Pressure_This_Month "Max Pressure This Month [%d %unit%]" <pressure> { channel = "netatmo:NAMain:home:inside:MaxPressureThisMonth" }
|
|
DateTime Indoor_Min_Pressure_TS "Min Pressure Today [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinPressure" }
|
|
DateTime Indoor_Min_Pressure_This_Week_TS "Min Pressure This Week [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinPressureThisWeek" }
|
|
DateTime Indoor_Min_Pressure_This_Month_TS "Min Pressure This Month [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinPressureThisMonth" }
|
|
DateTime Indoor_Max_Pressure_TS "Max Pressure Today [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxPressure" }
|
|
DateTime Indoor_Max_Pressure_This_Week_TS "Max Pressure This Week [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxPressureThisWeek" }
|
|
DateTime Indoor_Max_Pressure_This_Month_TS "Max Pressure This Month [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxPressureThisMonth" }
|
|
Number:Pressure Indoor_AbsolutePressure "AbsolutePressure [%.1f %unit%]" <pressure> { channel = "netatmo:NAMain:home:inside:AbsolutePressure" }
|
|
Number:Dimensionless Indoor_Noise "Noise [%d %unit%]" <soundvolume> { channel = "netatmo:NAMain:home:inside:Noise" }
|
|
Number:Dimensionless Indoor_Min_Noise "Min Noise Today [%.1f %unit%]" <soundvolume> { channel = "netatmo:NAMain:home:inside:MinNoise" }
|
|
Number:Dimensionless Indoor_Min_Noise_This_Week "Min Noise This Week [%.1f %unit%]" <soundvolume> { channel = "netatmo:NAMain:home:inside:MinNoiseThisWeek" }
|
|
Number:Dimensionless Indoor_Min_Noise_This_Month "Min Noise This Month [%.1f %unit%]" <soundvolume> { channel = "netatmo:NAMain:home:inside:MinNoiseThisMonth" }
|
|
Number:Dimensionless Indoor_Max_Noise "Max Noise Today [%.1f %unit%]" <soundvolume> { channel = "netatmo:NAMain:home:inside:MaxNoise" }
|
|
Number:Dimensionless Indoor_Max_Noise_This_Week "Max Noise This Week [%.1f %unit%]" <soundvolume> { channel = "netatmo:NAMain:home:inside:MaxNoiseThisWeek" }
|
|
Number:Dimensionless Indoor_Max_Noise_This_Month "Max Noise This Month [%.1f %unit%]" <soundvolume> { channel = "netatmo:NAMain:home:inside:MaxNoiseThisMonth" }
|
|
DateTime Indoor_Min_Noise_TS "Min Noise Today [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinNoise" }
|
|
DateTime Indoor_Min_Noise_This_Week_TS "Min Noise This Week [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinNoiseThisWeek" }
|
|
DateTime Indoor_Min_Noise_This_Month_TS "Min Noise This Month [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMinNoiseThisMonth" }
|
|
DateTime Indoor_Max_Noise_TS "Max Noise Today [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxNoise" }
|
|
DateTime Indoor_Max_Noise_This_Week_TS "Max Noise This Week [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxNoiseThisWeek" }
|
|
DateTime Indoor_Max_Noise_This_Month_TS "Max Noise This Month [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:DateMaxNoiseThisMonth" }
|
|
Number Indoor_WifiStatus "WifiStatus [%s]" <signal> { channel = "netatmo:NAMain:home:inside:WifiStatus" }
|
|
DateTime Indoor_TimeStamp "TimeStamp [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAMain:home:inside:TimeStamp" }
|
|
Location Indoor_Location "Location" <movecontrol> { channel = "netatmo:NAMain:home:inside:Location" }
|
|
DateTime Indoor_LastStatusStore "LastStatusStore [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <text> { channel = "netatmo:NAMain:home:inside:LastStatusStore" }
|
|
|
|
# Outdoor Module
|
|
Number:Temperature Outdoor_Temperature "Temperature [%.1f %unit%]" <temperature> { channel = "netatmo:NAModule1:home:outside:Temperature" }
|
|
String Outdoor_TempTrend "TempTrend [%s]" <line> { channel = "netatmo:NAModule1:home:outside:TempTrend" }
|
|
Number:Dimensionless Outdoor_Humidity "Humidity [%d %unit%]" <humidity> { channel = "netatmo:NAModule1:home:outside:Humidity" }
|
|
Number Outdoor_Humidex "Humidex [%.0f]" <temperature_hot> { channel = "netatmo:NAModule1:home:outside:Humidex" }
|
|
Number:Temperature Outdoor_HeatIndex "HeatIndex [%.1f %unit%]" <temperature_hot> { channel = "netatmo:NAModule1:home:outside:HeatIndex" }
|
|
Number:Temperature Outdoor_Dewpoint "Dewpoint [%.1f %unit%]" <temperature_cold> { channel = "netatmo:NAModule1:home:outside:Dewpoint" }
|
|
Number:Temperature Outdoor_DewpointDepression "DewpointDepression [%.1f %unit%]" <temperature_cold> { channel = "netatmo:NAModule1:home:outside:DewpointDepression" }
|
|
Number Outdoor_RfStatus "RfStatus [%.0f / 5]" <signal> { channel = "netatmo:NAModule1:home:outside:RfStatus" }
|
|
Switch Outdoor_LowBattery "LowBattery [%s]" <siren> { channel = "netatmo:NAModule1:home:outside:LowBattery" }
|
|
Number Outdoor_BatteryVP "BatteryVP [%.0f %%]" <battery> { channel = "netatmo:NAModule1:home:outside:BatteryVP" }
|
|
DateTime Outdoor_TimeStamp "TimeStamp [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <calendar> { channel = "netatmo:NAModule1:home:outside:TimeStamp" }
|
|
DateTime Outdoor_LastMessage "LastMessage [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <text> { channel = "netatmo:NAModule1:home:outside:LastMessage" }
|
|
|
|
# Rain Module
|
|
Number:Length Rain_Hour "Rain Last Hour [%.02f %unit%]" <rain> {channel="netatmo:NAModule3:home:rain:SumRain1"}
|
|
Number:Length Rain_Today "Rain Today [%.02f %unit%]" <rain> {channel="netatmo:NAModule3:home:rain:SumRain24"}
|
|
Number:Length Rain_Week "Rain This Week [%.02f %unit%]" <rain> {channel="netatmo:NAModule3:home:rain:SumRainThisWeek"}
|
|
Number:Length Rain_Month "Rain This Month [%.02f %unit%]" <rain> {channel="netatmo:NAModule3:home:rain:SumRainThisMonth"}
|
|
Number Rain_BatteryVP "Rain battery status [%d%%]" <battery> {channel="netatmo:NAModule3:home:rain:BatteryVP"}
|
|
```
|
|
|
|
## sitemaps/netatmo.sitemap
|
|
|
|
```
|
|
sitemap netatmo label="Netatmo" {
|
|
Frame label="Indoor" {
|
|
Text item=Indoor_Temp
|
|
Text item=Indoor_Min_Temp
|
|
Text item=Indoor_Min_Temp_This_Week
|
|
Text item=Indoor_Min_Temp_This_Month
|
|
Text item=Indoor_Max_Temp
|
|
Text item=Indoor_Max_Temp_This_Week
|
|
Text item=Indoor_Max_Temp_This_Month
|
|
Text item=Indoor_Min_Temp_TS
|
|
Text item=Indoor_Min_Temp_This_Week_TS
|
|
Text item=Indoor_Min_Temp_This_Month_TS
|
|
Text item=Indoor_Max_Temp_TS
|
|
Text item=Indoor_Max_Temp_This_Week_TS
|
|
Text item=Indoor_Max_Temp_This_Month_TS
|
|
Text item=Indoor_Humidity
|
|
Text item=Indoor_Min_Humidity
|
|
Text item=Indoor_Min_Humidity_This_Week
|
|
Text item=Indoor_Min_Humidity_This_Month
|
|
Text item=Indoor_Max_Humidity
|
|
Text item=Indoor_Max_Humidity_This_Week
|
|
Text item=Indoor_Max_Humidity_This_Month
|
|
Text item=Indoor_Min_Humidity_TS
|
|
Text item=Indoor_Min_Humidity_This_Week_TS
|
|
Text item=Indoor_Min_Humidity_This_Month_TS
|
|
Text item=Indoor_Max_Humidity_TS
|
|
Text item=Indoor_Max_Humidity_This_Week_TS
|
|
Text item=Indoor_Max_Humidity_This_Month_TS
|
|
Text item=Indoor_Humidex valuecolor=[<20.1="green",<29.1="blue",<28.1="yellow",<45.1="orange",<54.1="red",>54.1="maroon"]
|
|
Text item=Indoor_HeatIndex
|
|
Text item=Indoor_Dewpoint
|
|
Text item=Indoor_DewpointDepression
|
|
Text item=Indoor_Co2 valuecolor=[<800="green",<1000="orange",<1400="red",>1399="maroon"]
|
|
Text item=Indoor_Min_Co2 valuecolor=[<800="green",<1000="orange",<1400="red",>1399="maroon"]
|
|
Text item=Indoor_Min_Co2_This_Week valuecolor=[<800="green",<1000="orange",<1400="red",>1399="maroon"]
|
|
Text item=Indoor_Min_Co2_This_Month valuecolor=[<800="green",<1000="orange",<1400="red",>1399="maroon"]
|
|
Text item=Indoor_Max_Co2 valuecolor=[<800="green",<1000="orange",<1400="red",>1399="maroon"]
|
|
Text item=Indoor_Max_Co2_This_Week valuecolor=[<800="green",<1000="orange",<1400="red",>1399="maroon"]
|
|
Text item=Indoor_Max_Co2_This_Month valuecolor=[<800="green",<1000="orange",<1400="red",>1399="maroon"]
|
|
Text item=Indoor_Min_Co2_TS
|
|
Text item=Indoor_Min_Co2_This_Week_TS
|
|
Text item=Indoor_Min_Co2_This_Month_TS
|
|
Text item=Indoor_Max_Co2_TS
|
|
Text item=Indoor_Max_Co2_This_Week_TS
|
|
Text item=Indoor_Max_Co2_This_Month_TS
|
|
Text item=Indoor_Pressure
|
|
Text item=Indoor_Min_Pressure
|
|
Text item=Indoor_Min_Pressure_This_Week
|
|
Text item=Indoor_Min_Pressure_This_Month
|
|
Text item=Indoor_Max_Pressure
|
|
Text item=Indoor_Max_Pressure_This_Week
|
|
Text item=Indoor_Max_Pressure_This_Month
|
|
Text item=Indoor_Min_Pressure_TS
|
|
Text item=Indoor_Min_Pressure_This_Week_TS
|
|
Text item=Indoor_Min_Pressure_This_Month_TS
|
|
Text item=Indoor_Max_Pressure_TS
|
|
Text item=Indoor_Max_Pressure_This_Week_TS
|
|
Text item=Indoor_Max_Pressure_This_Month_TS
|
|
Text item=Indoor_AbsolutePressure
|
|
Text item=Indoor_Noise
|
|
Text item=Indoor_Min_Noise
|
|
Text item=Indoor_Min_Noise_This_Week
|
|
Text item=Indoor_Min_Noise_This_Month
|
|
Text item=Indoor_Max_Noise
|
|
Text item=Indoor_Max_Noise_This_Week
|
|
Text item=Indoor_Max_Noise_This_Month
|
|
Text item=Indoor_Min_Noise_TS
|
|
Text item=Indoor_Min_Noise_This_Week_TS
|
|
Text item=Indoor_Min_Noise_This_Month_TS
|
|
Text item=Indoor_Max_Noise_TS
|
|
Text item=Indoor_Max_Noise_This_Week_TS
|
|
Text item=Indoor_Max_Noise_This_Month_TS
|
|
Text item=Indoor_WifiStatus
|
|
Text item=Indoor_TimeStamp
|
|
Text item=Indoor_Location
|
|
Text item=Indoor_LastStatusStore
|
|
}
|
|
Frame label="Outdoor" {
|
|
Text item=Outdoor_Temperature
|
|
Text item=Outdoor_TempTrend
|
|
Text item=Outdoor_Humidity
|
|
Text item=Outdoor_Humidex valuecolor=[<20.1="green",<29.1="blue",<28.1="yellow",<45.1="orange",<54.1="red",>54.1="maroon"]
|
|
Text item=Outdoor_HeatIndex
|
|
Text item=Outdoor_Dewpoint
|
|
Text item=Outdoor_DewpointDepression
|
|
Text item=Outdoor_RfStatus
|
|
Text item=Outdoor_LowBattery
|
|
Text item=Outdoor_BatteryVP
|
|
Text item=Outdoor_TimeStamp
|
|
Text item=Outdoor_LastMessage
|
|
}
|
|
Frame label="Rain" {
|
|
Text item=Rain_Hour
|
|
Text item=Rain_Today
|
|
Text item=Rain_Week
|
|
Text item=Rain_Month
|
|
Text item=Rain_BatteryVP
|
|
}
|
|
}
|
|
```
|
|
|
|
|
|
# Sample data
|
|
|
|
If you want to evaluate this binding but have not got a Netatmo station yourself
|
|
yet, you can add the Netatmo office in Paris to your account:
|
|
|
|
http://www.netatmo.com/en-US/addguest/index/TIQ3797dtfOmgpqUcct3/70:ee:50:00:02:20
|
|
|
|
|
|
# Icons
|
|
|
|
The following icons are used by original Netatmo web app:
|
|
|
|
|
|
## Modules
|
|
|
|
- https://my.netatmo.com/images/my/app/module_int.png
|
|
- https://my.netatmo.com/images/my/app/module_ext.png
|
|
- https://my.netatmo.com/images/my/app/module_rain.png
|
|
|
|
|
|
## Battery status
|
|
|
|
- https://my.netatmo.com/images/my/app/battery_verylow.png
|
|
- https://my.netatmo.com/images/my/app/battery_low.png
|
|
- https://my.netatmo.com/images/my/app/battery_medium.png
|
|
- https://my.netatmo.com/images/my/app/battery_high.png
|
|
- https://my.netatmo.com/images/my/app/battery_full.png
|
|
|
|
|
|
## Signal status
|
|
|
|
- https://my.netatmo.com/images/my/app/signal_verylow.png
|
|
- https://my.netatmo.com/images/my/app/signal_low.png
|
|
- https://my.netatmo.com/images/my/app/signal_medium.png
|
|
- https://my.netatmo.com/images/my/app/signal_high.png
|
|
- https://my.netatmo.com/images/my/app/signal_full.png
|
|
|
|
|
|
## Wifi status
|
|
|
|
- https://my.netatmo.com/images/my/app/wifi_low.png
|
|
- https://my.netatmo.com/images/my/app/wifi_medium.png
|
|
- https://my.netatmo.com/images/my/app/wifi_high.png
|
|
- https://my.netatmo.com/images/my/app/wifi_full.png
|