Caveat: September 2025 ... 

I compiled the source error-free on Arduino IDE 2.3.6 using the Espressif 2.3.0 (latest) core files. PLEASE note that the pre-COVID code had some serious versioning issues with ESP32 Dev modules core files, so the note in the source is being left in just as a historical warning.

On Windows-11 Pro 24H2 fully patched, here are the compile stats:

Sketch uses 321623 bytes (24%) of program storage space. Maximum is 1310720 bytes.
Global variables use 21048 bytes (6%) of dynamic memory, leaving 306632 bytes for local variables. Maximum is 327680 bytes.

ILI9341 connections:

Not every developer will agree with my thinking, but I do not use external library references; that is, I pull in ALL library code into the sketch folder.

This does two things:

  • a) protects my programs from mucking by external library providers
  • b) allows me to make personal modifications to the embedded library code without concerns of my changes being overwritten by the IDE on updating.

I became accustomed to this methodology while doing PSOC development and find it most beneficial to my sanity. (Adafruit, are you listening?) The final ZIP represents a self-contained project without need to specify the dependencies.

IDE view of the Tab listings ...

The other thing to note, there are two (2) .INO files. This is perfectly OK as the Arduino build system has rules that makes this kind of organization okey dokey.