From c66ff2b181c01eb5e0c86cb0bf8eadab175c7238 Mon Sep 17 00:00:00 2001 From: Davide Mor <davide.mor@skywarder.eu> Date: Mon, 31 Jul 2023 13:57:06 +0200 Subject: [PATCH] [sx1278] Fixed a bug where the SPI would not work properly --- src/shared/radio/SX1278/SX1278Defs.h | 1 + src/tests/radio/sx1278/sx1278-init.h | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/shared/radio/SX1278/SX1278Defs.h b/src/shared/radio/SX1278/SX1278Defs.h index 28dae0016..088564da4 100644 --- a/src/shared/radio/SX1278/SX1278Defs.h +++ b/src/shared/radio/SX1278/SX1278Defs.h @@ -50,6 +50,7 @@ inline SPIBusConfig getSpiBusConfig(SPI::ClockDivider clock_divider) bus_config.bitOrder = SPI::Order::MSB_FIRST; bus_config.byteOrder = SPI::Order::MSB_FIRST; bus_config.writeBit = SPI::WriteBit::INVERTED; + bus_config.csHoldTimeUs = 3; return bus_config; } diff --git a/src/tests/radio/sx1278/sx1278-init.h b/src/tests/radio/sx1278/sx1278-init.h index 908425445..9a7bd5943 100644 --- a/src/tests/radio/sx1278/sx1278-init.h +++ b/src/tests/radio/sx1278/sx1278-init.h @@ -225,7 +225,7 @@ bool initRadio() sx1278 = new Boardcore::SX1278Lora(sx1278_bus, cs::getPin(), dio0::getPin(), dio1::getPin(), dio3::getPin(), - Boardcore::SPI::ClockDivider::DIV_32, + Boardcore::SPI::ClockDivider::DIV_256, std::move(frontend)); printf("\n[sx1278] Configuring sx1278 lora...\n"); -- GitLab