Skip to content

Klimerko Firmware v2.0.0

Compare
Choose a tag to compare
@epiller epiller released this 13 Dec 20:36
· 9 commits to master since this release

Buckle up, this is the biggest and most feature-packed Klimerko release since its inception so you'll definitely want to update your device to this one! - Vanja

WiFi Configuration Mode

You can now configure your Klimerko's WiFi and AllThingsTalk credentials using WiFi!
The feature is called WiFi Configuration Mode and you activate it by holding the "FLASH" button on the NodeMCU board for 2 seconds.
Once activated, use your computer or smartphone to connect to "KLIMERKO-XXX" WiFi network using password "ConfigMode".
The WiFi Configuration Portal will automatically open (if not, open 192.168.4.1 in your browser) and you can configure your WiFi and AllThingsTalk Platform credentials from there, as well as update the firmware, which also means:

Over-The-Air Firmware Updating (OTA)

You can now update your Klimerko's firmware wirelessly using WiFi Configuration Mode (once you're on this version).
Updating is as easy as clicking the "Update" button on the WiFi Configuration Portal, selecting the downloaded Klimerko_Firmware.bin file and clicking "Update"!
This means that once you initially flash your Klimerko, you'll never need to check if you plugged your USB correctly, if the USB cable supports data, if your Arduino IDE is on the latest version, if you have the latest/correct ESP8266 core, if you've selected the correct port, if you have the driver installed, if you've selected the correct upload speed, etc. to update your Klimerko to the newest firmware!

No More Missed Payloads

Your Klimerko will now constantly try to publish sensor data if it failed to publish it previously.
This means that even if you have the worst connection possible, a very short amount of active online time is enough for it to send the data.
The data published at the moment it succeeds is the average of last 10 sensor readings (which happen independently of publishing), so you will not get "stale" sensor data in case connection fails for a long time.

Improved Temperature, Humidity and Pressure Precision

You can now detect smaller changes in temperature, humidity and pressure because those values now have 2 decimals instead of just being integers. For example, temperature values before would be "23", "24" and now they're "23.87", "24.08".

Works Without Sensor(s)

Klimerko can now function without one or both sensors in case of a hardware problem.
It detects if a sensor is missing or if it failed and omits sending values from that specific sensor in order to eliminate bogus data being sent and recovers the sensor if it has been connected (or starts working again) and initializes it, runs tests and starts sending data for that sensor again.
And it does all this automatically even during operation! You could hot-swap your sensors! Or not. Nobody does that.

Factory Reset

You can now factory reset your Klimerko by pressing and holding the FLASH button on NodeMCU for 15 seconds. The LED will flash rapidly for 2 seconds and stay on (until restart), after which Klimerko automatically restarts with all the credentials wiped.

All Changes

  • WiFi Configuration Mode (allows you to configure your Klimerko using only WiFi).
  • Over-The-Air Updates (flashing the newest Klimerko firmware using only WiFi).
  • If sensor data publishing failed, Klimerko will now retry until it succeeds with each retry loaded with fresh sensor data.
  • Temperature, Humidity and Pressure precision improved. Those values now have 2 decimals as opposed to just being integers.
  • Minimum data reporting interval decreased from 5 minutes to 1 minute. If set to 1 minute, sensor data is read every 6 seconds for averaging.
  • Boot delay removed. It now takes ~5 seconds from powering it on to being connected to WiFi and AllThingsTalk.
  • Publishes diagnostic data (Firmware Version, WiFi Signal Strength and Reporting Interval) at boot and every time it successfully connects to AllThingsTalk.
  • Ability to recover failed sensors during runtime or run without them if necessary.
    • If any sensor fails to be read a few times in a row, it will be considered offline.
    • Data and data fields of an offline sensor is omitted from the payload that is sent to the platform.
    • Averaging data is reset the moment the sensor is considered offline.
    • Firmware will attempt to re-initialize any offline sensor every time data is being read.
  • Utilizes NodeMCU's onboard "FLASH" button:
    • Pressing the button quickly stops WiFi Configuration Mode (if started).
    • Holding the button for 2 seconds (and releasing it) starts WiFi Configuration Mode.
    • Holding the button for 15 seconds resets the device to factory settings (all credentials are deleted).
  • Built-in NodeMCU LED Features:
    • Slow blinking: Trying to connect to either WiFi or AllThingsTalk
    • Quick blinking and then slow blinking: Connected to WiFi but still trying to connect to AllThingsTalk.
    • Quick blinking and then turns off: Connected to both WiFi and AllThingsTalkWiFi Configuration Mode.
    • Constantly on: WiFi Configuration Mode is currently active.
    • Long rapid blinking and then turns on: Factory reset has been initiated.
  • Unique ID is generated for every Klimerko (based on ESP8266 chipID) so that it's possible to differentiate between multiple devices.
  • Fixes issues with ESP8266 Core v3.x.x. You can now update to the latest ESP8266 Core without any issues when compiling this firmware.
  • Major code refactoring.
  • README updated to account for all the new functionalities of this update.
  • Credentials configuration using Serial interface has been deprecated/removed.

Updating

This is the last Klimerko Firmware Update that you'll need to install using Arduino IDE. After you install v2.0.0, you can install every new update Wirelessly.

Before you proceed, please note that updating to this firmware version will delete AllThingsTalk (and possibly WiFi) credentials from your Klimerko due to changes in how the credentials are now being stored in memory. Once you update, enter the credentials again and you're good to go. Your credentials won't be deleted again.

Use these instructions to update your Klimerko to this firmware version.