Skip to content

Commit

Permalink
Added TCXO control functions
Browse files Browse the repository at this point in the history
  • Loading branch information
markqvist committed Jun 7, 2023
1 parent a29cfc6 commit 1770557
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 0 deletions.
2 changes: 2 additions & 0 deletions Config.h
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@

#define HAS_DISPLAY false
#define HAS_BLUETOOTH false
#define HAS_TCXO false
#define HAS_PMU false
#define HAS_NP false

Expand Down Expand Up @@ -147,6 +148,7 @@
const int pin_led_tx = 4;
#define HAS_DISPLAY true
#define HAS_PMU true
#define HAS_TCXO true
#define HAS_BLUETOOTH true
#define HAS_CONSOLE true
#define HAS_SD false
Expand Down
11 changes: 11 additions & 0 deletions LoRa.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@
#define REG_HIGH_BW_OPTIMIZE_2 0x3a
#define REG_DIO_MAPPING_1 0x40
#define REG_VERSION 0x42
#define REG_TCXO 0x4b
#define REG_PA_DAC 0x4d

// Modes
Expand Down Expand Up @@ -424,6 +425,16 @@ void LoRaClass::sleep()
writeRegister(REG_OP_MODE, MODE_LONG_RANGE_MODE | MODE_SLEEP);
}

void LoRaClass::enableTCXO() {
uint8_t tcxo_reg = readRegister(REG_TCXO);
writeRegister(REG_TCXO, tcxo_reg | 0x10);
}

void LoRaClass::disableTCXO() {
uint8_t tcxo_reg = readRegister(REG_TCXO);
writeRegister(REG_TCXO, tcxo_reg & 0xEF);
}

void LoRaClass::setTxPower(int level, int outputPin) {
if (PA_OUTPUT_RFO_PIN == outputPin) {
// RFO
Expand Down
2 changes: 2 additions & 0 deletions LoRa.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,8 @@ class LoRaClass : public Stream {
uint8_t modemStatus();
void enableCrc();
void disableCrc();
void enableTCXO();
void disableTCXO();

// deprecated
void crc() { enableCrc(); }
Expand Down

0 comments on commit 1770557

Please sign in to comment.