Temp and Humidity Sensor

# Module Import

import LocoIOT

import time


# Compute The Average From A List Of Elements

def get_average(data_list):

# Initilize Local Variable

sumVal = 0

# Sum The Elements In The List

for i in range(len(data_list)):

sumVal = sumVal + data_list[i]

# Compute The Average

sumVal = sumVal / len(data_list)

# Return The Value Stored In The Local Variable

return sumVal


# Determine The Minimum and Maximum Value In A List

def get_min_max(data_list):

# Initilize Local Variables

minVal = data_list[0]

maxVal = data_list[0]

# Class Instances Creation

loco_iot = LocoIOT.LocoIOT()

msg = LocoIOT.IOT_Codes()


# Initiate Connection to the Microcontroller

loco_iot.connect()


# Enable Temperature and Humidity Sensor Hardware Configuration

loco_iot.enable(msg.SUBTYPE_DHT)


# Start Listening for Control/Request Messages

loco_iot.start()


# Create Empty Lists

temp_data_list = ['Temperature (C)']

humd_data_list = ['Humidity (%)']


# Loop for an Arbitrary Duration

start_time = time.time()

while (time.time() - start_time) < 100:

# Request Temperature and Humidity Data

dht_dict = loco_iot.getData(msg.SUBTYPE_DHT)

temp_data_list.append(data_dict['data list'])

humd_data_list.append(data_dict['data list'])

# Print Temperature and Humidity Dictionary

print(dht_dict)

# DHT11 Maximum Frequency is < 1Hz -- Too Fast Will Result in "0" Data

time.sleep(.6)

get_average(temp_data_list) == temp_avg

get_average(humd_data_list) == humd_avg

print(temp_avg)

print(humd_avg)

print(minVal)

print(maxVal)

# Close Connection to the Microcontroller

loco_iot.close()