Hello,
I'm trying to use the Waveshare RP2040-Lora module with the RadioLib library GitHub - jgromes/RadioLib: Universal wireless communication library for embedded devices. This module uses the Lora SX1262 chip on the RP2040 SPI1. During Radiolib initialization I have a return code « 707 » indicating a problem with the TCXO reference. If I'm not mistaken, is not used by default ; I tried to force the TCX0 to 0v without success via the call to the “setTCXO(0)” function. Do you have any idea of the problem? Have you already used the waveshare RP2040-Lora successfully?
Tristan.
#include <SPI.h>
#include <RadioLib.h>
// SPI definition
#define LORA_SCK 14 // GP10
#define LORA_MISO 24 // GP8
#define LORA_MOSI 15 // GP11
#define LORA_SS 13 // GP9
#define LORA_RST 23 // GP23
#define LORA_DIO1 16 // GP16
#define LORA_BUSY 18 // GP18
#define LORA_ANT_SW 17 // GP17
SX1262 radio = new Module(LORA_SS, LORA_DIO1, LORA_RST, LORA_BUSY, SPI1);
//----------------------------------
void setup() {
Serial.begin(9600);
while (!Serial);
// SPI configuration
SPI1.setRX(LORA_MISO);
SPI1.setTX(LORA_MOSI);
SPI1.setSCK(LORA_SCK);
SPI1.begin();
// SX1262 init ------
int state = radio.begin(868.0, 125.0, 12, 5, RADIOLIB_SX126X_SYNC_WORD_PRIVATE, 17, 14);
if (state != RADIOLIB_ERR_NONE) {
Serial.print("LoRa init failed, Error code : ");
Serial.println(state);
while (true);
}
radio.setTCXO(1.8);
Serial.println("LoRa Ok.");
}
void loop() {
Serial.println("Send message...");
int state = radio.transmit("Hello, LoRa!");
if (state == RADIOLIB_ERR_NONE) {
Serial.println("Transmission ok.");
} else {
Serial.print("Transmission error: ");
Serial.println(state);
}
delay(5000);
}