How to access T-Display-S3 storage for images

I bought a LILYGO T-Display-S3 ESP32-S3 1.9-inch ST7789 LCD Display Touchable Screen Development Board TTGO Wireless Module.

I wanted to install a cam and then have it take a picture and display it on the TFT display. Unfortunately, it seems the only camera you can connect is a SPI camera, which in turn directly disables my ability to use the TFT.

Anyway, I am trying to figure out how I can store an image on the microcontrollers internal 16M storage? Is it the SPIFFS library?

I can’t believe they made such a cool toy but didn’t add an SD card to port to it.

Even if the camera was conencted via SPI (MISO, MOSI, SCLK, CS), SPI is a bus and you can add new devices by each giving them a new (software-controlled) CS pin. All other pins are shared. The board has plenty free pins for that.

You can dedicate some of the 16MByte of storage of this chip to be a filesystem of your choosing, standard is SPIFFS, but LittleFS and FatFS (aka FAT32 or exFAT) can also be used and configured per documentation. The partition table decides how much flash space is allocated to each component of the firmware or filesystem. For example, if you choose this table with

board_build.partitions = large_spiffs_16MB.csv

You’ll have 6.875 MByte allocated to a filesystem. You can also write your own tables. Example code for each filesystem can be found in the Arduino-ESP32 repository.