which firmware / pio settings for Xiao S3?

Moderators: grovkillen, Stuntteam, TD-er

Post Reply
Message
Author
treii28
Normal user
Posts: 26
Joined: 03 May 2024, 18:31

which firmware / pio settings for Xiao S3?

#1 Post by treii28 » 15 May 2024, 21:30

I'm having a hard time trying to find a source to help me decode the various acronyms and abbreviations used in the naming of the binary files. I have a XIAO S3 with an ESP32S3 chip, 8MB Ram and 8MB PSRam. Do i want to use an 8M1M or a 16M8M image to maximize the use of it's memory? In platform io builds, I'm guessing the best-do-all fit would be max_ESP32s3_8M1M_LittleFS_OPI_PSRAM_CDC_ETH? is that correct?

SW

TD-er
Core team member
Posts: 9884
Joined: 01 Sep 2017, 22:13
Location: the Netherlands
Contact:

Re: which firmware / pio settings for Xiao S3?

#2 Post by TD-er » 15 May 2024, 22:43

8M1M is about flash size (8 MB) and file system size (1 MB)
LittleFS is the file system and since about half a year this also implies it is using the latest ESP-IDF5.1 SDK code

OPI PSRAM means the PSRAM is connected using 8 lanes (currently "OPI" wiring is only possible for ESP32-S3).
For ESP32-S3 it is really important to have the correct wiring to flash/PSRAM configured or else the device will enter a bootloop when flashing the wrong one.
ESP32-S3 with 8 MB PSRAM is always using the PSRAM wired in OPI mode.
N.B. there seems also to be some possible configuration where the flash isn't wired in quad-mode but in OPI mode, but so far I have not seen those yet myself. So I don't know if you also need to have some QIO/OPI , OPI/OPI or OPI/QIO builds (flash first, PSRAM second) Only time will tell if we need to make the file names even more cryptic :(

CDC means it does support a serial port via native USB on which you can run the ESPEasy console.
Only ESP32-S2/S3/C3/C6 currently support native USB serial ports.
But I think I can leave this CDC out from the filenames as we now have it enabled on each platform which does support it.

ETH means it does support Ethernet.
ESP32-classic does support RMII-interface LAN chips and SPI-interface LAN chips.
All other ESP32-variants only support SPI-interface LAN chips and only since ESP-IDF5.1 (thus only on builds for ESP32-xx with "LittleFS" in the name)

"MAX" means all plugins and controllers are included in the build.

treii28
Normal user
Posts: 26
Joined: 03 May 2024, 18:31

Re: which firmware / pio settings for Xiao S3?

#3 Post by treii28 » 16 May 2024, 18:02

UMmmmmm ok. So in english.... does that mean 'yes' or 'no'?

(I do appreciate the extra info, but I just need a 'starting point' to build upon -- I may need to try to hack out a custom plugin and I'm not a C guy to begin with. I already compiled and uploaded one with:

Code: Select all

default_envs = max_ESP32s3_8M1M_LittleFS_OPI_PSRAM_CDC_ETH
... and it appears to be 'working'. I'm just wondering if it's the best fit for a Xiao ESP32S3.

User avatar
Ath
Normal user
Posts: 4330
Joined: 10 Jun 2018, 12:06
Location: NL

Re: which firmware / pio settings for Xiao S3?

#4 Post by Ath » 16 May 2024, 20:27

Yes, that seems to be the right build for your ESP.

No need to change Platformio.ini (to prevent accidental committing that change), you can, from the PlatformIO menu (Alien icon) in VSCode, expand that build (yes, there are quite a few...), and compile it from there.
But to make development somewhat easier (and a little bit quicker), you can also choose to build the custom_ESP32s3_8M1M_LittleFSOPI_PSRAM_CDC_ETH, and add the plugin enabler to pre_custom_esp32.py (sorry, Python script... :lol:).

When not developing a new plugin it's much easier to install the required binary from https://TD-er.nl/ESPEasy though
/Ton (PayPal.me)

Post Reply

Who is online

Users browsing this forum: No registered users and 9 guests