Hello good morning everybody.
Right to the point: What can I do if compiling exactly the same sketch on two different PC´s do not lead to the same result ?
I have one desktop PC with windows 11 and one Laptop also windows 11 both installed with IDE 1.8.19. I wrote a very short sketch which uses a 2.4" ILI9341 TFT display.
// TFT SPI display test with Adafruit and TFT_eSPI libraries
// processor XIAO ESP32-C mini
#include "SPI.h"
#include "Adafruit_GFX.h"
#include "Adafruit_ILI9341.h"
#include "TFT_eSPI.h"
#define TFT_DC D3
#define TFT_CS D7
#define TFT_MOSI D10
#define TFT_CLK D8
#define TFT_RST D2
#define TFT_MISO -1
// Use hardware SPI
//Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_RST);
TFT_eSPI tft = TFT_eSPI();
void setup() {
tft.begin();
tft.fillScreen(TFT_MAGENTA);
}
void loop(void)
{
tft.setTextColor(TFT_YELLOW);
tft.setTextSize(2);
tft.setCursor(10, 80);
tft.print(F("MINIMUM TEST"));
tft.setCursor(10, 120);
tft.print(F("Galactico"));
delay(3000);
tft.setTextColor(TFT_WHITE);
tft.fillScreen(TFT_RED);
tft.setCursor(30,30);
tft.println("RED SCREEN");
delay(1000);
tft.fillScreen(TFT_GREEN);
tft.setCursor(30,30);
tft.println("GREEN SCREEN");
delay(1000);
tft.fillScreen(TFT_BLUE);
tft.setCursor(30,30);
tft.println("BLUE SCREEN");
delay(1000);
tft.fillScreen(TFT_BLACK);
delay(1000);
tft.setCursor(10, 10);
tft.setTextColor(TFT_WHITE,TFT_BLACK); tft.setTextSize(1);
tft.println(F("Hello World!"));
tft.setCursor(10, 30);
tft.setTextSize(2);
tft.setTextColor(tft.color565(0xff, 0x00, 0x00));
tft.print(F("RED "));
tft.setTextColor(tft.color565(0x00, 0xff, 0x00));
tft.print(F("GREEN "));
tft.setTextColor(tft.color565(0x00, 0x00, 0xff));
tft.println(F("BLUE"));
delay(3000);
}
the User_Setup.h file is this one on both PC´s:
// See SetupX_Template.h for all options available
#define USER_SETUP_ID 1
#define ILI9341_DRIVER
#define TFT_MOSI D10 // MOSI Data Pin
#define TFT_MISO D9 // MISO Data Pin
#define TFT_SCLK D8 // Clock Pin
#define TFT_CS D7 // Chip select control pin D7
#define TFT_DC D3 // Data Command control pin
#define TFT_RST D2 // Reset pin (could connect to NodeMCU RST, see next line)
//#define TFT_RST -1 // Set TFT_RST to -1 if the display RESET is connected to NodeMCU RST or 3.3V
#define LOAD_GLCD // Font 1. Original Adafruit 8 pixel font needs ~1820 bytes in FLASH
#define LOAD_FONT2 // Font 2. Small 16 pixel high font, needs ~3534 bytes in FLASH, 96 characters
#define LOAD_FONT4 // Font 4. Medium 26 pixel high font, needs ~5848 bytes in FLASH, 96 characters
#define LOAD_FONT6 // Font 6. Large 48 pixel font, needs ~2666 bytes in FLASH, only characters 1234567890:-.apm
#define LOAD_FONT7 // Font 7. 7 segment 48 pixel font, needs ~2438 bytes in FLASH, only characters 1234567890:.
#define LOAD_FONT8 // Font 8. Large 75 pixel font needs ~3256 bytes in FLASH, only characters 1234567890:-.
#define LOAD_GFXFF // FreeFonts. Include access to the 48 Adafruit_GFX free fonts FF1 to FF48 and custom fonts
#define SMOOTH_FONT
// #define SPI_FREQUENCY 27000000
#define SPI_FREQUENCY 40000000
// #define SPI_FREQUENCY 80000000
#define SPI_READ_FREQUENCY 20000000
#define SPI_TOUCH_FREQUENCY 2500000
// #define SUPPORT_TRANSACTIONS
I spent the whole weekend to investigate why the TFT_eSPI library works on my PC but not on my laptop. The Adafruit is OK on both.
I tried to reinstall the TFT_eSPI library on the laptop, no success.
I tried to reinstall the whole IDE on my laptop, no success.
The strangest thing is that after uninstall the IDE and reinstall it again some previosly installed libraries (not only the standard libraries) including the TFT_eSPI remain on the system exactly as before. I know this because all the changes on the User_Setup.h files are still there. The folder of the libraries is like it should be on C:\Users\Super\OneDrive\Documents\Arduino
My question is: What exactly is the file- and registry structure of this Arduino IDE and how can I remove it COMPLETELY from my laptop in order to install a new clean version of the IDE 1.8.19 ?
thanks for your help.