sforkowany z mirror/meshtastic-firmware
[LLCC68] module support
rodzic
eee6ef018c
commit
8eb0d685ac
|
@ -256,6 +256,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
// supported modules list
|
// supported modules list
|
||||||
#define USE_SX1262
|
#define USE_SX1262
|
||||||
#define USE_SX1268
|
#define USE_SX1268
|
||||||
|
#define USE_LLCC68
|
||||||
|
|
||||||
// common pinouts for SX126X modules
|
// common pinouts for SX126X modules
|
||||||
#define SX126X_CS 18 // NSS for SX126X
|
#define SX126X_CS 18 // NSS for SX126X
|
||||||
|
|
14
src/main.cpp
14
src/main.cpp
|
@ -40,6 +40,7 @@
|
||||||
#include "RF95Interface.h"
|
#include "RF95Interface.h"
|
||||||
#include "SX1262Interface.h"
|
#include "SX1262Interface.h"
|
||||||
#include "SX1268Interface.h"
|
#include "SX1268Interface.h"
|
||||||
|
#include "LLCC68Interface.h"
|
||||||
|
|
||||||
#ifdef NRF52_SERIES
|
#ifdef NRF52_SERIES
|
||||||
#include "variant.h"
|
#include "variant.h"
|
||||||
|
@ -539,6 +540,19 @@ void setup()
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(USE_LLCC68)
|
||||||
|
if (!rIf) {
|
||||||
|
rIf = new LLCC68Interface(SX126X_CS, SX126X_DIO1, SX126X_RESET, SX126X_BUSY, SPI);
|
||||||
|
if (!rIf->init()) {
|
||||||
|
DEBUG_MSG("Warning: Failed to find LLCC68 radio\n");
|
||||||
|
delete rIf;
|
||||||
|
rIf = NULL;
|
||||||
|
} else {
|
||||||
|
DEBUG_MSG("LLCC68 Radio init succeeded, using LLCC68 radio\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef USE_SIM_RADIO
|
#ifdef USE_SIM_RADIO
|
||||||
if (!rIf) {
|
if (!rIf) {
|
||||||
rIf = new SimRadio;
|
rIf = new SimRadio;
|
||||||
|
|
|
@ -3,4 +3,5 @@
|
||||||
|
|
||||||
// We need this declaration for proper linking in derived classes
|
// We need this declaration for proper linking in derived classes
|
||||||
template class SX126xInterface<SX1262>;
|
template class SX126xInterface<SX1262>;
|
||||||
template class SX126xInterface<SX1268>;
|
template class SX126xInterface<SX1268>;
|
||||||
|
template class SX126xInterface<LLCC68>;
|
|
@ -0,0 +1,9 @@
|
||||||
|
#include "configuration.h"
|
||||||
|
#include "LLCC68Interface.h"
|
||||||
|
#include "error.h"
|
||||||
|
|
||||||
|
LLCC68Interface::LLCC68Interface(RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst, RADIOLIB_PIN_TYPE busy,
|
||||||
|
SPIClass &spi)
|
||||||
|
: SX126xInterface(cs, irq, rst, busy, spi)
|
||||||
|
{
|
||||||
|
}
|
|
@ -0,0 +1,13 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "SX126xInterface.h"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Our adapter for LLCC68 radios
|
||||||
|
* https://www.semtech.com/products/wireless-rf/lora-core/llcc68
|
||||||
|
*/
|
||||||
|
class LLCC68Interface : public SX126xInterface<LLCC68>
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
LLCC68Interface(RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst, RADIOLIB_PIN_TYPE busy, SPIClass &spi);
|
||||||
|
};
|
Ładowanie…
Reference in New Issue