Hi gontajones
here are the three files that you have help me write.
mySensorModule.py
I will find another power supply (12 volts) and have another go tommorrow.
gontajones hope all my code helps, thank you so much for all your help, so much is now clear to me and I have learnt so much as well, this will all go to help me in the future.
Kind regards
Paul
Hi again, once I have sorted the electrics I am going to have to find out how to run the file permanently, in the background especially on a reboot. a CRONJOB ?
Paul
here are the three files that you have help me write.
mySensorModule.py
#! bash/bin/python3 def read_sensor(sensorID): tempfile = open("/sys/bus/w1/devices/"+ sensorID +"/w1_slave") thetext = tempfile.read() tempfile.close() tempdata = thetext.split("\n") [1].split(" ")[9] temperature = float(tempdata[2:]) temp_sensor = temperature / 1000 return (temp_sensor)mySensors.py
# Execute DS18B20 function for sensor ID's below. # As sensorsID is a dictionary, you declare it like this: sensorsID = { 'solar_panel': '28-0516a3ff90ff', 'top_cyl': '28-0317003f1cff', 'flow_panel': '28-0416c4a3a0ff', 'cyl_bottom': '28-03170017b5ff' }and finally temp.py
from mySensorModule import read_sensor from mySensors import sensorsID import time import RPi.GPIO as GPIO GPIO.setmode(GPIO.BCM) GPIO.setup(25,GPIO.OUT) # accessing a dictionary: dict_name[key] = value sID1 = sensorsID['solar_panel'] sID2 = sensorsID['cyl_bottom'] x = 5 try: while True: if read_sensor(sID1) + x > read_sensor(sID2): GPIO.output(25,GPIO.HIGH) # print("it's Hot!") else: # print("Got it wrong again Dad") GPIO.output(25,GPIO.LOW) # time.sleep(10) except KeyboardInterrupt: GPIO.cleanup()I have commented out the lines for print and time. Before I run temp.py file in the command line, gpio readall shows this
Output:+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| | | 3.3v | | | 1 || 2 | | | 5v | | |
| 2 | 8 | SDA.1 | IN | 1 | 3 || 4 | | | 5v | | |
| 3 | 9 | SCL.1 | IN | 1 | 5 || 6 | | | 0v | | |
| 4 | 7 | GPIO. 7 | IN | 1 | 7 || 8 | 1 | ALT0 | TxD | 15 | 14 |
| | | 0v | | | 9 || 10 | 1 | ALT0 | RxD | 16 | 15 |
| 17 | 0 | GPIO. 0 | IN | 0 | 11 || 12 | 0 | IN | GPIO. 1 | 1 | 18 |
| 27 | 2 | GPIO. 2 | IN | 0 | 13 || 14 | | | 0v | | |
| 22 | 3 | GPIO. 3 | IN | 0 | 15 || 16 | 0 | IN | GPIO. 4 | 4 | 23 |
| | | 3.3v | | | 17 || 18 | 0 | IN | GPIO. 5 | 5 | 24 |
| 10 | 12 | MOSI | IN | 0 | 19 || 20 | | | 0v | | |
| 9 | 13 | MISO | IN | 0 | 21 || 22 | 0 | IN | GPIO. 6 | 6 | 25 |
| 11 | 14 | SCLK | IN | 0 | 23 || 24 | 1 | IN | CE0 | 10 | 8 |
| | | 0v | | | 25 || 26 | 1 | IN | CE1 | 11 | 7 |
| 0 | 30 | SDA.0 | IN | 1 | 27 || 28 | 1 | IN | SCL.0 | 31 | 1 |
| 5 | 21 | GPIO.21 | IN | 1 | 29 || 30 | | | 0v | | |
| 6 | 22 | GPIO.22 | IN | 1 | 31 || 32 | 1 | IN | GPIO.26 | 26 | 12 |
| 13 | 23 | GPIO.23 | IN | 1 | 33 || 34 | | | 0v | | |
| 19 | 24 | GPIO.24 | IN | 1 | 35 || 36 | 1 | IN | GPIO.27 | 27 | 16 |
| 26 | 25 | GPIO.25 | IN | 0 | 37 || 38 | 1 | IN | GPIO.28 | 28 | 20 |
| | | 0v | | | 39 || 40 | 1 | IN | GPIO.29 | 29 | 21 |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+-Pi Zero--+---+------+---------+-----+-----+
BCM 25 shows 0 and IN, and onthe relay the little red light is off (on the relay the other lights are a dim red corrisponding to 1 and IN. Whe I run the file I get no errors and if I open another terminal I get from gpio readallOutput: +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| | | 3.3v | | | 1 || 2 | | | 5v | | |
| 2 | 8 | SDA.1 | IN | 1 | 3 || 4 | | | 5v | | |
| 3 | 9 | SCL.1 | IN | 1 | 5 || 6 | | | 0v | | |
| 4 | 7 | GPIO. 7 | IN | 1 | 7 || 8 | 1 | ALT0 | TxD | 15 | 14 |
| | | 0v | | | 9 || 10 | 1 | ALT0 | RxD | 16 | 15 |
| 17 | 0 | GPIO. 0 | IN | 0 | 11 || 12 | 0 | IN | GPIO. 1 | 1 | 18 |
| 27 | 2 | GPIO. 2 | IN | 0 | 13 || 14 | | | 0v | | |
| 22 | 3 | GPIO. 3 | IN | 0 | 15 || 16 | 0 | IN | GPIO. 4 | 4 | 23 |
| | | 3.3v | | | 17 || 18 | 0 | IN | GPIO. 5 | 5 | 24 |
| 10 | 12 | MOSI | IN | 0 | 19 || 20 | | | 0v | | |
| 9 | 13 | MISO | IN | 0 | 21 || 22 | 1 | OUT | GPIO. 6 | 6 | 25 |
| 11 | 14 | SCLK | IN | 0 | 23 || 24 | 1 | IN | CE0 | 10 | 8 |
| | | 0v | | | 25 || 26 | 1 | IN | CE1 | 11 | 7 |
| 0 | 30 | SDA.0 | IN | 1 | 27 || 28 | 1 | IN | SCL.0 | 31 | 1 |
| 5 | 21 | GPIO.21 | IN | 1 | 29 || 30 | | | 0v | | |
| 6 | 22 | GPIO.22 | IN | 1 | 31 || 32 | 1 | IN | GPIO.26 | 26 | 12 |
| 13 | 23 | GPIO.23 | IN | 1 | 33 || 34 | | | 0v | | |
| 19 | 24 | GPIO.24 | IN | 1 | 35 || 36 | 1 | IN | GPIO.27 | 27 | 16 |
| 26 | 25 | GPIO.25 | IN | 0 | 37 || 38 | 1 | IN | GPIO.28 | 28 | 20 |
| | | 0v | | | 39 || 40 | 1 | IN | GPIO.29 | 29 | 21 |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+-Pi Zero--+---+------+---------+-----+-----+
as you see BCM 25 is now 1 and OUT on the relay the LED is now bright red but the 240volt test lamp has not lit up. so the problem must be my wiring 240volt side or as the module is twelve volts and I have connected it to the 5 volt gpio on pi I think this could be it.I will find another power supply (12 volts) and have another go tommorrow.
gontajones hope all my code helps, thank you so much for all your help, so much is now clear to me and I have learnt so much as well, this will all go to help me in the future.

Kind regards
Paul
Hi again, once I have sorted the electrics I am going to have to find out how to run the file permanently, in the background especially on a reboot. a CRONJOB ?
Paul