Published Oct 6, 2021
Check it out, and find additional I/O inputs & relays on the Agrowtek Website
This release includes a process supervisor that periodically checks controller health, and restarts the server if required.
This guards against a code or configuration issue that causes the system to become unresponsive.
This doesn’t resolve the underlying issue, but gets the process running again so troubleshooting can continue.
A log warning of ‘Too many event listeners - possible memory leak’ prompted us to increase this from 10 to 50. This was not a memory leak, as a responsive IoT architecture makes use of more event listeners than the typical NodeJS server application.
The climate card used to restart upon configuration change, and is now stabilized across configuration changes. It was not necessary to restart this card on configuration change, and this change eliminated a visual flash of the card, and possible data delays and re-initialization issues.
This also fixes an issue where re-initialization could cause farenheight/celcius readings to swap, resulting in incorrect readings.
The issue of incorrect farenheight/celcius readings was fixed (above), and to guard against failures of this type in the future, validation has been added to prevent obviously incorrect values.