arduino-esp32
arduino-esp32 copied to clipboard
UART initialisation from cold boot sets crystal clock wrong
Board
Sparkfun Thing Plus
Device Description
Just the breakout board without nothing (except oscilloscope probes on 16, 17 and gnd) on it and connected to the computer via usb
Hardware Configuration
Just the breakout board without nothing (except oscilloscope probes on 16, 17 and gnd) on it and connected to the computer via usb
Version
3.0.5
IDE Name
arduino-ide_nightly-20240928_Linux_64bit
Operating System
Debian 12.7 Linux hostname 6.1.0-25-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.106-3 (2024-08-26) x86_64 GNU/Linux
Flash frequency
80 MHz
PSRAM enabled
no
Upload speed
921600
Description
When connected to computer from no power, device initially starts with 3u period and then immediately switches to 4.5u
On reset button press (ie warm reboot), device stays at 3u period.
When connected to just a power plug from no power, device also stays at 3u period.
RMT is probably just a red herring here, it allows us to easily see a stable frequency at least.
Sketch
#define PIN 16
void setup()
{
rmt_data_t rawData[]={{.duration0=1, .level0=0, .duration1=1, .level1=1}};
pinMode(PIN, OUTPUT);
rmtInit(PIN, RMT_TX_MODE, RMT_MEM_NUM_BLOCKS_1, 1000000);
rmtWriteLooping(PIN, rawData, RMT_SYMBOLS_OF(rawData));
}
void loop(){}
Debug Message
No messages
Other Steps to Reproduce
Tried multiple of the same device, unopened.
https://youtu.be/8VOk3C6BlFE video of issue
I have checked existing issues, online documentation and the Troubleshooting Guide
- [X] I confirm I have checked existing issues, online documentation and Troubleshooting guide.