Low Memory issue

I am new to the Arduino world and I am attempting to Flash my UNO board for use with a project CNC machine. I wen to GITHUB and downloaded GRBL and uploaded it to the IDE. When I Verified the code I get the following message:

Sketch uses 29762 bytes (92%) of program storage space. Maximum is 32256 bytes.
Global variables use 1633 bytes (79%) of dynamic memory, leaving 415 bytes for local variables. Maximum is 2048 bytes.
Low memory available, stability problems may occur.

What is the memory which it being referred too? The UNO Board or my pc? How do I fix this?
Here is the text in the IDE Window. I am not sure how to attach the actual code to this question.

This sketch compiles and uploads Grbl to your 328p-based Arduino!

To use:

  • First make sure you have imported Grbl source code into your Arduino
    IDE. There are details on our Github website on how to do this.

  • Select your Arduino Board and Serial Port in the Tools drop-down menu.
    NOTE: Grbl only officially supports 328p-based Arduinos, like the Uno.
    Using other boards will likely not work!

  • Then just click 'Upload'. That's it!

For advanced users:
If you'd like to see what else Grbl can do, there are some additional
options for customization and features you can enable or disable.
Navigate your file system to where the Arduino IDE has stored the Grbl
source code files, open the 'config.h' file in your favorite text
editor. Inside are dozens of feature descriptions and #defines. Simply
comment or uncomment the #defines or alter their assigned values, save
your changes, and then click 'Upload' here.

Copyright (c) 2015 Sungeun K. Jeon
Released under the MIT-license. See license.txt for details.

#include <grbl.h>

// Do not alter this file!

It is referring to the RAM on the UNO board. Without seeing your code I cannot tell you exactly what is causing it but serial.print("string"); changing to serial.print(F("string")); will print it from flash and not store it in RAM. It will use a buffer in RAM but the messages are no longer stored in RAM. Try this and let us know how you did.

The F(" ") is a good start
see these notes on what it does

Thanks for the info. I guess I need to figure out how to read the code and figure out where it is located.

@ericv1960 , your topic has been moved to a more suitable section of the forum.

Since GRBL is "supported for the ATmega328p", presumably it works OK despite the "low memory" warning.
It IS just a warning that the 415 bytes of memory that are left after all of the static variables are defined MIGHT not be enough to satisfy the run-time needs of the program. ~400 bytes is a pretty significant amount, though, and as long as the program is well-constructed, everythign could be OK.

(unfortunately, running out of run-time memory can result in strange problems that are very difficult to debug...)

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.