Wall-mounted home weather station (forecast, temperature/time, rain gauge)
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


HomeWeather 2.6.1

This software powers a home weather station based on the Electric Imp Platform.

The Hardware

The station comprises an imp001 and April breakout board, plus an Adafruit 0.56in seven-segment LED, an Adafruit 1.2in LED matrix display and an Adafruit bicolor LED bar. The display units connect to the imp001/April via I²C — it’s just a matter of wiring them all up to a single pair of imp I²C pins plus GND and 3V3. A larger solderless breadboard should accomodate them all.

Weather Station

Dark Sky

The station uses Dark Sky’s Dark Sky API for regular weather forecasts. This requires a developer account, which is free — register here. The Dark Sky API is a commercial service. Though the first 1000 API calls made each day under your API key are free of charge, subsequent calls are billed at a rate of $0.0001 per call. You and your application will not be notified by the Electric Imp Dark Sky library if this occurs, so you may wish to add suitable call-counting code to your application.

Dark Sky Units

The code is set to deliver Dark Sky forecast in UK units. You may wish to change this according to your location. Look for line 161 in the agent code.


You will also need my Location library — paste it over line 7 in both the agent and device code. The Location library requires Google-provided API keys, which you’ll need to enter into the agent code in the space provided on line 462, which will also need un-commenting.

Display Libraries

The device code makes use of the accompanying libraries, HT16K33Bargraph, HT16K33Segment and HT16K33Matrix. The code for these libraries is available from the following GitHub repositories:

If you are using the macOS tool Squinter (download here) to manage your Electric Imp projects, the the device code is set up to import and pre-process these files. You may need to change the #import statements to reflect the location of the libraries on your machine. Alternatively, you can simply paste in the contents of each file over the respective #import statement.


The Weather Station has its own, web-based control UI, accessed at the agent URL.

Release Notes

  • 2.6.1 — 1 November 2018
  • 2.6.0 — 27 September 27 2018
    • Update to Bootstrap 4.1.1
      • Update Web UI based on Bootstrap
      • Separate out Web UI into own file for clarity
    • Add automatic location detection (with Location)
    • Add ‘Advance Clock’ function to the night mode dimmer
    • Improve disconnection handling with DisconnectionManager
    • Update to JQuery 3.3.1
    • Prevent Ajax XHR caching
    • Stop DarkSky requests busting the limit
  • 2.5.0
    • Assorted tweaks and generally bringing everything up to date
  • 2.4.0
    • Add light rain icon
    • Improve UI
    • Remove UI version number
    • Use generic boot message code
  • 2.3.0
    • Remove Build API integration
    • Reworked web UI
    • Add device boot message
  • 2.2.0
    • Initial re-release


The Weather Station design and software is copyright © 2014-18 Tony Smith and made available under the MIT Licence.