|  | @@ -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!
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 |