Skip to content

Commit a38e6f1

Browse files
committed
add code for feather esp32-s2 (both versions)
1 parent 0aa5ddd commit a38e6f1

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

Adafruit_ESP32_Arduino_Demos/ESP32_sleeptest/ESP32_sleeptest.ino

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,29 @@ void enableInternalPower() {
5151
pinMode(NEOPIXEL_POWER, OUTPUT);
5252
digitalWrite(NEOPIXEL_POWER, HIGH);
5353
#endif
54+
55+
#if defined(ARDUINO_ADAFRUIT_FEATHER_ESP32S2)
56+
// turn on the I2C power by setting pin to opposite of 'rest state'
57+
pinMode(PIN_I2C_POWER, INPUT);
58+
delay(1);
59+
bool polarity = digitalRead(PIN_I2C_POWER);
60+
pinMode(PIN_I2C_POWER, OUTPUT);
61+
digitalWrite(PIN_I2C_POWER, !polarity);
62+
pinMode(NEOPIXEL_POWER, OUTPUT);
63+
digitalWrite(NEOPIXEL_POWER, HIGH);
64+
#endif
5465
}
5566

5667
void disableInternalPower() {
5768
#if defined(ARDUINO_ADAFRUIT_QTPY_ESP32_PICO)
5869
pinMode(NEOPIXEL_POWER, OUTPUT);
5970
digitalWrite(NEOPIXEL_POWER, LOW);
6071
#endif
72+
73+
#if defined(ARDUINO_ADAFRUIT_FEATHER_ESP32S2)
74+
// turn on the I2C power by setting pin to rest state (off)
75+
pinMode(PIN_I2C_POWER, INPUT);
76+
pinMode(NEOPIXEL_POWER, OUTPUT);
77+
digitalWrite(NEOPIXEL_POWER, LOW);
78+
#endif
6179
}

0 commit comments

Comments
 (0)