I was using a project by Mike Davis (A Raspberry Pi Data Logger for about $25 (Temperature Probe and ThingSpeak).. All is working fine for one sensor but I have 3 and am unable to figure out a loop to get it to upload all three. I can see all three sensors in the /devices/ directory. Any help would be appreciated.
Here is code from Mike I'm using:
import os
import glob
import time
import sys
import datetime
import urllib2
baseURL = "https://api.thingspeak.com/update?api_key=YOURAPIKEY"
#initiate the temperature sensor
os.system('modprobe w1-gpio')
os.system('modprobe w1-therm')
#set up the location of the sensor in the system
base_dir = '/sys/bus/w1/devices/'
device_folder = glob.glob(base_dir + '28*')[0]
device_file = device_folder + '/w1_slave'
def read_temp_raw(): #a function that grabs the raw temperature data from the sensor
f = open(device_file, 'r')
lines = f.readlines()
f.close()
return lines
def read_temp(): #a function that checks that the connection was good and strips out the temperature
lines = read_temp_raw()
while lines[0].strip()[-3:] != 'YES':
time.sleep(0.2)
lines = read_temp_raw()
equals_pos = lines[1].find('t=')
if equals_pos !=-1:
temp_string = lines[1][equals_pos+2:]
temp_c = float(temp_string)/1000.0
temp_f = temp_c * 9.0/5.0 + 32.0
return temp_c
while True: #infinite loop
tempin = read_temp() #get the temp
values = [datetime.datetime.now(), tempin]
g = urllib2.urlopen(baseURL + "&field1=%s" % (tempin))
time.sleep(60)