From ff387e93ad75af01fbe211e3dee23474ddd5f85e Mon Sep 17 00:00:00 2001 From: jgromes Date: Fri, 27 Dec 2024 16:25:59 +0000 Subject: [PATCH] [SX128x] Use dummy SPI transfer for wakeup --- src/modules/SX128x/SX128x.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/modules/SX128x/SX128x.cpp b/src/modules/SX128x/SX128x.cpp index 21f6b21c..a86d82ab 100644 --- a/src/modules/SX128x/SX128x.cpp +++ b/src/modules/SX128x/SX128x.cpp @@ -480,8 +480,9 @@ int16_t SX128x::standby(uint8_t mode, bool wakeup) { this->mod->setRfSwitchState(Module::MODE_IDLE); if(wakeup) { - // pull NSS low to wake up - this->mod->hal->digitalWrite(this->mod->getCs(), this->mod->hal->GpioLevelLow); + // send a NOP command - this pulls the NSS low to exit the sleep mode, + // while preventing interference with possible other SPI transactions + (void)this->mod->SPIwriteStream(RADIOLIB_SX128X_CMD_NOP, NULL, 0, false, false); } uint8_t data[] = { mode };