From 1e987f8da4cfff8496430fa7097a3ba780d719e5 Mon Sep 17 00:00:00 2001
From: jgromes <jan.gromes@gmail.com>
Date: Sun, 25 Jul 2021 20:50:23 +0200
Subject: [PATCH] [Si443x] Added antenna switching on GPIO0/1

---
 src/modules/Si443x/Si443x.cpp | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/modules/Si443x/Si443x.cpp b/src/modules/Si443x/Si443x.cpp
index 7c9c7f8d..8de98ca2 100644
--- a/src/modules/Si443x/Si443x.cpp
+++ b/src/modules/Si443x/Si443x.cpp
@@ -656,9 +656,13 @@ int16_t Si443x::config() {
   RADIOLIB_ASSERT(state);
 
   // disable packet header
-  state = _mod->SPIsetRegValue(SI443X_REG_HEADER_CONTROL_2, SI443X_SYNC_WORD_TIMEOUT_ON | SI443X_HEADER_LENGTH_HEADER_NONE, 7, 4);
+  state = _mod->SPIsetRegValue(SI443X_REG_HEADER_CONTROL_2, SI443X_SYNC_WORD_TIMEOUT_OFF | SI443X_HEADER_LENGTH_HEADER_NONE, 7, 4);
   RADIOLIB_ASSERT(state);
 
+  // set antenna switching
+  _mod->SPIsetRegValue(SI443X_REG_GPIO0_CONFIG, SI443X_GPIOX_TX_STATE_OUT, 4, 0);
+  _mod->SPIsetRegValue(SI443X_REG_GPIO1_CONFIG, SI443X_GPIOX_RX_STATE_OUT, 4, 0);
+
   // disable packet header checking
   state = _mod->SPIsetRegValue(SI443X_REG_HEADER_CONTROL_1, SI443X_BROADCAST_ADDR_CHECK_NONE | SI443X_RECEIVED_HEADER_CHECK_NONE);
   RADIOLIB_ASSERT(state);