justcallmekoko / ESP32Marauder

A suite of WiFi/Bluetooth offensive and defensive tools for the ESP32
4.95k stars 538 forks source link

Implementation of ST7735S Marauder Mini #250

Open david1111967 opened 1 year ago

david1111967 commented 1 year ago

Would it be possible to implement the TFT ST7735S which has the same pinout?

Thank you so much.

damian17pl commented 7 months ago

Hi, i have same question. tft 128x160 ST7735S spi Thanks

damian17pl commented 7 months ago

this starts working for me

define ST7735_DRIVER

define TFT_WIDTH 128

define TFT_HEIGHT 160

define ST7735_GREENTAB3

define TFT_BACKLIGHT_ON LOW// HIGH or LOW are options

// ###### EDIT THE PIN NUMBERS IN THE LINES FOLLOWING TO SUIT YOUR ESP32 SETUP ######

// For ESP32 Dev board (only tested with ILI9341 display) // The hardware SPI can be mapped to any pins

// #define TFT_MISO 19

define TOUCH_CS -1

define TFT_MOSI 23

define TFT_SCLK 18

define TFT_CS 15 // Chip select control pin

define TFT_DC 2 // Data Command control pin

define TFT_RST 4 // Reset pin (could connect to RST pin)

// #define TFT_RST -1 // Set TFT_RST to -1 if display RESET is connected to ESP32 board RST

define TFT_BL 32 // LED back-light (only for ST7789 with backlight control pin)

// ################################################################################## // // Section 3. Define the fonts that are to be used here // // ##################################################################################

// Comment out the #defines below with // to stop that font being loaded // The ESP8366 and ESP32 have plenty of memory so commenting out fonts is not // normally necessary. If all fonts are loaded the extra FLASH space required is // about 17Kbytes. To save FLASH space only enable the fonts you need!

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_FONT8N // Font 8. Alternative to Font 8 above, slightly narrower, so 3 digits fit a 160 pixel TFT

define LOAD_GFXFF // FreeFonts. Include access to the 48 Adafruit_GFX free fonts FF1 to FF48 and custom fonts

// Comment out the #define below to stop the SPIFFS filing system and smooth font code being loaded // this will save ~20kbytes of FLASH

define SMOOTH_FONT

// ################################################################################## // // Section 4. Other options // // ##################################################################################

// Define the SPI clock frequency, this affects the graphics rendering speed. Too // fast and the TFT driver will not keep up and display corruption appears. // With an ILI9341 display 40MHz works OK, 80MHz sometimes fails // With a ST7735 display more than 27MHz may not work (spurious pixels and lines) // With an ILI9163 display 27 MHz works OK.

// #define SPI_FREQUENCY 1000000 //#define SPI_FREQUENCY 5000000 // #define SPI_FREQUENCY 10000000 // #define SPI_FREQUENCY 20000000

define SPI_FREQUENCY 27000000 // Marauder // Actually sets it to 26.67MHz = 80/3

// #define SPI_FREQUENCY 40000000 // #define SPI_FREQUENCY 80000000

// Optional reduced SPI frequency for reading TFT

define SPI_READ_FREQUENCY 20000000

// The XPT2046 requires a lower SPI clock rate of 2.5MHz so we define that here:

define SPI_TOUCH_FREQUENCY 2500000

// The ESP32 has 2 free SPI ports i.e. VSPI and HSPI, the VSPI is the default. // If the VSPI port is in use and pins are not accessible (e.g. TTGO T-Beam) // then uncomment the following line: //#define USE_HSPI_PORT

// Comment out the following #define if "SPI Transactions" do not need to be // supported. When commented out the code size will be smaller and sketches will // run slightly faster, so leave it commented out unless you need it!

// Transaction support is needed to work with SD library but not needed with TFT_SdFat // Transaction support is required if other SPI devices are connected.

// Transactions are automatically enabled by the library for an ESP32 (to use HAL mutex) // so changing it here has no effect

// #define SUPPORT_TRANSACTIONS