From 8c034b12bbce27276cccb47c6dd5b57b5a40b284 Mon Sep 17 00:00:00 2001 From: HomeSpan Date: Thu, 29 Dec 2022 11:21:32 -0600 Subject: [PATCH] Update Solutions.md --- docs/Solutions.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/Solutions.md b/docs/Solutions.md index 77b28a3..eeb36cf 100644 --- a/docs/Solutions.md +++ b/docs/Solutions.md @@ -4,10 +4,12 @@ * On some ESP32 boards, the USB-UART chip only receives power if power is applied through the USB port, and thus remains unpowered if the ESP32 is powered solely through the ESP32 5V pin. As a result, the Serial RX pin associated with UART0 on the ESP32, which is normally driven by the USB-UART chip, is free to float at any voltage. If this pin floats low, the ESP32 thinks there is data to be read from the Serial Monitor, and HomeSpan falls into an infinite loop trying to read this non-existent data. -* **Resolution:** Add a pull-up resistor (10 kΩ should be fine) connecting the UART0 RX pin on your board to +3.3V. For most boards the default UART0 RX pin is as follows: +* **Resolution** Add a pull-up resistor (10 kΩ should be fine) connecting the UART0 RX pin on your board to +3.3V. For most boards the default UART0 RX pin is as follows: * Pin 3 for the ESP32 * Pin 44 for the ESP32-S2 and ESP32-S3 * Pin 20 for the ESP32-C3 * Note that adding this pull-up resistor should **not** interefere with normal serial operation of the board, such as using the Serial Monitor or uploading sketches. + +* *As an alternative*, instead of adding a pull-up resistor, you can simply exclude (or comment out) the `Serial.begin()` line in your sketch. This prevents the problem of HomeSpan hanging when you power it through the 5V pin, but it unfortunately means the Serial Monitor will not function when you connect the board to your computer, and you will need to add back `Serial.begin()` whenever you want to use the Serial Monitor.