My wio-e5 mini is officially lost in transit, but i did some experiments with RAK3172 breakout boards.
Interestingly when you use correct pin config but with wrong LP/HP define it still barely transmits.
testing across bench yesterday(1.2m) I got:
RSSI -109 at +20dBi and
//rak3172-e(no TXCO)
static const uint32_t rfswitch_pins[] = {PB8, PC13, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC};
static const Module::RfSwitchMode_t rfswitch_table[] = {
{STM32WLx::MODE_IDLE, {LOW, LOW}},
{STM32WLx::MODE_RX, {HIGH, LOW}},
{STM32WLx::MODE_TX_LP, {LOW, HIGH}},//CORRECT
END_OF_MODE_TABLE,
};
bool lp_supported = true;
bool hp_supported = false;
at glance above code should work, this pdf at page 7 clears things up a bit.
RSSI -101 at +20dBi and
//rak3172-e(no TXCO)
static const uint32_t rfswitch_pins[] = {PB8, PC13, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC};
static const Module::RfSwitchMode_t rfswitch_table[] = {
{STM32WLx::MODE_IDLE, {LOW, LOW}},
{STM32WLx::MODE_RX, {HIGH, LOW}},
{STM32WLx::MODE_TX_HP, {HIGH, HIGH}}, //INCORRECT
END_OF_MODE_TABLE,
bool lp_supported = false;
bool hp_supported = true;
RSSI -23 at -3dBi with :
//rak3172-e(no TXCO)
static const uint32_t rfswitch_pins[] = {PB8, PC13, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC};
static const Module::RfSwitchMode_t rfswitch_table[] = {
{STM32WLx::MODE_IDLE, {LOW, LOW}},
{STM32WLx::MODE_RX, {HIGH, LOW}},
{STM32WLx::MODE_TX_HP, {LOW, HIGH}}, //CORECT
END_OF_MODE_TABLE,
bool lp_supported = false;
bool hp_supported = true;
RSSI -60 at -3dBi and antennas removed, just SMA sockets on PCBs