The PMS5003 library returns integers. This causes the current formula for color scaling of the graph to not work properly because of integer division instead of float division. Converting the PMS5003 results from int to float solves the problem.
except pmsReadTimeoutError:
logging.warn("Failed to read PMS5003")
else:
except pmsReadTimeoutError:
logging.warn("Failed to read PMS5003")
else:
- data = data.pm_ug_per_m3(1.0)
+ data = float(data.pm_ug_per_m3(1.0))
display_text(variables[mode], data, unit)
if mode == 8:
display_text(variables[mode], data, unit)
if mode == 8:
except pmsReadTimeoutError:
logging.warn("Failed to read PMS5003")
else:
except pmsReadTimeoutError:
logging.warn("Failed to read PMS5003")
else:
- data = data.pm_ug_per_m3(2.5)
+ data = float(data.pm_ug_per_m3(2.5))
display_text(variables[mode], data, unit)
if mode == 9:
display_text(variables[mode], data, unit)
if mode == 9:
except pmsReadTimeoutError:
logging.warn("Failed to read PMS5003")
else:
except pmsReadTimeoutError:
logging.warn("Failed to read PMS5003")
else:
- data = data.pm_ug_per_m3(10)
+ data = float(data.pm_ug_per_m3(10))
display_text(variables[mode], data, unit)
# Exit cleanly
display_text(variables[mode], data, unit)
# Exit cleanly