Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/paveldn/misol-esphome

Misol weather station component for ESPHome
https://github.com/paveldn/misol-esphome

esp32 esp8266 esphome esphome-component misol rs485 uart weather-station

Last synced: 3 months ago
JSON representation

Misol weather station component for ESPHome

Awesome Lists containing this project

README

        

Misol Weather Station Component
===============================

.. raw:: HTML


 Misol weather station

This is an implementation of the ESPHome component for a Misol weather station with RS485 output. The weather station is a combination of various sensors, including temperature, humidity, pressure (not available for all models), wind speed, wind direction, wind gust, accumulated precipitation, light, UV intensity, and UV index.

The weather station uses serial communication with a baud rate of 9600 bps, 8 data bits, no parity, and 1 stop bit over RS485.
The weather station sends the data every 16 seconds. This interval is not configurable. The weather station only sends the data, and it does not accept any commands.
To use this component you will need to connect the weather station using RS485 to the TTL converter.

There are 2 versions of the weather station available at the moment: with and without a barometric pressure sensor.
The component will automatically detect the version of the weather station and will provide the data accordingly.

This component requires a `UART Bus `_ to be setup.

Component/Hub
-------------

The component acts as a hub for the weather station sensors. It reads the data from the weather station and provides it to the sensors.

Example configuration:
----------------------

.. code-block:: yaml

misol_weather:
id: weather_station
uart_id: uart_bus

Configuration variables:
------------------------

- **uart_id** (**Required**, `ID `_): The ID of the UART bus to use for communication with the weather station.

Sensor
------

The sensor platform allows you to get the data from the weather station.

Example configuration:
----------------------

.. code-block:: yaml

sensor:
- platform: misol_weather
misol_id: weather_station
temperature:
name: Weather station Temperature
humidity:
name: Weather station Humidity
pressure:
name: Weather station Pressure
wind_speed:
name: Weather station Wind Speed
wind_direction_degrees:
name: Weather station Wind Direction
wind_gust:
name: Weather station Wind Gust
accumulated_precipitation:
name: Weather station Accumulated
precipitation_intensity:
name: Weather station Precipitation Intensity
light:
name: Weather station Light
uv_intensity:
name: Weather station Ultraviolet Intensity
uv_index:
name: Weather station Ultraviolet Index

Configuration variables:
------------------------

- **misol_id** (**Required**, `ID `_): The ID of the weather station component.
- **temperature** (*Optional*): The temperature sensor.
All options from `Sensor `_.
- **humidity** (*Optional*): The humidity sensor.
All options from `Sensor `_.
- **pressure** (*Optional*): The pressure sensor. Not available for all models.
All options from `Sensor `_.
- **wind_speed** (*Optional*): The wind speed sensor.
All options from `Sensor `_.
- **wind_direction_degrees** (*Optional*): The wind direction sensor in degrees.
All options from `Sensor `_.
- **wind_gust** (*Optional*): The wind gust sensor.
All options from `Sensor `_.
- **accumulated_precipitation** (*Optional*): The accumulated precipitation sensor.
All options from `Sensor `_.
- **precipitation_intensity** (*Optional*): The precipitation intensity sensor.
All options from `Sensor `_.
- **light** (*Optional*): The light sensor.
All options from `Sensor `_.
- **uv_intensity** (*Optional*): The UV intensity sensor.
All options from `Sensor `_.
- **uv_index** (*Optional*): The UV index sensor.
All options from `Sensor `_.

Binary Sensor
-------------

The binary sensor platform allows you to get the battery level of the weather station.

Example configuration:
----------------------

.. code-block:: yaml

binary_sensor:
- platform: misol_weather
misol_id: weather_station
battery_level:
name: Weather station Battery Level

Configuration variables:
------------------------

- **misol_id** (**Required**, `ID `_): The ID of the weather station component.
- **battery_level** (**Required**): The battery level sensor.
All options from `Binary Sensor `_.

Text Sensor
-----------

The text sensor platform allows you to get the wind direction in text format.

Example configuration:
----------------------

.. code-block:: yaml

text_sensor:
- platform: misol_weather
misol_id: weather_station
light:
name: Weather station Light Text
wind_direction:
name: Weather station Wind Direction Text
north_correction: 0
secondary_intercardinal_direction: true
wind_speed:
name: Weather station Wind Speed Text

Configuration variables:
------------------------

- **misol_id** (**Required**, `ID `_): The ID of the weather station component.
- **light** (*Optional*): The light sensor in text format.
All options from `Text Sensor `_.
- **wind_direction** (*Optional*): The wind direction sensor in text format.

- **north_correction** (*Optional*, int): The correction for the north direction in degrees (-180..180) to adjust the wind direction. Default is ``0``.
- **secondary_intercardinal_direction** (*Optional*, boolean): If true, the wind direction will be in the intercardinal direction format (example NNE). Default is ``false``.

All other options from `Text Sensor `_.
- **wind_speed** (*Optional*): The wind speed sensor in text format.
All options from `Text Sensor `_.

See Also
--------

- `ESPHome Sensor `_
- `ESPHome Binary Sensor `_
- `ESPHome Text Sensor `_