Add timing histogram code to track. Test with tablet being turned on and off. Determine if freezing is in connect, reading the http request or writing the gauges.
If freezing in reading the http request, make a reentrant version that maintains state and bugs out if nothing to do.
If freezing in connect, this changes timeouts and retries to reduce the problem.
include <utility/w5100.h>
W5100.setRetransmissionTime(2000); // 200mS
W5100.setRetransmissionCount(3); // or less
Likely TCP timeout in pollForHttpRequest
Add timing histogram code to track. Test with tablet being turned on and off. Determine if freezing is in connect, reading the http request or writing the gauges.
If freezing in reading the http request, make a reentrant version that maintains state and bugs out if nothing to do.
If freezing in connect, this changes timeouts and retries to reduce the problem.
include <utility/w5100.h>
W5100.setRetransmissionTime(2000); // 200mS W5100.setRetransmissionCount(3); // or less
Writing timeouts will be trickier to fix.