Skip navigation

Raspberry Pi Projects

1 Post authored by: dwbro1

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)

 

Filter Blog

By date: By tag: