Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
hardware:temper [2019/07/29 22:15]
Robbie Ferguson
hardware:temper [2020/01/31 14:28] (current)
Robbie Ferguson
Line 1: Line 1:
 ====TEMPer==== ====TEMPer====
  
-The TEMPer is an affordable (under $20) USB digital thermometer that accurately senses temperatures from -55 to +125 degrees Celsius / -67 to +257 degrees Fahrenheit. This is an ideal addition to the server room to generate alerts should temperatures fall outside a safe threshold.+{{ :​hardware:​51sak_walnl._sl1000_.jpg?​nolink&​400|}}The TEMPer is an affordable (under $20) USB digital thermometer that accurately senses temperatures from -55 to +125 degrees Celsius / -67 to +257 degrees Fahrenheit. This is an ideal addition to the server room to generate alerts should temperatures fall outside a safe threshold.
  
-TEMPer devices work on all NEMS Linux hardware platforms.+TEMPer devices work on all NEMS Linux hardware platforms. It will also work on the NEMS Linux virtual appliance, however you must connect the hardware to the virtual machine, which is beyond the scope of this documentation (please refer to the documentation for your hypervisor).
  
 check_temper supports Critical and Warning states for both low (cold) and high (hot) temperatures. check_temper supports Critical and Warning states for both low (cold) and high (hot) temperatures.
Line 10: Line 10:
 For optimum accuracy, it is recommended to plug your TEMPer device into a short USB extension cord so the thermal data isn't impacted by the heat pulled from the USB port of your NEMS Server. For optimum accuracy, it is recommended to plug your TEMPer device into a short USB extension cord so the thermal data isn't impacted by the heat pulled from the USB port of your NEMS Server.
 </​WRAP>​ </​WRAP>​
 +
 +===Setting up check_temper===
 +
 +Simply add //​check_temper//​ as a service to your NEMS host, having connected the TEMPer device to your NEMS Server'​s USB port. You may specify your temperature thresholds in either degrees Celsius or Fahrenheit. NEMS will automatically determine which you are using.
 +
 +===Buy TEMPer Thermal Sensor===
 +
 +  * [[https://​www.amazon.com/​s/​ref=as_li_ss_tl?​k=temper+usb+sensor&​ref=nb_sb_noss&​linkCode=sl2&​tag=nems-linux-20&​linkId=5a736a3096cfce9a9e27e033115b3080&​language=en_US|Amazon.com]]
 +  * [[https://​www.amazon.ca/​s/​ref=as_li_ss_tl?​k=temper+usb+sensor&​ref=nb_sb_noss_2&​linkCode=sl2&​tag=nemslinux-20&​linkId=5455f0c524db94fff5d7a43841d61df8&​language=en_CA|Amazon.ca]]
 +  * [[https://​www.amazon.co.uk/​s/​ref=as_li_ss_tl?​k=temper+usb+sensor&​ref=nb_sb_noss&​linkCode=sl2&​tag=nemslinux-21&​linkId=0d3af2c3db4e8e4d27cd6420364bb94b&​language=en_GB|Amazon.co.uk]]
  
 ===Supported Devices=== ===Supported Devices===
Line 15: Line 25:
 Support is provided via [[https://​github.com/​urwen/​temper|temper]]. Support is provided via [[https://​github.com/​urwen/​temper|temper]].
  
-In the following table "​I"​ means the sensor is internal to the USB stick and "​E"​ means the sensor is on a cable that is plugged into the USB stick.+NEMS Linux 1.5.x supports TEMPer temperature data. NEMS Linux 1.6+ also includes support for humidity sensors.
  
-^ Product ^ Id ^ Firmware ^ Temp Hum ^ Notes ^ +^ Product ^ Id ^ Firmware ^ Temperature ​Humidity ^ Sensor Location ​^ Notes ^ 
-| TEMPer | 0c45:7401 | TEMPerF1.4 | | | Metal | +| TEMPer | 0c45:7401 | TEMPerF1.4 | ✔ ✘ | Internal ​| Metal | 
-| TEMPer | 413d:2107 | TEMPerGold_V3.1 | | | Metal | +| TEMPer | 413d:2107 | TEMPerGold_V3.1 | ✔ ✘ | Internal ​| Metal | 
-| TEMPerHUM | 413d:2107 | TEMPerX_V3.1 | | White plastic | +| TEMPerHUM | 413d:2107 | TEMPerX_V3.1 | ✔ ✔ | Internal ​| White plastic | 
-| TEMPer2 | 413d:2107 | TEMPerX_V3.3 | I,E | | White plastic | +| TEMPer2 | 413d:2107 | TEMPerX_V3.3 | ✔ ✘ | Internal or External ​| White plastic | 
-| TEMPer1F | 413d:2107 | TEMPerX_V3.3 | | | White plastic | +| TEMPer1F | 413d:2107 | TEMPerX_V3.3 | ✔ ✘ | External ​| White plastic | 
-| TEMPerX232 | 1a86:5523 | TEMPerX232_V2.0 | I,E | White plastic |+| TEMPerX232 | 1a86:5523 | TEMPerX232_V2.0 | ✔ | ✔ Internal or External| White plastic |
  
 ===Terminal Output=== ===Terminal Output===
  
 To receive the JSON output, type ''​%%nems-info temper%%''​ To receive the JSON output, type ''​%%nems-info temper%%''​
 +
 +TEMPer devices seem to have an issue on low-powered systems (such as Raspberry Pi) where due to the low power to the USB port, temper.py will respond with errors such as:
 +
 +  - Cannot read firmware identifier from device
 +  - Unknown firmware ld_V3.1 TEMPerGold_V3.1:​ b'​80800f874e200000'​
 +
 +To remedy this, //​nems-info//​ silently loops through the output multiple times until a good thermal reading is obtained. The errors are hidden and only the clean JSON output is generated. This all happens very quickly and transparently,​ resulting in good output every time, with no errors.
  
 ===Adding to your NEMS NConf=== ===Adding to your NEMS NConf===
  
-The //​check_temper// ​program has been added to NEMS NConfbut requires some brief initial configuration ​in NEMS 1.5 (as it was issued ​as a patch).+//​check_temper// ​allows you to add TEMPer devices to your NEMS Server. The check has 4 thresholds: Critical LowWarning Low, Warning High, Critical High. The number you enter may be in //either// degrees Celsius or Fahrenheit. The system will automatically detect which you are using. The OK temperature will be any temperature that falls between Warning Low and Warning High. This way, you can receive alerts from your NEMS Server should the room temperature be either too cold or too hot. 
 + 
 +===Configuring NEMS Linux 1.5=== 
 + 
 +**If you are running NEMS Linux 1.5.1 or higher, you do not need to do this.** 
 + 
 +TEMPer support ​was added to NEMS Linux 1.5 as a patch. If the NEMS Server was initialized before the rollout, some user customization is required. If you are initializing a new server, you likely will not need to take these steps. They are here only for those who initialized their NEMS Server before the patch was released.
  
   - Edit the //​check_temper//​ checkcommand   - Edit the //​check_temper//​ checkcommand
Line 37: Line 60:
   - Change **amount of params** to: //4//   - Change **amount of params** to: //4//
   - Submit   - Submit
-  - Add //​check_temper//​ as a service to your NEMS hosthaving connected ​the TEMPer device to your NEMS Server'​s USB port.+  - Add //​check_temper//​ as normal. 
 + 
 +===Humidity Sensor Support=== 
 + 
 +As of NEMS Linux 1.6both the temperature and humidity sensors are supported. 
 + 
 +Sample command line for humidity sensor: 
 + 
 +/​usr/​lib/​nagios/​plugins/​check_temper 20 35 65 80 hum
  • hardware/temper.1564452935.txt.gz
  • Last modified: 2019/07/29 22:15
  • by Robbie Ferguson