initial commit with a working version
This commit is contained in:
		
							parent
							
								
									641e140099
								
							
						
					
					
						commit
						f5b06bcafb
					
				
							
								
								
									
										56
									
								
								mqtt_publish_temp.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								mqtt_publish_temp.py
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,56 @@
 | 
			
		||||
import time
 | 
			
		||||
import datetime
 | 
			
		||||
import subprocess
 | 
			
		||||
 | 
			
		||||
# Import Adafruit_DHT
 | 
			
		||||
import Adafruit_DHT
 | 
			
		||||
 | 
			
		||||
# Import MQTT client.
 | 
			
		||||
import paho.mqtt.publish as publish
 | 
			
		||||
import paho.mqtt.client as paho
 | 
			
		||||
 | 
			
		||||
# MQTT credentials
 | 
			
		||||
#mqtt_username  = 'homeassistant' # MQTT client username
 | 
			
		||||
#mqtt_password = '3355' # MQTT client password
 | 
			
		||||
#client_id = 'temperature' # unique client_id
 | 
			
		||||
mqtt_broker = "raspberrypi" # broker address, usually your HASS IP address
 | 
			
		||||
 | 
			
		||||
# DHT config
 | 
			
		||||
DHT_PIN = 4                     # GPIO nr
 | 
			
		||||
DHT_SENSOR = Adafruit_DHT.DHT22
 | 
			
		||||
 | 
			
		||||
# connection event
 | 
			
		||||
def on_connect(client, data, flags, rc):
 | 
			
		||||
    print('Connected: ' + str(rc))
 | 
			
		||||
 | 
			
		||||
# create the MQTT client
 | 
			
		||||
client = paho.Client(protocol=paho.MQTTv31)  # * set a random string (max 23 chars)
 | 
			
		||||
 | 
			
		||||
# Command topic
 | 
			
		||||
temperature_topic  = 'weathersensors/emily/temperature'
 | 
			
		||||
humidity_topic = 'weathersensors/emily/humidity'
 | 
			
		||||
 | 
			
		||||
# client connection
 | 
			
		||||
#client.username_pw_set(mqtt_username, mqtt_password)  # MQTT server credentials
 | 
			
		||||
client.connect(mqtt_broker)  # MQTT server address
 | 
			
		||||
 | 
			
		||||
client.loop_start()
 | 
			
		||||
 | 
			
		||||
while True:
 | 
			
		||||
 | 
			
		||||
        # Get Temperature from DHT
 | 
			
		||||
        _, temperature = Adafruit_DHT.read_retry(DHT_SENSOR, DHT_PIN)
 | 
			
		||||
 | 
			
		||||
        # Get Humidity from DHT
 | 
			
		||||
        humidity, _ = Adafruit_DHT.read_retry(DHT_SENSOR, DHT_PIN)
 | 
			
		||||
 | 
			
		||||
        # Publish our data
 | 
			
		||||
        client.publish(temperature_topic, temperature)
 | 
			
		||||
        client.publish(humidity_topic, humidity)
 | 
			
		||||
 | 
			
		||||
        time.sleep(30)
 | 
			
		||||
 | 
			
		||||
        # Output data to screen
 | 
			
		||||
        # print temperature
 | 
			
		||||
        # print humidity
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user