Inkplate 6COLOR Google Calendar example fails to compile with DRAM overflow

Customer:

I’m not experienced with this and may have a beginner question. When compiling the example project “Inkplate6COLOR_Google_Calendar” without changing anything, I get this error:

c:/users/osmrh/appdata/local/arduino15/packages/inkplate_boards/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: C:\Users\[user]\AppData\Local\Temp\arduino\sketches\ CFBA52E60F9180504/Inkplate6COLOR_Google_Calendar.ino.elf section `.dram0.bss' will not fit in region `dram0_0_seg'

c:/users/osmrh/appdata/local/arduino15/packages/inkplate_boards/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: DRAM segment data does not fit.

c:/users/osmrh/appdata/local/arduino15/packages/inkplate_boards/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: DRAM segment data does not fit.

c:/users/osmrh/appdata/local/arduino15/packages/inkplate_boards/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: region `dram0_0_seg' overflowed by 1384 bytes

collect2.exe: error: ld returned 1 exit status

exit status 1

Compilation error: exit status 1

I tried this on a clean system with the same error. Can you help?

Original message (German)

ich bin kein Profi und habe vielleicht auch nur ein Anfänger Problem.

Beim kompilieren des Beispiel Projektes “Inkplate6COLOR_Google_Calendar”, ohne irgendetwas zu verändern, erhalte ich nachfolgende Fehlermeldung.

###############

c:/users/osmrh/appdata/local/arduino15/packages/inkplate_boards/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: C:\Users[user]\AppData\Local\Temp\arduino\sketches\ CFBA52E60F9180504/Inkplate6COLOR_Google_Calendar.ino.elf section .dram0.bss' will not fit in region dram0_0_seg’

c:/users/osmrh/appdata/local/arduino15/packages/inkplate_boards/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: DRAM segment data does not fit.

c:/users/osmrh/appdata/local/arduino15/packages/inkplate_boards/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: DRAM segment data does not fit.

c:/users/osmrh/appdata/local/arduino15/packages/inkplate_boards/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: region `dram0_0_seg’ overflowed by 1384 bytes

collect2.exe: error: ld returned 1 exit status

exit status 1

Compilation error: exit status 1

################

Ich habe es auch auf einem “jungfräulichen” System versucht. Die gleiche Fehlermeldung. Bitte um Rat / Unterstützung.

Mit freundlichem Gruß

[name removed]

Originally submitted via email support on 19 April 2024. Migrated to the forum for community visibility.

Soldered Support:

We’ve received reports that the Google Calendar example doesn’t work, and it will likely be rewritten soon.

Try changing this line: data = (char *)ps_malloc(2000000LL);

To a lower amount, for example: data = (char *)ps_malloc(1500000LL);

Are you selecting the correct board definition? You can also try changing the partition scheme in the Tools menu—try “8M with spiffs” or “huge app”.

I’d also recommend actually entering your WiFi credentials and using an empty Google Calendar to test. The code should at least compile.

I actually had trouble compiling this code myself, and adding WiFi credentials and the calendar URL (at “// CHANGE HERE ---------------”) fixed this issue.

Try it and let me know!

Original message (German)

es tut mir leid zu hören, dass du dieses Problem hast. Wir haben einige Berichte darüber erhalten, dass das Google Calendar Beispiel nicht funktioniert, und es wird wahrscheinlich bald neu geschrieben werden.

Versuche diese Zeile zu ändern: data = (char *)ps_malloc(2000000LL);

Zu einer geringeren Menge, wie zum Beispiel: data = (char *)ps_malloc(1500000LL);

Wählst du die richtige Board-Definition aus? Du kannst auch versuchen, das Partitionsschema im Menü “Werkzeuge” zu ändern, probiere “8M with spiffs” oder “huge app” aus.

Ich würde auch empfehlen, tatsächlich deine WLAN-Daten einzugeben und einen leeren Google-Kalender zu verwenden, nur um es auszuprobieren. Der Code sollte zumindest kompilieren.

Ich glaube, ich hatte tatsächlich Probleme beim Kompilieren dieses Codes selbst, und das Hinzufügen von WLAN-Daten und der Kalender-URL (bei “// CHANGE HERE ---------------”) hat dieses Problem behoben.

Probiere es aus und lass es mich wissen!

Customer:

I tried Partition Scheme “8M with spiff (3MB APP/1.5MB SPIFFS)” and it still doesn’t compile.

I tried the code change data = (char *)ps_malloc(1500000LL); with Partition Scheme “Huge APP (3MB No OTA/1MB SPIFFS)” and it still doesn’t compile.

I tried the code change data = (char *)ps_malloc(1500000LL); with Partition Scheme “8M with spiff (3MB APP/1.5MB SPIFFS)” and it still doesn’t compile.

None of these approaches worked. I’ll have to wait for the updated code.

Soldered Support:

I just tried compiling this myself and ran into the same problem, so it’s not your fault. The example uses an outdated method to get the data which requires a lot of memory. The example will be updated. You’ll have to wait for the next version, but hopefully you can find other examples that are useful.