|
@@ -2,14 +2,67 @@
|
|
|
|
|
|
Backend for JeeLabs JeeLink receiver.
|
|
|
|
|
|
-Receives sensor data from LaCrosse 868MHz temperature/humidity sensors, logs data to InfluxDB and publishes via MQTT.
|
|
|
+Receives sensor data from LaCrosse 868MHz temperature/humidity sensors, logs data to InfluxDB and publishes via MQTT.
|
|
|
+Sensor type tested working: __LaCrosse/TechnoLine TX29 DTH-IT__.
|
|
|
|
|
|
## Installation
|
|
|
Requires Python 3 (default on Debian/RaspberryOS Buster or Bullseye).
|
|
|
- install Python3 PIP: $ sudo apt-get install python3-pip
|
|
|
- install required Python modules: pip3 install pyserial influxdb paho-mqtt pyyaml
|
|
|
- copy folder __jeelinklog__ to /home/pi
|
|
|
-- edit config files as needed
|
|
|
+- edit config files as needed. A minimum of 1 sensor must be configured before starting, so leave one from the examples there, configure it as desired and then find out the ID of your sensor and edit it afterwards.
|
|
|
- test if it works:
|
|
|
- cd /home/pi
|
|
|
- ./jeelinklog.py -v
|
|
|
+
|
|
|
+## Configuration
|
|
|
+The configuration is split in the following files:
|
|
|
+- __jeelinklog.ini__: base configuration
|
|
|
+- __jeelinklog_influxdb.yml__: YAML configuration file for InfluxDB instances
|
|
|
+- __jeelinklog_sensors.yml__: YAML configuration containing the sensors
|
|
|
+
|
|
|
+### configuring InfluxDB-Instances
|
|
|
+
|
|
|
+__jeelinklog_influxdb.yml__ format:
|
|
|
+
|
|
|
+ temphum: instance name used in sensor configuration
|
|
|
+ host: localhost
|
|
|
+ port: 8086
|
|
|
+ username: jeelinklog comment out if authentication is not used
|
|
|
+ password: password comment out if authentication is not used
|
|
|
+ database: TempHum InfluxDB database name - must already exist
|
|
|
+ measurement: TempHum InfluxDB measurement name, will be added automatically if it does not already exist
|
|
|
+ fieldnames:
|
|
|
+ temperature: temp
|
|
|
+ humidity: hum
|
|
|
+ datatypes:
|
|
|
+ temperature: float
|
|
|
+ humidity: int
|
|
|
+
|
|
|
+You can add as many InfluxDB instances as you need.
|
|
|
+Please mind correct indenting in YAML files!
|
|
|
+
|
|
|
+### configuring Sensors
|
|
|
+
|
|
|
+__jeelinklog_sensors.yml__ format:
|
|
|
+
|
|
|
+ Aussen: Sensor name
|
|
|
+ LaCrosseID: 1 LaCrosse Sensor ID, randomly generated on battery change
|
|
|
+ DomoticzIdx: 94 Sensor ID in Domoticz (deprecated)
|
|
|
+ Topic_Temp: "Test/Atemp" additional MQTT topic to publish temperature values of that sensor
|
|
|
+ Topic_Hum: "Test/Ahum" additional MQTT topic to publish humidity values of that sensor
|
|
|
+ InfluxDB_Instance: TempHum InfluxDB instance name to use (as set in jeelinklog_influxdb.yml)
|
|
|
+ isOutsideTempSensor: true true or false
|
|
|
+
|
|
|
+DomoticzIdx can be commented out or removed if not needed.
|
|
|
+Topic_Temp and Topic_Hum is optional, can be left commented or removed.
|
|
|
+InfluxDB_Instance __MUST__ be a valid name configured in __jeelinklog_influxdb.yml__.
|
|
|
+
|
|
|
+#### Outside sensors
|
|
|
+__isOutsideTempSensor: true__ will include that sensor in mean/average outside temperature calculation. Set it to true on all sensors that are (properly) located outside to enhance accuracy.
|
|
|
+You can add as many sensors as you need.
|
|
|
+Please mind correct indenting in YAML files!
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|