Difference between revisions of "Arduino: Simple LCD Thermometer with USB interface"

From Luky-Wiki
Jump to: navigation, search
(Normal LCD screen)
(Normal LCD screen)
Line 39: Line 39:
 
=== Normal LCD screen ===
 
=== Normal LCD screen ===
 
Displayed during "normal" operation. First two characters on second line show device status:
 
Displayed during "normal" operation. First two characters on second line show device status:
* position 1: "heart" show sensor/device activity (♡ is altering with ♥ after each successful sensor reading).
+
* position 1: "heart" show sensor / device activity (♡ is altering with ♥ after each successful sensor read).
 
* position 2: "arrows" indicate USB activity (⇅ pop up if there is USB activity).
 
* position 2: "arrows" indicate USB activity (⇅ pop up if there is USB activity).
 
<pre>
 
<pre>

Revision as of 00:25, 26 March 2014

Attention: this page is work in progress.

My motivation for "Simple LCD Thermometer with USB interface" is my server room. It is important to keep temperature and humidity in correct range. I am using automatic monitoring to be sure that everything is in "green" state. Previously I was using Conrad TFD 128 logger. It is good product but it have several design problems. To fulfill my needs I created my own device.

Technical specification

  • Temperature and humidity collected in 10 second interval
  • LCD interface with warnings (hot/cold, wet/dry)
  • LCD interface with 5 tactile keys
  • History and debug information on LCD
  • USB interface with simple text oriented protocol
  • Historical data stored in RAM memory readable via LCD and USB interface
  • Historical data with 5 minute interval (up to 60 minutes) and 1 hour interval (up to 72 hours)
  • Minimum and Maximum values
  • Temperature range: 0C - +50C, Resolution 0.1C
  • Humidity range: 0% - 99%, Resolution: 1% (display), 0.1% (USB)
  • Internal mCPU temperature monitoring
  • TODO: ranges (temperature 20-25C, humidity 40-70%, dew point: 10 - 16C)
  • TODO: buzzer ?

LCD Interface

Temperature sensor need at least two seconds to settle down. This make space to display reboot source. If it is necessary to wait, then it is possible to use this time to show why device was rebooted.

Startup screen stay for approximately 3 seconds and then device move to "Normal screen". If there is no activity for 60 seconds then device automatically move back to "Normal screen".

Blinking text indicate out of range condition (hot/cold, wet/dry, reading out of range).

Note: all display examples use illustration values. For more details check ranges in technical specification.

Startup screen

Displayed up on device reboot. Indicate source of reboot.

+----------------+ +----------------+ +----------------+ +----------------+
|Please wait ... | |Please wait ... | |Please wait ... | |Please wait ... |
|(Watchdog)  WDRF| |(Brown-out) BORF| |(External) EXTRF| |(Power-on)  PORF|
+----------------+ +----------------+ +----------------+ +----------------+

Normal LCD screen

Displayed during "normal" operation. First two characters on second line show device status:

  • position 1: "heart" show sensor / device activity (♡ is altering with ♥ after each successful sensor read).
  • position 2: "arrows" indicate USB activity (⇅ pop up if there is USB activity).
+----------------+ +----------------+ +----------------+
|T: 21.3C H: 50% | |T: 28.8C H: 90% | |T: 10.2C H: 10% |
|♡⇅   NORM   NORM| |♥⇅   HOT    WET | |♡⇅   COLD   DRY |
+----------------+ +----------------+ +----------------+

Dew point

+----------------+ +----------------+ +----------------+
|Dew point: 14.1C| |Dew point: 20.2C| |Dew point:  9.1C|
|     Comfortable| |        Too high| |         Too low|
+----------------+ +----------------+ +----------------+
  • values are only for illustration.

History + min/max

Temperature and humidity:

+----------------+ +----------------+ +----------------+ +----------------+
|T: 21.3C H: 50% | |T: 21.3C H: 50% | |T: 21.3C H: 50% | |T: 21.3C H: 50% |
|-05m NORM   NORM| |-55m NORM   NORM| |-01h NORM   NORM| |-72h NORM   NORM|
+----------------+ +----------------+ +----------------+ +----------------+

+----------------+ +----------------+ |T: 20.0C H: 30% | |T: 25.0C H: 30% | |MIN NORM NORM| |MAX NORM NORM| +----------------+ +----------------+ </pre>

  • Historical values for: past 5 minutes
  • values are only for illustration.

Dew point:

+----------------+ +----------------+ +----------------+ +----------------+
|Dew point: 14.1C| |Dew point: 14.1C| |Dew point: 14.1C| |Dew point: 14.1C|
|-05m Comfortable| |-55m Comfortable| |-01h Comfortable| |-72h Comfortable|
+----------------+ +----------------+ +----------------+ +----------------+

+----------------+ +----------------+
|Dew point: 14.1C| |Dew point: 14.1C|
|     Comfortable| |     Comfortable|
+----------------+ +----------------+ 
  • values are only for illustration.

Debug screen

+----------------+ +----------------+ +----------------+ +----------------+
|                | |                | |                | |                |
|                | |                | |                | |                |
+----------------+ +----------------+ +----------------+ +----------------+
+----------------+ +----------------+ +----------------+ +----------------+
|                | |                | |                | |                |
|                | |                | |                | |                |
+----------------+ +----------------+ +----------------+ +----------------+