The great Heap Quest and other developments


Haven’t posted for few days, but things are nevertheless moving along well. Here are the major developments:

  1. I’ve upgraded to the new ESP8266/arduino core 2.4.1. This replaces 2.4.0-rc2 which had some issues with communications. The new core supports VPN connections better and just seems to do a better job of flow control. There were only a couple of minor incompatibilities and they appear to be backward compatible changes anyway. Look for this core in the next firmware release.

  2. With the new core came an increase in available heap. Apparently the folks at Espressive did some housecleaning and I was pleasantly surprised to find that with the new core, heap seemed to increase by 3K-4K. This put available heap into a range where I can think about using the TLS capabilities available in the asyncTCP client. So I’ve started my own housecleaning project and have the heap up to the “low twenties”. There is still a little low hanging fruit and I hope to be solidly in the 25K range with a medium configuration. So then I’ll start looking at TLS for influxDB posting and probably the preliminary OTA transaction (the actual download is already signed and secure).

  3. I’ve received word that IoTaWatt has passed all of the product safety tests for a low-voltage device. Tests were conducted against the US, Canada, and EU standards. Already have FCC part B compliance for US and Canada, and there is only a minor test remaining to supplement an outdated ESP12S certification for full compliance with the CE RED directive. Components are on the way and hope to offer a fully UL tested and approved, regulatory compliant product with CTs, VTs and power supplies.

  4. I’ve been investigating cloud facilities for influxDB/grafana along with templated configuration choices and pre-configured dashboards on grafana. Because influx is schema-less, the whole thing can be driven from the IoTaWatt end, with no need to, for instance, configure inputs, input processes, and feeds. Grafana has the ability to dynamically configure choices based on embedded queries of the database. So you should be able to use your own naming, within guidelines, and get useful visualizations from grafana without knowing anything about how it all works. Well see.