1
0
mirror of https://github.com/sandeepmistry/arduino-LoRa.git synced 2025-06-15 18:01:42 +03:00

Add function to invert IQ signal register (#179)

Add function to change register (REG_INVERTIQ) to support communication node and gateway

The register does not exist in datasheet but use on but used in Semtech code.
Reference : https://github.com/intel-iot-devkit/upm/blob/master/src/sx1276/sx1276.cxx

* Add LoRa Simple Gateway/Node Exemple

Example how to use InvertIQ function to create a simple Gateway/Node logic.
This commit is contained in:
Luiz
2018-08-19 10:53:52 -03:00
committed by Sandeep Mistry
parent 403738660b
commit 07bfead143
6 changed files with 255 additions and 0 deletions

View File

@ -31,8 +31,10 @@
#define REG_FREQ_ERROR_LSB 0x2a
#define REG_RSSI_WIDEBAND 0x2c
#define REG_DETECTION_OPTIMIZE 0x31
#define REG_INVERTIQ 0x33
#define REG_DETECTION_THRESHOLD 0x37
#define REG_SYNC_WORD 0x39
#define REG_INVERTIQ2 0x3b
#define REG_DIO_MAPPING_1 0x40
#define REG_VERSION 0x42
#define REG_PA_DAC 0x4d
@ -531,6 +533,18 @@ void LoRaClass::disableCrc()
writeRegister(REG_MODEM_CONFIG_2, readRegister(REG_MODEM_CONFIG_2) & 0xfb);
}
void LoRaClass::enableInvertIQ()
{
writeRegister(REG_INVERTIQ, 0x66);
writeRegister(REG_INVERTIQ2, 0x19);
}
void LoRaClass::disableInvertIQ()
{
writeRegister(REG_INVERTIQ, 0x27);
writeRegister(REG_INVERTIQ2, 0x1d);
}
void LoRaClass::setOCP(uint8_t mA)
{
uint8_t ocpTrim = 27;

View File

@ -66,6 +66,9 @@ public:
void setSyncWord(int sw);
void enableCrc();
void disableCrc();
void enableInvertIQ();
void disableInvertIQ();
void setOCP(uint8_t mA); // Over Current Protection control
// deprecated