Skip to content

Commit

Permalink
[T-Deck] Fixed the issue that some devices may experience low voltage…
Browse files Browse the repository at this point in the history
… reset due to excessive startup current (meshtastic#5607)

Co-authored-by: Ben Meadors <[email protected]>
  • Loading branch information
lewisxhe and thebentern authored Dec 19, 2024
1 parent 8c6eec5 commit 63091b7
Showing 1 changed file with 11 additions and 8 deletions.
19 changes: 11 additions & 8 deletions src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -237,6 +237,17 @@ void printInfo()
#ifndef PIO_UNIT_TESTING
void setup()
{
#if defined(T_DECK)
// GPIO10 manages all peripheral power supplies
// Turn on peripheral power immediately after MUC starts.
// If some boards are turned on late, ESP32 will reset due to low voltage.
// ESP32-C3(Keyboard) , MAX98357A(Audio Power Amplifier) ,
// TF Card , Display backlight(AW9364DNR) , AN48841B(Trackball) , ES7210(Decoder)
pinMode(KB_POWERON, OUTPUT);
digitalWrite(KB_POWERON, HIGH);
delay(100);
#endif

concurrency::hasBeenSetup = true;
#if ARCH_PORTDUINO
SPISettings spiSettings(settingsMap[spiSpeed], MSBFIRST, SPI_MODE0);
Expand Down Expand Up @@ -409,14 +420,6 @@ void setup()
digitalWrite(AQ_SET_PIN, HIGH);
#endif

#if defined(T_DECK)
// enable keyboard
pinMode(KB_POWERON, OUTPUT);
digitalWrite(KB_POWERON, HIGH);
// There needs to be a delay after power on, give LILYGO-KEYBOARD some startup time
// otherwise keyboard and touch screen will not work
delay(200);
#endif

// Currently only the tbeam has a PMU
// PMU initialization needs to be placed before i2c scanning
Expand Down

0 comments on commit 63091b7

Please sign in to comment.