This branch fixes some scaling issues with the graphing. The original code saved and scaled graph points, so the original temperature data was lost. This means that if the graph scaled and then over time the scaling changed to be smaller, the graph would not re-scale correctly.
The solution implements some fixed point math, where temperatures are stored as int16 values of 1/10th temperature resolution. The scaling code is also updated to not loop through the data points when they are added, only when they are displayed. This should decrease the overhead, opening options in the future for more features. Also decreases code size a bit, now ~400 bytes free rather than the ~20 on master.
This branch fixes some scaling issues with the graphing. The original code saved and scaled graph points, so the original temperature data was lost. This means that if the graph scaled and then over time the scaling changed to be smaller, the graph would not re-scale correctly.
The solution implements some fixed point math, where temperatures are stored as int16 values of 1/10th temperature resolution. The scaling code is also updated to not loop through the data points when they are added, only when they are displayed. This should decrease the overhead, opening options in the future for more features. Also decreases code size a bit, now ~400 bytes free rather than the ~20 on master.