FPP Remote Sync without SD Card
Is your feature request related to a problem? Please describe. Hello. First of all, thank you very much for this project. I think it's really great. Thank you for all your hard work.
I would like to know if it is possible to implement the FSEQ File to Play Play Remote Sequence function without an SD card? The reason for this is that I would like to implement a project in which several ESP32S3s run synchronously with music.
Currently, I am doing this via DDP. However, this always leads to synchronization problems because all the information has to be sent via Wi-Fi.
Here is an example of my project:
https://youtu.be/rVhzxbZ-sdg?si=dEwQjmXqkgbyQT-7
My sequences are not very large. Only 41 pixels are connected to one of my ESP32s and the sequence only lasts 3 minutes.
The ESP32S3 has 8M PSRAM & 8MB flash. So theoretically, there would be enough space to store the sequence. Unfortunately, I don't have space to install an SD card in my project because my space is very limited. However, my sequence is only about 800KB for 15 sticks.
Describe the solution you'd like I would like to have the option of writing the FSEQ file directly to the ESP without an SD card.
Thank you very much for your feedback.
You can modify the fseq handlers to use littlefs space. Even there, there is only about 20kb free.
Thank you very much for your quick reply.
What about using the Seeed Studio XIAO ESP32-S3 Plus? It has on-chip 8M PSRAM & 16MB Flash.
Is there enough space? The problem is that I don't have more space in the sticks than for a XIAO ESP32.
The problem is the PSRAM cannot be used. The interrupts on the rmt device crashes when I turn on PSRAM support. They may have fixed this in the C series. I dont have any to test with.
Ah, OK, I see.
Thank you very much.
But the S3 Plus has 16MB flash, not PSRAM.
That means, theoretically, the Plus would still have 8MB flash available for the FSEQ file? Or am I misunderstanding something here?
By the way, which is the right board to flash a XIAO ESP32S3? Which board should be selected here in the online installer?
Yes it would have the extra space. Yes you could create a platform definition that uses littlefs to hold the fseq files. It will take a few changes in the FileManager to do the redirect. It might also be possible to create a partition that can hold the fseq files and not impact the ESPS functionality.
Thank you very much for your reply.
Unfortunately, I am not able to adapt the project myself so that it would work.
Could you create a project for the XIAO ESP32-S3 with 8MB flash and the XIAO ESP32-S3 Plus with 16MB flash?
That would be great. Thank you very much.
Still thinking about how to do this. It wont be in 2025. I will pick this up in 2026.
OK, cool, thank you very much.
Yes, theoretically, there would still be 12 MB free on an ESP with 16 MB flash. You could put these 12 MB in a new partition and mount it instead of the SD card.
That way, the entire ESP code could be left as it is.
Not quite. If that was all then I would do it tomorrow. The built in flash uses littlefs. The SD card uses SDFat. All of the feq management functions use the SD Fat functions. I will need to add a layer between the generic file management functions and the technology specific functions. While this is common on your PC, space limited systems tend to remove such abstraction layers in the interests of size and speed.
Ahh, I see.
But thank you for taking this on. I think it would be a cool addition.
And with 12 MB, it has space for 8-10 sequences.
But it would be nice if the whole project as it is now would already run on the S3.
But I understand that it's a lot of work to rewrite it.
Nevertheless, thank you very much for your work.
I have created a generic S3 platform definition that should work. No way to test at the moment.
With my PR https://github.com/forkineye/ESPixelStick/pull/891 the S3 works good. I run it with 3 WS2812B strips.