-
Notifications
You must be signed in to change notification settings - Fork 214
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Config for ESP32Uno with RM68090 2.8" touch (MCUfriends copy) #297
Comments
Problem identified
SolutionESP32 workarounds need to be added to GUIslice_drv_adagfx.cpp (including the following!!) This will allow the code to compile for the ESP32 using DRV_DISP_ADAGFX, DRV_DISP_ADAGFX_MCUFRIEND, and DRV_TOUCH_ADA_SIMPLE drivers. (target device set to Arduino) Please implement this to a new config file eg. ESP32_RM68090I have spoken with the guys from the TFT_eSPI, they have no interest in finding workarounds for this diplay, so I reccomend a config file for this perticular display in conjunction with ESP32 that doesnt rely on their drivers, using the workaround outlined here |
@MickTheMechanic -- my apologies as I had overlooked this issue. Not sure if it is still useful for you, but I have now integrated a change into the master branch that auto-detects ESP32 and enables the 10b ADC workaround for the Adafruit 4-wire touch mode. You did mention that you'd like to see a specific config file for the ESP32 RM68090. If this is still helpful, please attach the version you are working to this ticket so that I can integrate it or see how it differs from existing config files. If further changes are needed to the core GUIslice library for this, please let me know and I'll reopen the issue. thanks! |
Hi, yeah its not super important to me anymore, but generally somewhat important nonetheless. These partictular screens are sold on Banggood and are quite common, but there are no functioning drivers in the TFT_ESPI library, making using them with an ESP32 a bit tricky. The first problem was regarding touch, but it looks like you have that covered. The second problem was a custom config was needed. The workaround was to use ard_mcufriends config file, but this means you have to set the target device to Arduino in the builder, and SPIFFS will not be supported. Im not sure if you want to pursue this further, perhaps a note in the config file outlining the workaround and its limitations would be enough. |
HI I am now to this, |
Describe the bug
*unable to calibrate simple 4 wire resistive touch *
Device hardware
ard-adagfx-MCUFriends or ESPi_TFT
Checklist to try first
Most display/touch issues can be identified by working through the steps in the Configuring GUIslice guide. all walkthroughs have been followed and extensive googleing has been carried out to no avail....
Please confirm whether:
Touch works using Adafruit Touchscreen demo (raw data from all areas of the screen can be observed via seriell monitor.
Touch pins are as follows: XP: 14, XM: 4, YP: 15, YM: 27 (confirmed via calibration example in MCUFriends library)
All other pins are standard UNO shield layout/ESPuno layout.
Expected behavior
A. I should be able to select MCUFriends 4Wire config file, define touch pins, and screen should function with touch.
or
B. I should be able to configure the ESPi_TFT library, select and configure esp-tftespi-default-simple and display should function with touch
Actual behavior
only a small area of the touch screen is active, and calibration does not work.
Error Message
*using the touch caillibration Sketch provided in GUISlice the error message „rotation not detected, wrong pins“ is shown. Only a small area of the Touch Pad is active and not all boxes can be selected. *
Additional info
*In order for ard-shld-mcufriend_4wire to function, the ADA_simple_touch workarounds need to be copied from GUIslice_drv_tft_espi.cpp and added to GUIslice_drv_adagfx.cpp, otherwise code is unable to compile for the ESP32 due to port names? and pin definitions?
Once completed the display functions, however touch cannot be calibrated. Its as though touch only works on the lower right corner. The best way I can explain it is the touch screen has shrunk, you can select any part of the display, but only from a small area of the touch screen.
The display will also function if GUIslice_drv_tft_espi.h is used, however DRV_DISP_ADAGFX and DRV_DISP_ADAGFX_MCUFRIEND need to be defined in esp-tftespi-default-simple.h, otherwise display shows only a white screen. (also unable to funtion externally using TFT_eSPI library. (I suspect forcing the display ID could be a workaround for this, but I havent found a way to configure it yet), however the bug remains.
All the ADA_touch_simple workarounds are defined.
Using either configure files with default settings results in a black screen thats pixelated in different colors (I suspect this is due to sharing pins between display and touch, as outlined in the ADA_Simple_touch workarounds). However, ard-shld-mcufriend.h works. *
The text was updated successfully, but these errors were encountered: