From 4f8827948f90baa80801b527546815be324a020a Mon Sep 17 00:00:00 2001 From: jerick Date: Mon, 28 Nov 2022 15:47:40 -0500 Subject: [PATCH] Function organization --- mqtt/tempSensor.py | 53 ++++++++++++++++++++++++---------------------- 1 file changed, 28 insertions(+), 25 deletions(-) diff --git a/mqtt/tempSensor.py b/mqtt/tempSensor.py index c5765ff..63b738b 100644 --- a/mqtt/tempSensor.py +++ b/mqtt/tempSensor.py @@ -44,34 +44,27 @@ def connect_mqtt(): return client -def run(): - # We first check if a libgpiod process is running. If yes, we kill it! - for proc in psutil.process_iter(): - if proc.name() == 'libgpiod_pulsein' or proc.name() == 'libgpiod_pulsei': - proc.kill() - client = connect_mqtt() - client.loop_start() - getValues() - + def getValues(): - while True: - try: - temp = sensor.temperature - humidity = sensor.humidity - - #convert to Farenheit - temp = (temp * 1.8) + 32 - print("Temperature: {}*F Humidity: {}% ".format(temp, humidity)) - except RuntimeError as error: - print(error.args[0]) - time.sleep(2.0) - continue - except Exception as error: - sensor.exit() - raise error + try: + temp = sensor.temperature + humidity = sensor.humidity + #convert to Farenheit + temp = (temp * 1.8) + 32 + print("Temperature: {}*F Humidity: {}% ".format(temp, humidity)) + except RuntimeError as error: + print(error.args[0]) + time.sleep(2.0) + except Exception as error: + sensor.exit() + raise error + return temp, humidity + + +def publish(client, temp, humidity): #Publish Temp Results tempMsg = '{{ "temperature": {} }}'.format(temp) result = client.publish(tempTopic, tempMsg) @@ -95,7 +88,17 @@ def getValues(): time.sleep(5.0) -#Now publish this via mqtt +def run(): + # We first check if a libgpiod process is running. If yes, we kill it! + for proc in psutil.process_iter(): + if proc.name() == 'libgpiod_pulsein' or proc.name() == 'libgpiod_pulsei': + proc.kill() + client = connect_mqtt() + client.loop_start() + while True: + temp = getValues() + humidity = getValues() + publish(client, temp, humidity) if __name__ == '__main__': run() \ No newline at end of file