Can only access 154kb of boron's 256kb memory

The boron is advertised as having 256kb of ram, but I am only able to access 154kb of it according to the particle console. Does anyone know how to access the other 100kb of ram?

Also when loading in an empty project on DeviceOS 1.5.2 System.freeMemory() returns 54904. Where is the other 200kb of ram going?

image

The amount of RAM that’s already used by the device OS itself is not part of the 154KB but still has to fit into the 256KB (not sure why the console uses kB = 1000 byte rather than the commonly used KB = 1024byte tho’)

I am not sure I understand what you are saying ScruffR, does DeviceOs take 200kb of the 256kb?

Also switching to DeviceOs 2.0.0-rc.4 on a blank project changes System.freeMemory() to 103000

SYSTEM_THREAD(ENABLED);
SYSTEM_MODE(SEMI_AUTOMATIC);

void setup()
{
  Serial.begin(9600);
  Particle.connect();
}

void loop(){
  delay(200);
  Serial.println(System.freeMemory());
}

The rest of the RAM is indeed use by Device OS as ScruffR said. This includes the cloud connection, interfaces to hardware, FreeRTOS, the BLE radio support, etc…

The reason there is more free RAM in Device OS 2.0.0-rc.4 is that mesh networking (802.15.4) was removed after Device OS 1.5.4, and that used a significant amount of RAM.

Can’t wait for DeviceOS 2.0 to fully release!

Is there any way to disable the memory allocation for mesh networking in 1.5.2?

@dustout, no there is not.

Sounds good, thank you everyone for the help :slight_smile: Also super excited for DeviceOS 2.0 to release!