Skip to content

EXT_RAM_NOINIT_ATTR random data on reboot #7448

Closed as not planned
Closed as not planned
@handmade0octopus

Description

@handmade0octopus

Board

Not board specific

Device Description

WROOVER module, custom board

Hardware Configuration

Not hardware specific

Version

v2.0.5

IDE Name

PlatformIO

Operating System

Windows 10

Flash frequency

80MHz

PSRAM enabled

yes

Upload speed

921600

Description

quick question on WROOVER module with PSRAM

I use flags in platformio:

    -DBOARD_HAS_PSRAM=1
    -DCORE_DEBUG_LEVEL=1
    -DPCB_VER=40
#    -DCONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY=1 # tested with and without
    -DCONFIG_SPIRAM_ALLOW_NOINIT_SEG_EXTERNAL_MEMORY=1

And I try to use this type of data with EXT_RAM_NOINIT_ATTR flag

struct DABuffer {
    uint32_t timestamp;
    uint32_t digital;
    int16_t analog[ANALOG_SIZE];
};

uint32_t EXT_RAM_NOINIT_ATTR bufferSize = 0;
DABuffer EXT_RAM_NOINIT_ATTR buffer[BUFFER_SIZE];

Problem is on each reboot (either from RST pin or software reset):

This is example of data check during runtime:

[ 10469][E][Devices.hpp:107] addToBuffer(): Fps  10.10 Buffsize:   100 Stmp: 10435 D:   00000000   A0: 25829 9.697 A1:     0 0.000 A2:     0 0.000 A3:     0 0.000

Log from random corrupted data after each reboot

[   524][E][Devices.hpp:120] devicesTask(): bufferSize -1431657526  Stamp: 1073470136  Digi[0] 003FF797  Anal[0] -2153 -0.808

[   513][E][Devices.hpp:120] devicesTask(): bufferSize 0  Stamp: 1073470136  Digi[0] 003F8E3F  Anal[0] -29733 -11.163

Note I am using esp_spiram_writeback_cache() every so often and before issuing ESP.restart();

Many thanks for helping me how can I debug this!

Sketch

void restart() {
	esp_spiram_writeback_cache();
	delay(1);
	ESP.restart();
}

Debug Message

In description

Other Steps to Reproduce

No response

I have checked existing issues, online documentation and the Troubleshooting Guide

  • I confirm I have checked existing issues, online documentation and Troubleshooting guide.

Metadata

Metadata

Assignees

Labels

Status: Needs investigationWe need to do some research before taking next steps on this issue

Type

No type

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions