mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-10-20 20:42:03 +00:00
fix(wio-tracker-l2): radios and codec idle when unused; buzzer and OTA fixes
- BLE (ESP32): fast advertising (20-30 ms) for 30 s, then 152.5 ms, as the nRF52 interface; the library default kept 30-60 ms forever - Live map tiles: the WiFi drops after a minute with nothing missing - ES8311 to standby while the I2S clocks are off, set up again before the amp comes on - Buzzer: no channel (DMA out of memory) waits out the samples instead of spinning above the UI loop - OTA: the image header check waits for its 16 bytes - Comments: P10 is just the LED; the LCD SPI clock is 40 MHz on the wire Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -42,4 +42,19 @@ static bool begin(TwoWire& w, uint8_t addr) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// Everything but the I2C interface off (esp-adf's es8311 suspend): DAC, ADC,
|
||||
// references and the output driver. begin() brings it back, with MCLK running.
|
||||
static bool standby(TwoWire& w, uint8_t addr) {
|
||||
static const uint8_t SEQ[][2] = {
|
||||
{ 0x32, 0x00 }, { 0x17, 0x00 }, { 0x0E, 0xFF }, { 0x12, 0x02 }, { 0x14, 0x00 },
|
||||
{ 0x0D, 0xFA }, { 0x15, 0x00 }, { 0x37, 0x08 }, { 0x02, 0x10 },
|
||||
{ 0x00, 0x00 }, { 0x00, 0x1F }, // state machine reset
|
||||
{ 0x01, 0x30 }, { 0x01, 0x00 }, // clocks off
|
||||
{ 0x45, 0x00 }, { 0x0D, 0xFC }, { 0x02, 0x00 },
|
||||
};
|
||||
for (size_t i = 0; i < sizeof(SEQ) / sizeof(SEQ[0]); i++)
|
||||
if (!write(w, addr, SEQ[i][0], SEQ[i][1])) return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
} // namespace es8311
|
||||
|
||||
Reference in New Issue
Block a user