Git Product home page Git Product logo

esp-idf-parallel-tft's Issues

QUESTION: SPI or parallel for new designs?

Not sure how else to post this, so I hope this isn't too off-topic. Let's assume that I'm designing a new board (or two) based on an ESP32 module. I have one of the WROOM devboards - but the new design will likely use an S3 when they drop.

Assuming there are enough free GPIOs left, is parallel preferable over SPI? (I'm only enough to remember the days that we thought parallel was the Dog's Danglers and Serial was consigned to telephones. (Data skew? What's that?! Electrons will never travel that fast and IBM PCs will never penetrate the home!)

So yeah, serial has a place - but I'm curious, is there any particular reason to use SPI over parallel on a new design (one that I can just drop a TFT into?)

My only experience is with the Arduino framework and that largely insulates us from the nitty-gritty but this needs I2S and some serious beef so short of going full SBC with all the uses they come with, I figured the ESP32 is perfect.

Add ST7789 support

ST7789-FT5336

ST7789

20210922234012

I bought the ST7789 parallel port 8-bit screen on Taobao or AliExpress, and it was successfully lit.

d2f6f9ae444728de5152e9667d7ea8fc.1.mp4

20210922234549

This is my attempt on ESP32S2

My code comes from the official warehouse of Espressif which supports ST7789. I believe yours should also support it. I hope you can transplant it.

20210923001431

20210923001722

20210923001934

https://github.com/espressif/esp-iot-solution

How to connect ESP-32

Thank you for working on such an important project,
I am very new to displays and ESP-32, Could you please help me to connect my display and run a simple test
image

image

and my board :

image

Thank you so much

0xFFFF White color appears to be mint green on ILI9486

Enviroment

  • Development Kit: ESP32-DevKitC
  • Kit version: v4
  • Module or chip used: ESP32-WROOM-32D
  • IDF version: ESP-IDF v4.1 5ef1b3900
  • Build System: CMake
  • Operating System: Windows 10 Pro 19042.746
  • Power Supply: USB

Problem Description

On 3.5inch Arduino Display-UNO, the color 0xFFFF appears to be mint green.
微信图片_20210203140122
微信图片_20210203140129
微信图片_20210203140132
微信图片_20210203140135
微信图片_20210203140139

  • The screen uses ILI9486 driver.
  • Default Pin configuration

Touch input for st7793. open smart 16pin

First of all I wanted to thank you for your work.

I have a question.

I have a open smart 3.5 tft display with this setup.

(Screen pins-> ESP32 pins)
D0 -> 12
D1 -> 13
D2 -> 26
D3 -> 25
D4 -> 17
D5 -> 19
D6 -> 27
D7 -> 14
RD -> 2
WR -> 4
RS -> 15
CS -> 33
RESET -> 32

Which are the correct pins on each parameter for this to work? Especially the parameter adc_yp and adc_xm
image

Add support for R61529

2022-03-13 11-36-27屏幕截图

https://github.com/JadedTuna/lcd-dma-issue

2022-03-13 11-38-31屏幕截图

https://github.com/espressif/esp-idf/issues/8085

2022-03-13 11-33-22屏幕截图

https://github.com/daumemo/IPS_LCD_R61529_FT6236_Arduino_eSPI_Test

2022-03-13 11-40-49屏幕截图

https://github.com/moononournation/Arduino_GFX

@nopnop2002 Hello, I wonder if you have any plans for R61529 support?

QUESTION: open-smart ILI9320 not support

i got a tft lcd ili9320
and Wemos D1 ESP32, i have changed RS CS RST pins from 35,34,36 to 15,33,32
menuconfig select 9320, but is doesn't work, always white.
Is it not suitable for OPEN-SMART Products? should i giveup to use another lcd or any recommend driver type?

usb camera with lcd

Can i use for the usb camera live streaming on 8 bit parallel line interface ili9486 lcd
which function will be use for the live streaming of this library ?

How to find 4-wire resistance touchscreen feature

You can't tell at a glance if your TFT has a 4-wire resistor touchscreen feature.

An easy way to find the 4-wire resistance touchscreen feature is to perform this sketch using UNO.

https://github.com/Seeed-Studio/Touch_Screen_Driver

#include <stdint.h>
#include <SeeedTouchScreen.h> 

// for OpenSmart 16pin TFT
#if 0
#define YP A2   // must be an analog pin, use "An" notation!(LCD_WR)
#define XM A1   // must be an analog pin, use "An" notation!(LCD_RS)
#define YM 14   // can be a digital pin, this is A0(LCD_D7)
#define XP 17   // can be a digital pin, this is A3(LCD_D6) 
#endif

// for OpenSmart Shield
#if 0
#define YP A1   // must be an analog pin, use "An" notation!(LCD_WR)
#define XM A2   // must be an analog pin, use "An" notation!(LCD_RS)
#define YM 7    // can be a digital pin, this is D7(LCD_D7)
#define XP 6    // can be a digital pin, this is D6(LCD_D6) 
#endif

// for ELEGOO Shield
// for Generic ILI9341
#if 1
#define YP A3  // must be an analog pin, use "An" notation!(LCD_CS)
#define XM A2  // must be an analog pin, use "An" notation!(LCD_RS)
#define YM 9   // can be a digital pin(LCD_D1)
#define XP 8   // can be a digital pin(LCD_D0)
#endif



// For better pressure precision, we need to know the resistance
// between X+ and X- Use any multimeter to read it
// The 2.8" TFT Touch shield has 300 ohms across the X plate
TouchScreen ts = TouchScreen(XP, YP, XM, YM);

void setup(void) {
  Serial.begin(115200);
}

void loop(void) {
  // a point object holds x y and z coordinates
  Point p = ts.getPoint();

  if (p.z > __PRESURE) {
     Serial.print("Raw X = "); Serial.print(p.x);
     Serial.print("\tRaw Y = "); Serial.print(p.y);
     Serial.print("\tPressure = "); Serial.println(p.z);
  }
  
  delay(100);
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.