Commit Graph

150 Commits

Author SHA1 Message Date
Bodmer 8c83eb84bd Add half duplex SDA read to ESP32 S2
Add half duplex SDA read to ESP32 S2 (tested)
Add new setup example for S2 and ST7735 with SDA pin
Remove commented out code
Raise version
2023-01-31 18:57:30 +00:00
Bodmer 3670949658 Update TFT_eSPI_ESP32_S3.h 2023-01-30 20:13:57 +00:00
Bodmer 5f5fef5419 Add DMA capability to ESP32 S3
DMA examples all tested and run as expected.
2023-01-23 14:32:01 +00:00
Bodmer c6d600b4a1 Fix #2297
The SSD1963 requires 18 bit colour in 3 bytes when an 8 bit parallel interface is used.

Added new PIO parallel code
2023-01-16 12:37:32 +00:00
Bodmer 90c3511913 Update for high GPIO 2023-01-13 16:20:11 +00:00
Bodmer f33836faac
T display s3 (#2317)
* Added T-DISPLAY-S3 i8080 support for more than 33 data pins (#2296)

* Modified the ESP32-S3 I8080 interface's support for data pins above 33 pins.

* Added T-DISPLAY-S3 support

* Update Setup206_LilyGo_T_Display_S3.h

* Eliminate need for TFT_DATA_PIN_OFFSET_EN in setup file

* Update TFT_eSPI_ESP32_S3.h

* Update User_Setup_Select.h

* Add new init sequence for LilyGo T Display S3

Co-authored-by: Micky <513673326@qq.com>
2023-01-13 01:33:57 +00:00
Bodmer d37f202b94
Arc test (#2316)
* Add smooth arc drawing function

Update ESP8266 architecture reference
Add pushMaskedImage() to render 16bpp images with a 1bpp mask (used for transparent PNG images plus with sprites)

New functions added using drawArc:
drawSmoothArc
drawSmoothCircle
drawSmoothRoundRect
New sqrt_fraction() added to improve smooth graphics performance on processors without a FPU (e.g. RP2040)

Faster alphaBlend() function added which retains 6bpp for green

Rename swap_coord() to transpose()

* Update TFT_eSPI.cpp

* Add arc examples
2023-01-13 01:31:57 +00:00
Bodmer 31a5ccd02e Make ESP32 family handle SPIFFS and LittleFS consistently 2022-11-29 21:55:53 +00:00
Bodmer 3c6dab0a52 Add ability to set the RP2040 parallel interface speed
// For RP2040 processor and 8 or 16 bit parallel displays:
// The parallel interface write cycle period is derived from a division of the CPU clock
// speed so scales with the processor clock. This means that the divider ratio may need
// to be increased when overclocking. I may also need to be adjusted dependant on the
// display controller type (ILI94341, HX8357C etc). If RP2040_PIO_CLK_DIV is not defined
// the library will set default values which may not suit your display.
// The display controller data sheet will specify the minimum write cycle period. The
// controllers often work reliably for shorter periods, however if the period is too short
// the display may not initialise or graphics will become corrupted.
// PIO write cycle frequency = (CPU clock/(4 * RP2040_PIO_CLK_DIV))
//#define RP2040_PIO_CLK_DIV 1 // 32ns write cycle at 125MHz CPU clock
#define RP2040_PIO_CLK_DIV 2 // 64ns write cycle at 125MHz CPU clock
//#define RP2040_PIO_CLK_DIV 3 // 96ns write cycle at 125MHz CPU clock
2022-11-05 18:12:28 +00:00
Bodmer 67e41c75f2 Allow ESP32 DC pin to be >31 2022-10-19 23:05:25 +01:00
Bodmer f94fb28737 Fix #1893
Problem has not been reproduced but names changes anyway.
2022-10-13 01:21:21 +01:00
Bodmer a3015f0090
Update pio_SPI_18bit.pio.h 2022-10-12 22:04:12 +01:00
Bodmer 7b529eef06
Update pio_SPI.pio.h 2022-10-12 22:03:14 +01:00
Bodmer 1e8eb39135
Update pio_SPI.pio.h 2022-10-12 22:02:49 +01:00
Bodmer 33be3070bf
Update pio_SPI.pio.h 2022-10-12 22:02:18 +01:00
Bodmer fc8228acae
Update pio_8bit_parallel.pio.h 2022-10-12 22:00:58 +01:00
Bodmer f1bae721c8
Update pio_16bit_parallel.pio.h 2022-10-12 22:00:19 +01:00
Bodmer 8b454bc19d
Delete pio_SPI_18bit.pio 2022-10-12 21:58:57 +01:00
Bodmer b2e0bd855c
Delete pio_16bit_parallel.pio 2022-10-12 21:58:42 +01:00
Bodmer 48499856ac
Delete pio_8bit_parallel.pio 2022-10-12 21:58:31 +01:00
Bodmer eea916d221
Delete pio_SPI.pio 2022-10-12 21:58:18 +01:00
Bodmer d1bb18bdde Various tweaks and bug fixes 2022-10-10 19:02:05 +01:00
Bodmer 7bf48bb179 Add 16 bit parallel for RP2040 processor
Correct legacy comments
Add ESP32 S3 parallel setup 70d
Add setups 105-107 for RP2040 with 16 bit display
Add file conversion notes to PNG array example
2022-05-16 19:58:05 +01:00
Bodmer 79b41bc833 Add #define to disable warnings (#1788)
// Define in setup to disable all #warnings in library (can be put in User_Setup_Select.h)
#define DISABLE_ALL_LIBRARY_WARNINGS
2022-04-27 22:28:52 +01:00
Bodmer f0ec6d22b3 Add ESP32 C3 support
Tested with Stamp C3
2022-04-27 21:57:11 +01:00
Bodmer e09230c9ac Raise version to 2.4.60 2022-04-25 02:29:08 +01:00
Bodmer d655e1383a
Merge pull request #1789 from Bodmer/ESP32_S3
ESP32 S3 (tested) plus ESP32 C3 (untested but compiles!) support added
2022-04-24 21:36:22 +01:00
Bodmer cfb4689c85 Patch for ESP32 C3 - may or may not work!
I do NOT have and ESP32 C3 to test with!
2022-04-24 04:00:36 +01:00
Bodmer 4e8af767bd Fix bug for ESP32 with 8 bit parallel SSD1963 2022-04-23 19:26:20 +01:00
Bodmer 89a2457ca9 Update to fix ESP32 S3 with ILI9488 2022-04-22 22:48:07 +01:00
Bodmer a1b6240370
Update TFT_eSPI_ESP32_S3.c 2022-04-22 21:54:13 +01:00
Bodmer f624d5059c
Update TFT_eSPI_ESP32.c 2022-04-22 21:27:33 +01:00
Bodmer 38b52a46a1
Update TFT_eSPI_ESP32.c 2022-04-22 21:26:22 +01:00
Bodmer 338d56ca42 S3 update 2022-04-22 02:44:10 +01:00
Bodmer d6544c9cb4 Fix #1767 and update ILI9481 init code option 8 2022-04-21 18:32:26 +01:00
Bodmer 7fc8b99b64 Add new background fill approach to smooth fonts
A new background rendering approach is used for smooth fonts which almost eliminates flicker. tft.print... can now be used with a background rendered for smooth fonts. Font_Demo_1/2/3... examples have been updated.
A new "docs" folder has been created and files moved there. The Tools folder now only contains support tools.

#1757 fixed by using Arduino calls.

A new USER_SETUP_ID parameter can be added to setup files and checked via a new verifySetupID(id); function.

Version raised to v2.4.50
2022-04-18 19:15:40 +01:00
Bodmer e52a0161e6 Fix #1760, fix #1763, fix #1764 2022-04-10 01:24:10 +01:00
Bodmer 0c935de08d RP2040 18bit PIO SPI update
Update RP2040 18bit PIO SPI code for 18 bit SPI displays (tested on  ILI9488)
Add ILI9342_DRIVER option for default landscape display.
2022-03-22 23:29:30 +00:00
Bodmer c92c82bed5
Fix #1601
A simple typo was the problem!
2022-03-20 20:14:42 +00:00
Bodmer 8480f39a9c Various updates - raise to version 2.4.43
Sprite class uses TFT_eSPI setBitmapColor - fn deleted
Small performance improvement to RP2040 SPI PIO
Typo corrections
Correct (unused) tft_Write_32 for STM32
Update HX8357D rotation code
Enable software reset for ILI9486
Add preliminary RM68120 support
2022-03-17 14:12:10 +00:00
Bodmer 6f4cf86834
Make compatible with existing port define 2022-03-05 00:22:32 +00:00
Frogomeli 4fd8aa8bd4
Allow generic driver to use a custom SPI port
I have a SeeedStudio Wio Terminal.
I'm using this lib in VS Code with PlatformIO but the lib
don't use the `SPICOM` variable when it's a generic device.

Steps to reproduce (using a Wio Terminal):
* Create a project using PlatformIO
* Add the TFT_eSPI lib to the project
* Add in the build flags these lines
```
build_flags = 
	-DUSER_SETUP_LOADED=1
	-DILI9341_DRIVER=1
	-DHASSPI=1
	-DSPICOM=LCD_SPI
	-DTFT_CS=LCD_SS_PIN
	-DTFT_DC=LCD_DC
	-DTFT_RST=LCD_RESET
	-DTFT_BL=LCD_BACKLIGHT
	-DTFT_BACKLIGHT_ON=HIGH
	-DTFT_BACKLINGT_V=2000
```
* Compile and transfer to the device
=> only backlight works
2022-03-04 17:31:42 +01:00
Bodmer b6708b65ae Fix #1667 2022-02-26 16:48:27 +00:00
Bodmer 284893c374 Update RP2040 PIO and smooth graphics fns 2022-02-22 21:12:33 +00:00
Bodmer de3c7490c2
Update TFT_eSPI_STM32.h 2022-02-12 19:11:17 +00:00
Bodmer f576040a32
Update TFT_eSPI_Generic.h 2022-02-12 19:09:57 +00:00
Bodmer 5b1b49f8ea
Update TFT_eSPI_ESP8266.h 2022-02-12 19:08:33 +00:00
Bodmer 51a6e25151
Update TFT_eSPI_ESP32.h 2022-02-12 19:06:55 +00:00
Bodmer 2aa4df5133
Update TFT_eSPI_RP2040.h 2022-02-12 19:05:33 +00:00
Bodmer 3086fad767
Update TFT_eSPI_STM32.h 2022-02-09 14:04:01 +00:00