Skip to content


Subversion checkout URL

You can clone with
Download ZIP
My OS X Thermometer client.
Objective-C HTML Makefile
Failed to load latest commit information.
English.lproj added sparklines
Help import from…
Resources made logcontroller the delegate for the window
Thermometer.xcodeproj Updated build definitions.
.gitignore Updated git files.
AppController.h built under gnustep
AppController.m built under gnustep
GNUmakefile added http support via gswebkit
GNUmakefile.postamble built under gnustep
GNUmakefile.preamble added http support via gswebkit
HttpSource.h built under gnustep
HttpSource.m use gswebkit COCOA_COMPAT
Info.plist update version numbers to 1.3
LempClient.h import from…
LempClient.m TRUE -> YES ; FALSE -> NO
LempSource.h built under gnustep
LempSource.m TRUE -> YES ; FALSE -> NO
LogController.h more stuff related to what I thought was the gorm bug
LogController.m added sparklines
PC.project update version numbers to 1.3
PreferenceController.h Separated osources out of the controller
PreferenceController.m got rid of an annoying log message
README.markdown Remove screenshots that have gone missing from README
Readings.h show the correct units on the log view as well
Readings.m brought in new sparkline stuff from statwatch
SparklineCell.h brought in new sparkline stuff from statwatch
SparklineCell.m Fix some compiler warnings.
TempReading.h import from…
TempReading.m import from…
TempSource.h built under gnustep
TempSource.m Separated osources out of the controller
ThermController.h built under gnustep
ThermController.m Fix some compiler warnings.
Thermometer.h Fix some compiler warnings.
Thermometer.m Fix some compiler warnings.
ThermometerCell.h Don't access defaults for units in the view, just get notifications w…
ThermometerCell.m TRUE -> YES ; FALSE -> NO
main.m built under gnustep
temp.icns import from…


Using Thermometer

For the most part, this app can be used without modification. However, if you would like it to display your own thermometers, you can do this by providing a URL that provides temperatures.


By default, the app displays temperatures at my house via the following URL:

This URL is expected to provide a textual list of results where each line is the name of a thermometer. For example, consider the following output from mine:


That creates six individual cells for the display. Each cell is queried via the following URL:

Where name is replaced with the name of the thermometer. This URL is expected to return the current reading of the given thermometer in celsius. For example: 16.86


Thermometer also supports LEMP, which is (Live|Lightweight|Lame) Environment Monitoring Protocol. To use LEMP, you may enter a URL in the following format:


8181 is the default port number. To see what LEMP looks like (sorry, no formal documentation), you can use telnet or netcat or something to connect to port 8181 of which is providing a live feed of temperature data from my house.

The Display

Each thermometer contains two basic data elements:

  • The current reading (below the center)
  • The trend (above the center)
  • The current reading is the reading as of the last update (seen at the bottom of the window). The trend is the difference between the current reading and the oldest reading you have up to ten samples ago.
  • For example, if your sample rate is 300 (once every five minutes), and your current reading is 35.81, and the trend is -0.21, then the temperature has fallen .21 degrees in the last 50 minutes as long as you've had the application running at least that long.
Something went wrong with that request. Please try again.