E22 can now reach 33dBm of output power

This commit is contained in:
Marcel
2025-04-04 11:37:09 +02:00
parent 21e298820f
commit 5fee5d7eec
3 changed files with 30 additions and 1 deletions

View File

@@ -423,12 +423,23 @@ with this:
### Radio.cpp
Add the following statement to the function **sx126x::enableTCXO()**.
Add the following statement to the function **sx126x::enableTCXO()**:
// Board added by Mees Electronics
#elif BOARD_MODEL == BOARD_MEES_ESP32_S3
uint8_t buf[4] = {MODE_TCXO_1_8V_6X, 0x00, 0x00, 0xFF};
Add the following statement to the function **int sx126x::endPacket()** just after `setPacketParams(_preambleLength, _implicitHeaderMode, _payloadLength, _crcMode);`:
// Added by Mees Electronics: RXEN on E22 module back to low
#if BOARD_MODEL == BOARD_MEES_ESP32_S3 && BOARD_VARIANT == MODEL_F2
if (_rxen != -1) {
digitalWrite(_rxen, LOW);
}
#endif
The E22 module has an RXEN and a TXEN input. Both must be used and both cannot be logic 1 at the same time. RXEN must be controlled by the firmware while TXEN can be controlled by either the firmware or the DIO2 pin, by using the DIO2_AS_RF_SWITCH function in the firmware. My current solution is to control TXEN by the DIO2 pin. If you forget to control the TXEN line, the maximum output will be 22 dBm instead of 33 dBm. It would be better to alter the code to make it more universal (like with the *sx128x* code), but for now it works.
### Makefile
Change the following section: