Skip to content

Uploading SPIFFS to ESP8266 #209

@bsidhipong

Description

@bsidhipong

I'm using Simba framework with PlatformIO in Visual Studio Code, and from looking at various scripts and how they parse things, I've almost got SPIFFS generation and upload working. But not quite. Uploading SPIFFS image somehow killed my application, haha.

So, the upload script makes use of mkspiffs tool, and it parses the linker script, for example: "simba.flash.4m.ld", and it doesn't find the RE pattern it expects. The script looks for SPIFFS{start|end|block|page} and it's easy to add them. For example, the Espressif SDK defines them like so:

eagle.flash.4m1m.ld: (4MB flash, 1MB SPIFFS)
/* Flash Split for 4M chips /
/
sketch @0x40200000 (~1019KB) (1044464B) /
/
empty @0x402FEFF0 (~2052KB) (2101264B) /
/
spiffs @0x40500000 (~1004KB) (1028096B) /
/
eeprom @0x405FB000 (4KB) /
/
rfcal @0x405FC000 (4KB) /
/
wifi @0x405FD000 (12KB) */

MEMORY
{
dport0_0_seg : org = 0x3FF00000, len = 0x10
dram0_0_seg : org = 0x3FFE8000, len = 0x14000
iram1_0_seg : org = 0x40100000, len = 0x8000
irom0_0_seg : org = 0x40201010, len = 0xfeff0
}

PROVIDE ( _SPIFFS_start = 0x40500000 );
PROVIDE ( _SPIFFS_end = 0x405FB000 );
PROVIDE ( _SPIFFS_page = 0x100 );
PROVIDE ( _SPIFFS_block = 0x2000 );

INCLUDE "local.eagle.app.v6.common.ld"

I tried to add the LD symbols above, but that must not mesh with the #defines in Simba somewhere.

Can you point me in the right direction? Having the ability to pre-initialize SPIFFS and upload them on-demand via PlatformIO task would be very convenient.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions