Code Monkey home page Code Monkey logo

ttgo-t-display's People

Contributors

flyandi avatar jessekoester avatar joennuh avatar lewisxhe avatar lilygo avatar simukdev avatar timstrasser avatar wolodia-m avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ttgo-t-display's Issues

Battery fully charged.

Is there a way in code to tell when the battery is fully charged ? I know there is the blue LED but I want to display fully charged on the screen because when in the box I made you can't see the LED.
Thanks
Simon

Rx/Tx pins ?

Hello, i bought this module to have "versatility" with his screen and buttons.

I have not yet an USB-C cable and i wanted to begin programming the board.

Is there a way to program it, without pluging it with USB (other ESP32 can be flashed by Rx/Tx pins, for exemple) ?

Thanks !

How to make the display work?

I tried running the exact example code using the forked TFT_eSPI but the only thing I could get working is the backlight.
I also used the correct User Setup but it just wouldn't work.
I could use some guidance with this.

Eagle library

Did anyone create the library for use of this board in an Eagle project?

If not, I'm going to do it and share ;)

Missing license

Could you add license file for this repository? Then the condition of using this repository/source code will be clear.

What do you think about MIT?

Implementing UART connection

Hello, I'm new to this.

With Arduino UNO, there are TX and RX pins for me to establish UART connection.

Which pins can I use to for TX and RX? Thanks.

SPI Pins (27,26, 25, 33) do NOT work with external SPI device

I am trying to get working a CC1101 with my T-Display.
Someone suggested to device the following pins as SPI for teh connection between the T-Display and the NRF24...
MISO: 27
MOSI: 26
SCK: 25
CSN: 33
GDO0: 2
GDO2: 37
But it still doesn't work.

Anyone has some suggestions?

Is my TTGO-T-Display dead or is there a magic trick?

Hello,

I just received a TTGO-T-Display. It wasn't doing anything when I plugged it (which isn't normal from what I read), so I decided to push a sample.

Whatever I build from this repo, I always have a part of the screen black, a part green, and a part kind of ugly but with a bit of content.

IMG_6957

IMG_6959

IMG_6960

Is there a magic trick I missed? Is my screen dead? Could it be another component?

Two things I noticed too:

  • the blue LED is not fully bright, it blinks a little bit
  • the USB C isn't reversible. it works only in one way, it doesn't power up on the other way
    Is that normal?

Thanks!

Sleep function doesn't with this github sketch

So when I first received and tested this TTGO if you long pressed btn1 you would get a "Press again to wake up" message and then the device would go to sleep. However after flashing the device with the sketch found here and you long press btn1 you will still get the sleep message but the device only stays off for 5 seconds before rebooting its self. any ideas on how to fix this?
image

TTGO_T_Display.h file missing

I am new to the ESP32 world and cannot get the display on the TTGO board to work.

The directions and YOUTUBE video show the below step

2.TFT_eSPI settings

  • Install TFT_eSPI, in TFT_eSPI/User_Setup_Select.h, comment out the default settings #include <User_Setup.h> , select #include <User_Setups/Setup25_TTGO_T_Display.h> , Save Settings.

The Setup25_TTGO_T_Display.h file is missing from The Git repository. The YouTube video clearly shows the file in the there.

Am I missing something?

5V without USB from battery only?

Hello, I have a project where I need to power a device with minimum 4.5V. (CO2 Sensor)
But the 5V pin will drop to battery voltage when there is no USB Power.
Is there any way to have 5V from.the battery with this board?
Or I should buy a small battery boost DCDC converter that I connect in parallel to the battery?
Also VBAT and BAT are the same ?

TTGO-T-Display.ino Example is broken

It seems that the example no longer works with the latest version of the TFT_eSPI library.

I get a display that only seems to fill 1/3 of the screen with the rest of it being 'garbage'. The display also seems to be rotated incorrectly and the background is white instead of black.

How to power the board?

I want to power the board without the USB.

Should I provide 5V to the "5V" pin?
Should I provide 3.3V to one of the "3V3" pins?
Would any of the above work?

I guess that if I provide 3.3V, the battery won't charge. But will it charge if I provide 5V?
It looks to me that only USB, through the TP4054, would enable the battery to charge...

M

SPI PINs - connect to SPI device

It is possible connect external SPI sensor - C1101 433MHz transceiver?
On generic ESP32 I use pins:
18 (SCK)
19 (MISO)
23 (MOSI)
5 (SS)
Thank you

Centering Text on Display

Hello, I've setup screen width and size (240x135) in UserSetup.h and when I use setTextDatum as MC_DATUM it still doesn't center the text in the screen. Are there any function to center text or what should be the setCursor parameters so that text is always centered?

I2C Connection problem

Hello, I'm new using ESP, but I'm trying to use ADS with the T-display and I can't make the connection. I am using the example of the I2C Scanner and I believe that the wires are correct according to the datasheet.

`
#include <Wire.h>

void setup() {
Wire.begin();

Serial.begin(9600);
while (!Serial); // Leonardo: wait for serial monitor
Serial.println("\nI2C Scanner");
}

void loop() {
int nDevices = 0;

Serial.println("Scanning...");

for (byte address = 1; address < 127; ++address) {
Wire.beginTransmission(address);
byte error = Wire.endTransmission();

if (error == 0) {
  Serial.print("I2C device found at address 0x");
  if (address < 16) {
  Serial.print("0");
  }
  Serial.print(address, HEX);
  Serial.println("  !");

  ++nDevices;
} else if (error == 4) {
  Serial.print("Unknown error at address 0x");
  if (address < 16) {
  Serial.print("0");
  }
  Serial.println(address, HEX);
}

}
if (nDevices == 0) {
Serial.println("No I2C devices found\n");
} else {
Serial.println("done\n");
}
delay(5000); // Wait 5 seconds for next scan
}
`

WhatsApp Image 2020-12-26 at 17 30 32

Can I use any pins as rx/tx for softwareserial?

Hi, I'm struggling to connect Sim800l to this board. Using arduino environment and tinyGSM via softwareserial (as no hardwareserial is pinned-out and available at this particular board? or?..) Tried different pin pairs as rx/tx with no success.

PIN14 / 80MHZ SPI

So I am looking at the schematics and for some unknown reason the only pin to make 80MHZ IOMUX SPI possible is taken away for voltage measurement.

Is there any particular reason for that or is that something that LilyGo potential could change so we could use 80MHZ SPI .. for radical fast reading / writing speeds on SPI?

image

Thanks,

esp-idf driver

I've had good success using T-Display with this library:
https://github.com/jeremyjh/ESP32_TFT_library

Using the following config::

#define DEFAULT_DISP_TYPE           DISP_TYPE_ST7789V
#define DEFAULT_TFT_DISPLAY_WIDTH   240
#define DEFAULT_TFT_DISPLAY_HEIGHT  320
#define DISP_COLOR_BITS_24          0x66
#define DEFAULT_GAMMA_CURVE         0
#define DEFAULT_SPI_CLOCK           20000000
#define TFT_INVERT_ROTATION         0
#define TFT_INVERT_ROTATION1        1
#define TFT_RGB_BGR                 0x00

#define USE_TOUCH	TOUCH_TYPE_NONE

#define PIN_NUM_MISO 0		// SPI MISO
#define PIN_NUM_MOSI 19		// SPI MOSI
#define PIN_NUM_CLK  18		// SPI CLOCK pin
#define PIN_NUM_CS   5		// Display CS pin
#define PIN_NUM_DC   16		// Display command/data pin
#define PIN_NUM_TCS   0		// Touch screen CS pin

#define PIN_NUM_RST  23  	// GPIO used for RESET control
#define PIN_NUM_BCKL  4     // GPIO used for backlight control
#define PIN_BCKL_ON   1     // GPIO value for backlight ON
#define PIN_BCKL_OFF  0     // GPIO value for backlight OFF

The following is needed for correct setup:

TFT_setRotation(LANDSCAPE);
TFT_setclipwin(40,52,40+240,52+135); // This maps a memory region to the actual size of 
                                                              // display (240x135). From now on Coords(0,0) is upper 
                                                              // left corner
TFT_invertDisplay(1);                             // Get colors right
TFT_fillScreen(TFT_BLACK);                   // Clear screen

Install instructions do not work for Arduino IDE

Using the Arduino IDE I followed the instructions in the README but there are some issues:

  1. The Button2 library is not in the Arduino library manager, you have to download manually.
  2. Then the compile fails with the following errors:
C:\src\arduino\TTGO-T-Display\TTGO-T-Display.ino: In function 'void button_init()':

TTGO-T-Display:50:30: error: no matching function for call to 'Button2::Button2()'

     pBtns = new Button2 [args];

                              ^

In file included from C:\src\arduino\TTGO-T-Display\TTGO-T-Display.ino:5:0:

C:\src\arduino\libraries\LennartHennigs-Button2-4105e70\src/Button2.h:55:5: note: candidate: Button2::Button2(byte, byte, unsigned int)

     Button2(byte attachTo, byte buttonMode = INPUT_PULLUP, unsigned int debounceTimeout = DEBOUNCE_MS);

     ^

C:\src\arduino\libraries\LennartHennigs-Button2-4105e70\src/Button2.h:55:5: note:   candidate expects 3 arguments, 0 provided

C:\src\arduino\libraries\LennartHennigs-Button2-4105e70\src/Button2.h:29:7: note: candidate: constexpr Button2::Button2(const Button2&)

 class Button2 {

       ^

C:\src\arduino\libraries\LennartHennigs-Button2-4105e70\src/Button2.h:29:7: note:   candidate expects 1 argument, 0 provided

C:\src\arduino\libraries\LennartHennigs-Button2-4105e70\src/Button2.h:29:7: note: candidate: constexpr Button2::Button2(Button2&&)

C:\src\arduino\libraries\LennartHennigs-Button2-4105e70\src/Button2.h:29:7: note:   candidate expects 1 argument, 0 provided

C:\src\arduino\TTGO-T-Display\TTGO-T-Display.ino: In lambda function:

TTGO-T-Display:62:26: error: 'TFT_DISPOFF' was not declared in this scope

         tft.writecommand(TFT_DISPOFF);

                          ^

TTGO-T-Display:63:26: error: 'TFT_SLPIN' was not declared in this scope

         tft.writecommand(TFT_SLPIN);

                          ^

Multiple libraries were found for "WiFi.h"
 Used: C:\Users\myuser\Documents\ArduinoData\packages\esp32\hardware\esp32\1.0.2\libraries\WiFi
 Not used: C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.21.0_x86__mdqgnx93n4wtt\libraries\WiFi
exit status 1
no matching function for call to 'Button2::Button2()'

OTA upgrade does not work!

Hello,
I've tested the standard ESP32 OTA Webserver update with T-Display and I cannot access the upgrade web page.
I've tested the same config with another ESP32 board, working fine.
I've tested ping over WiFi with T-Display, working fine too.

any help will be appreciated.
PS: ESP32 OTAWebupdate sketch this
ESP32_OTA.txt

PWR EN functionality

I've been trying to figure out the functionality the PWR EN, but your schematics is difficult to figure out in this regard, and its not documented anywhere.

As far as i could figure out, the PWR EN "pin" is supposed to shut off the 3.3V regulator when powered by battery (and usb is disconected), but it does not seem to work (i've tried toggling it)

A fatal error occurred: MD5 of file does not match data in flash! Help!!

I'm having this problem when i try to program my TTGO-T-Display.
I dont know how to fix.
Can you help me?

Arduino:1.8.9 (Windows 10), Tarjeta:"ESP32 Dev Module, Disabled, Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS), 240MHz (WiFi/BT), QIO, 80MHz, 4MB (32Mb), 115200, None"

El Sketch usa 214633 bytes (16%) del espacio de almacenamiento de programa. El máximo es 1310720 bytes.
Las variables Globales usan 15460 bytes (4%) de la memoria dinámica, dejando 312220 bytes para las variables locales. El máximo es 327680 bytes.
esptool.py v2.6
Serial port COM6
Connecting........__
Chip is ESP32D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
MAC: 24:6f:28:99:99:d8
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 8192 bytes to 47...

Writing at 0x0000e000... (100 %)
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.0 seconds (effective 4681.2 kbit/s)...
File md5: e6327541e2dc394ca2c3b3280ac0f39f
Flash md5: 0829f71740aab1ab98b33eae21dee122
MD5 of 0xFF is 84d04c9d6cc8ef35bf825d51a5277699

A fatal error occurred: MD5 of file does not match data in flash!
A fatal error occurred: MD5 of file does not match data in flash!

Unable to read the battery voltage when USB is disconnected

When power is connected via USB, I can read the ADC value on pin 34, which is the BAT_ADC signal on the schematic and is half the supply voltage.

However, if I connect a LiPo battery, and disconnect the USB, this pin always returns a value of 0.

I have tried setting pin 14, which is PWR_EN as an output, and setting both HIGH, and LOW, but neither of these change the value I'm reading from pin 34 - it always reads 0 when running from battery.

How can I read the battery voltage when running from the battery without the USB connected?

Auto power-on when powered trough battery or 3.3v/5v pins

Is it possible to get the board to power-on automatically when powered trough the battery or 3.3v/5v pins ? At least my board requires a press of the reset button for it to start up.

When powered trough USB-C it turns on automatically, but unfortunately I can't use that in the final installation.

display cyrillic text

Hello. it's need to display some Russian/Ukrainian text. Are there any fonts for it? Thanks!

Guru Meditation Error when using print() in macro

Hello,
I got this problem while using the board in an webradio application ( Edzelf / ESP32-Radio ). It works fine as long as I do not try to print text information, e.g. the VS1053 decoder board works properly, the web-based interface is up and running and the diplay is recognized and draws the lines defining the segments correctly. Means the radio station plays and I can see the volume bar, but no text is shown.

The display-related definitions are given below:

#include <TFT_eSPI.h>

// Color definitions for the screen 
#define BLACK   TFT_BLACK
#define BLUE    TFT_BLUE
#define RED     TFT_RED
#define GREEN   TFT_GREEN
#define CYAN    TFT_CYAN
#define MAGENTA TFT_MAGENTA
#define YELLOW  TFT_YELLOW
#define WHITE   TFT_WHITE

TFT_eSPI* tft = NULL ;

// Various macro's to mimic the display functions
#define dsp_setRotation()       tft->setRotation ( 1 )             // Use landscape format (3 for upside down)
#define dsp_fillRect(a,b,c,d,e) tft->fillRect ( a, b, c, d, e )    // Fill a rectange
#define dsp_print(a)            tft->print ( a )                   // Print a string 
#define dsp_println(b)          tft->println ( b )                 // Print a string followed by newline 
#define dsp_setTextSize(a)      tft->setTextSize( a )              // Set the text size
#define dsp_setTextColor(a)     tft->setTextColor(a)             // Set the text color
#define dsp_setCursor(a,b)      tft->setCursor ( a, b)             // Position the cursor
#define dsp_erase()             tft->fillScreen ( RED )            // Clear the screen
#define dsp_getwidth()          tft->width()                               // Get width of screen
#define dsp_getheight()         tft->height()                                // Get height of screen
#define dsp_update()                                               // Updates to the physical screen
#define dsp_usesSPI()           true                               // Does use SPI

bool dsp_begin()
{
  tft = new TFT_eSPI() ; 
  tft->init() ;
  return ( tft != NULL ) ;
  // return false ;
}

#define TFTSECS 4
scrseg_struct     tftdata[TFTSECS] =                        // Screen divided in 3 segments + 1 overlay
{                                                           // One text line is 8 pixels
  { false, WHITE,   0,  8, "" },                            // 1 top line
  { false, CYAN,   20, 64, "" },                            // 8 lines in the middle
  { false, YELLOW, 90, 32, "" },                            // 4 lines at the bottom
  { false, GREEN,  90, 32, "" }                             // 4 lines at the bottom for rotary encoder
} ;

The problem pops up if I added the definitions for dsp_print(a); dsp_println(b) as already shown above (to get all the informations on the station etc.). If I try to activate it, the whole thing fails and the messages are:

D: Start display
Guru Meditation Error: Core  1 panic'ed (LoadProhibited). Exception was unhandled.
Core 1 register dump:
PC      : 0x400df880  PS      : 0x00060f30  A0      : 0x80158f24  A1      : 0x3ffb1eb0  
A2      : 0x3ffb8590  A3      : 0x00000053  A4      : 0x0000001f  A5      : 0x00000053  
A6      : 0x3ff65090  A7      : 0x3ff6508c  A8      : 0xfefefefe  A9      : 0x3ffb1e90  
A10     : 0x00000053  A11     : 0x00000053  A12     : 0x3ffb86e8  A13     : 0x00000000  
A14     : 0x00000000  A15     : 0x3ffb0060  SAR     : 0x0000001c  EXCCAUSE: 0x0000001c  
EXCVADDR: 0xfefeff08  LBEG    : 0x400014fd  LEND    : 0x4000150d  LCOUNT  : 0xfffffffa  

Backtrace: 0x400df880:0x3ffb1eb0 0x40158f21:0x3ffb1ee0 0x400e2036:0x3ffb1f00 0x400e2119:0x3ffb1f20 0x400d8bdd:0x3ffb1f40 0x400e2fef:0x3ffb1fb0 0x4008a951:0x3ffb1fd0

Rebooting...

The exception decoder then yields:

PC: 0x400df880: TFT_eSPI::write(unsigned char) at D:\Broesel\Arduino\sketches\libraries\TFT_eSPI\TFT_eSPI.cpp line 3615
EXCVADDR: 0xfefeff08

Decoding stack results
0x400df880: TFT_eSPI::write(unsigned char) at D:\Broesel\Arduino\sketches\libraries\TFT_eSPI\TFT_eSPI.cpp line 3615
0x40158f21: Print::write(unsigned char const*, unsigned int) at C:\Users\Broesel\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\cores\esp32\Print.cpp line 42
0x400e2036: Print::write(char const*) at C:\Users\Broesel\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\cores\esp32/Print.h line 66
0x400e2119: Print::print(char const*) at C:\Users\Broesel\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\cores\esp32\Print.cpp line 89
0x400d8bdd: setup() at D:\Broesel\Arduino\sketches\ESP32-Radio-TTGOv2\Esp32_radio/Esp32_radio.ino line 3364
0x400e2fef: loopTask(void*) at C:\Users\Broesel\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\cores\esp32\main.cpp line 14
0x4008a951: vPortTaskWrapper at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/freertos/port.c line 143

With my limited knowledge, the problem is triggered when the display is initialized and the first time the dsp_print() is called (last line is Esp32_radio.ino line 3364):

dbgprint ( "Start display" ) ;
    if ( dsp_begin() )                                   // Init display
    {
      dsp_setRotation() ;                                // Use landscape format
      dsp_erase() ;                                      // Clear screen
      dsp_setTextSize ( 2 ) ;                            // Small character font
      dsp_setTextColor ( WHITE ) ;                       // Info in white
      dsp_setCursor ( 0, 0 ) ;                           // Top of screen
      dsp_print ( "Starting..." "\n" "Version:" ) ;

As the Esp32_radio code works with anumber of different displays that are already supported, I assume that the error is likely somewhere in the TFT_eSPI.cpp. The referenced line 3615 is:
if (uniCode > pgm_read_word(&gfxFont->last )) return 1;

as part of the code loading custom fonts:

#ifdef LOAD_GFXFF
  } // Custom GFX font
  else {
    if(utf8 == '\n') {
      cursor_x  = 0;
      cursor_y += (int16_t)textsize *
                  (uint8_t)pgm_read_byte(&gfxFont->yAdvance);
    }
    else {
      if (uniCode > pgm_read_word(&gfxFont->last )) return 1;
      if (uniCode < pgm_read_word(&gfxFont->first)) return 1;

      uint16_t   c2    = uniCode - pgm_read_word(&gfxFont->first);
      GFXglyph *glyph = &(((GFXglyph *)pgm_read_dword(&gfxFont->glyph))[c2]);
      uint8_t   w     = pgm_read_byte(&glyph->width),
                h     = pgm_read_byte(&glyph->height);
      if((w > 0) && (h > 0)) { // Is there an associated bitmap?
        int16_t xo = (int8_t)pgm_read_byte(&glyph->xOffset);
        if(textwrapX && ((cursor_x + textsize * (xo + w)) > this->width())) {
          // Drawing character would go off right edge; wrap to new line
          cursor_x  = 0;
          cursor_y += (int16_t)textsize *
                      (uint8_t)pgm_read_byte(&gfxFont->yAdvance);
        }
        if (textwrapY && (cursor_y >= (int32_t)this->height())) cursor_y = 0;
        drawChar(cursor_x, cursor_y, uniCode, textcolor, textbgcolor, textsize);
      }
      cursor_x += pgm_read_byte(&glyph->xAdvance) * (int16_t)textsize;
    }
  }
#endif // LOAD_GFXFF

If there is any helpful hint what might trigger this issue, I would be very grateful.

Tiny mistake on pinout picture

Hello, I was checking the pinout diagram and I think I found a mistake. Instead of GPIO14 (in purple) it should be GPIO 13

image

just like in the schematics:

image

出厂测试代码wifi扫描不支持中文SSID

测试 factory test 程序,如果扫描到包含中文SSID时,程序会重启。

btn press wifi scan
Found 14 net
[1]:TP-LINK_56de98(-35)
[2]:mi_dreambox_2_plus(-46)
[3]:zhangchang(-65)
[4]:CMCC-Gy5t(-67)
[5]:H3C_dreambox(-73)
[6]:mi_dreambox_2(-77)
[7]:灏忕背鍏变韩WiFi_D851(-78)
Guru Meditation Error: Core 1 panic'ed (Interrupt wdt timeout on CPU1)
Core 1 register dump:
PC : 0x4000c271 PS : 0x00060034 A0 : 0x8008b843 A1 : 0x3ffb1c80
A2 : 0x3ffb0058 A3 : 0x3f41d548 A4 : 0x00000014 A5 : 0x3ffbe790
A6 : 0x3ffbe7d8 A7 : 0x00000001 A8 : 0x00000001 A9 : 0x3f41d549
A10 : 0x000000a5 A11 : 0x3ffb0060 A12 : 0x8008c44b A13 : 0x3ffbe760
A14 : 0x00000008 A15 : 0x00000001 SAR : 0x0000001a EXCCAUSE: 0x00000006
EXCVADDR: 0x00000000 LBEG : 0x400d35e0 LEND : 0x400d35f1 LCOUNT : 0x00000004

Backtrace: 0x4000c271:0x3ffb1c80 0x4008b840:0x3ffb1ca0 0x4008d484:0x3ffb1cc0 0x4008d43a:0x00000001

Core 0 register dump:
PC : 0x40145746 PS : 0x00060634 A0 : 0x800dca1a A1 : 0x3ffbc060
A2 : 0x00000000 A3 : 0x00000001 A4 : 0x00000000 A5 : 0x00000001
A6 : 0x00060120 A7 : 0x00000000 A8 : 0x800db096 A9 : 0x3ffbc030
A10 : 0x00000000 A11 : 0x40086fd0 A12 : 0x00060120 A13 : 0x3ffbb700
A14 : 0x00000000 A15 : 0x3ffbbd60 SAR : 0x00000000 EXCCAUSE: 0x00000006
EXCVADDR: 0x00000000 LBEG : 0x00000000 LEND : 0x00000000 LCOUNT : 0x00000000

Backtrace: 0x40145746:0x3ffbc060 0x400dca17:0x3ffbc080 0x4008c439:0x3ffbc0a0 0x4008ac55:0x3ffbc0c0

Rebooting...
ets Jun 8 2016 00:22:57

rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1216
ho 0 tail 12 room 4
load:0x40078000,len:9720
ho 0 tail 12 room 4
load:0x40080400,len:6352
entry 0x400806b8
Start

layout TTGO-T-Display Vs arduino R3

Hello,
As I m a newbie in your world , i bought an arduino Kit based on Arduino R3 and begin some exercice it's funny.
i also receive TTGO-T-Display to a friend and would like to make the same exercices ( like i do with my Arduino).
the problem is that i don't find the matching "ports " between the two cards.
Is someone can help me with this?

thanks in advance

Georges
arduino-uno-pinout-diagram vs
pinmap

ps : sorry for my writting , long time i didn't write in english...

Connect Second Display

Hi,

I have a project that requires two displays.

I am using the following mappings and using ILI9488 display :

#define TFT_MISO 19 // (leave TFT SDO disconnected if other SPI devices share MISO)
#define TFT_MOSI 26 //23
#define TFT_SCLK 17 //18
#define TFT_CS 15 // Chip select control pin
#define TFT_DC 33 // 2 // Data Command control pin
#define TFT_RST 27 //4 // Reset pin (could connect to RST pin)

Can you please help me use the second display? Both displays dont have to be on at the same time. EG integrated small display can be turned off but if both can be on at the same time then that would make life easier.

Thanks!

ESP32 S2 upgrade?

Any thoughts getting the S2 to work with the TTGO-T-Display and Native USB?

ESP32 Flash Size

This is a stupid question but I assume that the TTGO's ESP32 size is the standard 4MB?

How to measure battery voltage?

uint16_t v1 = analogRead(34);
uint16_t v2 = analogRead(14);

float battery_voltage = ((float)v1 / 4095.0) * 2.0 * 3.3 * (1100 / 1000.0);
float other_voltage = ((float)v2 / 4095.0) * 2.0 * 3.3 * (1100 / 1000.0);

String voltage = String(battery_voltage) + "V " + String(other_voltage) + "V";
tft.setTextDatum(BR_DATUM);
tft.drawString(voltage, tft.width(), tft.height() - 5);

This gives me only USB power and constant 7.2V for pin 14 (whatever that is).
How can I track LiPo battery voltage/capacity?

Board go to freeze after many "esp-light-sleep" calls

Hi, after many hours with light-sleep calls in the loop, the board go to freeze and the only action for turn on it is with reset button, in the log output with verbose level 5, I haven't anything, only it freezing without any error or panic core message, if I comment the light-sleep call, the device works for many days without any problem.

The complete code is here

A brief is:

void loop() {
    bmeLoop();                      // the BME680 sensor loop.
    wifiLoop();                     // check wifi or reconnect it.
    bleLoop();                      // notify data to phone or BLE device
    apiLoop();                      // CanAir.io API publication.
    influxDbLoop();                 // influxDB publication.
    otaLoop();                      // check for firmware updates.
    guiLoop();                      // gui ttf refresh methods.

    // save battery after phone disconnected:
    if (!bleIsConnected()) 
        espShallowSleep(5000);  <== F A I L    W I T H    I T
}

void espShallowSleep(int ms) {
    esp_sleep_enable_timer_wakeup(ms * 1000);
    esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_ON);
    esp_light_sleep_start();
}

How to turn off the device when powered through battery?

Thank you for this display / device. It's very convenient and easy to use!

I was wondering how I can turn off the device completely when powered through battery?
Is there a way to automatically shut off when battery voltage reaches some level?

In the worst case I can put mechanical on / off switch, but that requires me to redo the wiring from the batteries. Any help on this would be appreciated!

Conneting an RC522 & microSD card modules

Hello, I'm curious to know something. I do not own yet a TTGO T-Display, however, according to the pinout diagram, MOSI (pin 19), is connected to the OLED display of TTGO, however, the RC522 and microSD card modules also require a MOSI pin. Therefore, what should I do in this case?

Function of LED

In looking at the schematic, the LED (it says RED but mine is blue?) seems to be connected to the CHRG line on the TP4054 LiPo charger IC. If I am reading the datasheet of the TP4054 correctly, the CHRG will go high once the charge cycle is complete, which should cause the LED to turn off. I have left my 1600mah LiPO battery connected for 36 hours and the LED never went off. Is my assumption wrong?

attachInterrupt() not working as expected

Using the following code, when pressing the right button the btnRightClick() function is executed more than once. I expected to be executed only once.

void IRAM_ATTR btnRightClick(){
Serial.println("Right button pressed. ");
}

void IRAM_ATTR btnLeftClick(){
Serial.println("Left button pressed. ");
}

void setup()
{
Serial.begin(115200);
pinMode(35, INPUT); //without this line the right button is not working
attachInterrupt(35, btnRightClick, FALLING);
attachInterrupt(0, btnLeftClick, FALLING);
}

void loop()
{
//empty loop
}

GPIOs dont work as generic

Using 38-27 for a 4x4 keypad, but they dont seem to work as generic ESP32 GPIOS
Using "Keypad" library
Same code works fine with DEVKIT V1 and NODEMCU 32S

const byte rows = 4; //four rows
const byte cols = 3; //three columns
char keys[rows][cols] = {
  {'1','2','3'},
  {'4','5','6'},
  {'7','8','9'},
  {'*','0','#'}
};
byte rowPins[rows] = {27, 26, 25, 33}; //connect to the row pinouts of the keypad
byte colPins[cols] = {32, 39, 38}; //connect to the column pinouts of the keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, rows, cols );

PWR_EN on IO14

I'm not sure what the "PWR_EN" is for...

It is connected to IO14
In the demo code, there is a "#define ADC_EN 14" but this ADC_EN is not used further...

It is related to the ADC ? I don't think so. To measure the voltage of battery, this is IO34.
It looks like it is triggering one MOSFET which is linked to the battery?

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.