Out of memory in pressureSensor example



  • Hello,
    I've tried to use a pressureSensor example but Arduino nano clone didn't send any data. During compilation i have seen:

    Sketch uses 23,540 bytes (76%) of program storage space. Maximum is 30,720 bytes.
    Global variables use 1,677 bytes (81%) of dynamic memory, leaving 371 bytes for local variables. Maximum is 2,048 bytes.
    Low memory available, stability problems may occur.

    Serial was looped:
    send:sensor started, id 1
    send:sensor started, id 1
    send:sensor started, id 1
    send:sensor started, id 1

    I solved this problem by disable weather forecast. I suppose device run out of memory with enabled weather forecast.



  • @portals I had same issue - see this thread.

    Download latest library, disable debug and follow @BulldogLowell advice. I managed to get dynamic memory to 75% and that seems sufficient - it has been running for a week now without issues.



  • For now i found this solution:
    I changed a pressureAvg and pressureSamples to unsigned int. Next changed int forecast = sample(pressure) to int forecast = sample(pressure * 10) to avoid big precision lost. Sample function still may need correction but probably it is a good and easy way to fix this problem.

    Result:
    Sketch uses 18,636 bytes (60%) of program storage space. Maximum is 30,720 bytes.
    Global variables use 1,268 bytes (61%) of dynamic memory, leaving 780 bytes for local variables. Maximum is 2,048 bytes.


 

350
Online

8.3k
Users

9.1k
Topics

96.7k
Posts