ESP Insights — What’s new

Adwait Patankar
The ESP Journal
Published in
4 min readJan 27, 2022

--

ESP Insights was released in its Beta in July 2021 and is being actively used by the ESP developer community. You can read more about it in the blog post Introducing ESP Insights. With this new version of the ESP Insights service, we introduce following new features, plus a few UI enhancements and stability fixes.

  • Support for HTTPs/REST API based device communication
  • Group Analytics

Let’s look at these new features in more detail.

HTTPS Transport

When we launched ESP Insights, we borrowed some concepts from ESP RainMaker, especially the concept of “Claiming” and used MQTT as the transport so that we could leverage a single connection for RainMaker and Insights. However, for applications that only want to use ESP Insights without ESP RainMaker, the claiming concept is an unnecessary step.

We now support HTTPs/REST API based Insights communication as well. Instead of using unique X.509 key-certificate pairs, a single HTTP API key can now be used by multiple nodes , thereby simplifying the setup and management of devices.

(Note that given the always-on connectivity of MQTT, some of the features that we introduce in the future may be more optimised for MQTT based transport)

Enabling Insights with HTTPS

Enabling ESP Insights in your firmware is now as easy as adding the following lines of code in your application:

This code should get your started, and your application can start reporting ESP Insights data to the Insights cloud. As you may have noticed, all you will need is the unique ESP_INSIGHTS_AUTH_KEY to be embedded in your firmware. Here is how you can obtain the ESP Insights Auth Key:

Once device boots up look for following logs that contains the Node ID. You may use this node id for monitoring node logs, crashes, reboots, metrics, and variables through the ESP Insights Dashboard.

I (4161) esp_insights: =========================================
I (4171) esp_insights: Insights enabled for Node ID 246F2880371C
I (4181) esp_insights: =========================================

For more details please check our getting started guide.

Group Analytics

So far ESP Insights supported diagnostics at a node level, reporting any abnormal events as well as metrics and point in time variable values for individual nodes.

The latest version of ESP Insights introduces group analytics, that provides insights into how groups of your devices are performing. You may group devices based on the Project, Project Versions or Event categories.

  • Compare the firmware insights across different versions of a project
  • A very high-level insights starting at a project level and can be drilled down to an event category
Fig 1. Group Analytics at Application Firmware Project and version

A few examples of group based data that you can observe:

  • Counts grouped by events (for e.g., Errors) for a particular project and version, in a selected time interval. You can change the interval to hour or aggregate to week or a month interval
Fig. 1 : Error counts for Project version 1.0 aggregated at hourly frequency.
  • Distribution of event counts (for e.g., crash counts) for a group in a selected time interval.
  • Distribution of event (for e.g. Reboot reason) counts for a group in a selected time interval. You can drill down further on the reboot reason and get to the nodes which are reporting the particular event.
  • Count of unique nodes which are reporting certain events (reboots / errors / warnings) in a selected time interval
  • List of top nodes having the most number of events and can be drilled down to category level

We are working on some more exciting features on top of ESP Insights, stay tuned to hear more!

--

--