mirror of
https://github.com/meshtastic/firmware.git
synced 2026-01-06 18:08:00 +00:00
Allow for better target level Radiolib exclude plumbing (#4906)
* WIP * LR11x0 * Anothern * =1
This commit is contained in:
@@ -8,13 +8,19 @@
|
||||
#include "api/ServerAPI.h"
|
||||
|
||||
// We need this declaration for proper linking in derived classes
|
||||
#if RADIOLIB_EXCLUDE_SX126X != 1
|
||||
template class SX126xInterface<SX1262>;
|
||||
template class SX126xInterface<SX1268>;
|
||||
template class SX126xInterface<LLCC68>;
|
||||
#endif
|
||||
#if RADIOLIB_EXCLUDE_SX128X != 1
|
||||
template class SX128xInterface<SX1280>;
|
||||
#endif
|
||||
#if RADIOLIB_EXCLUDE_LR11X0 != 1
|
||||
template class LR11x0Interface<LR1110>;
|
||||
template class LR11x0Interface<LR1120>;
|
||||
template class LR11x0Interface<LR1121>;
|
||||
#endif
|
||||
#ifdef ARCH_STM32WL
|
||||
template class SX126xInterface<STM32WLx>;
|
||||
#endif
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#if RADIOLIB_EXCLUDE_SX126X != 1
|
||||
#include "LLCC68Interface.h"
|
||||
#include "configuration.h"
|
||||
#include "error.h"
|
||||
@@ -6,4 +7,5 @@ LLCC68Interface::LLCC68Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, R
|
||||
RADIOLIB_PIN_TYPE busy)
|
||||
: SX126xInterface(hal, cs, irq, rst, busy)
|
||||
{
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@@ -1,5 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#if RADIOLIB_EXCLUDE_SX126X != 1
|
||||
#include "SX126xInterface.h"
|
||||
|
||||
/**
|
||||
@@ -15,4 +15,5 @@ class LLCC68Interface : public SX126xInterface<LLCC68>
|
||||
public:
|
||||
LLCC68Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst,
|
||||
RADIOLIB_PIN_TYPE busy);
|
||||
};
|
||||
};
|
||||
#endif
|
||||
@@ -1,3 +1,5 @@
|
||||
#if RADIOLIB_EXCLUDE_LR11X0 != 1
|
||||
|
||||
#include "LR1110Interface.h"
|
||||
#include "configuration.h"
|
||||
#include "error.h"
|
||||
@@ -6,4 +8,5 @@ LR1110Interface::LR1110Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, R
|
||||
RADIOLIB_PIN_TYPE busy)
|
||||
: LR11x0Interface(hal, cs, irq, rst, busy)
|
||||
{
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@@ -1,5 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#if RADIOLIB_EXCLUDE_LR11X0 != 1
|
||||
#include "LR11x0Interface.h"
|
||||
|
||||
/**
|
||||
@@ -10,4 +10,5 @@ class LR1110Interface : public LR11x0Interface<LR1110>
|
||||
public:
|
||||
LR1110Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst,
|
||||
RADIOLIB_PIN_TYPE busy);
|
||||
};
|
||||
};
|
||||
#endif
|
||||
@@ -1,3 +1,5 @@
|
||||
#if RADIOLIB_EXCLUDE_LR11X0 != 1
|
||||
|
||||
#include "LR1120Interface.h"
|
||||
#include "configuration.h"
|
||||
#include "error.h"
|
||||
@@ -11,4 +13,5 @@ LR1120Interface::LR1120Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, R
|
||||
bool LR1120Interface::wideLora()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@@ -1,7 +1,7 @@
|
||||
#pragma once
|
||||
#if RADIOLIB_EXCLUDE_LR11X0 != 1
|
||||
|
||||
#include "LR11x0Interface.h"
|
||||
|
||||
/**
|
||||
* Our adapter for LR1120 wideband radios
|
||||
*/
|
||||
@@ -11,4 +11,5 @@ class LR1120Interface : public LR11x0Interface<LR1120>
|
||||
LR1120Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst,
|
||||
RADIOLIB_PIN_TYPE busy);
|
||||
bool wideLora() override;
|
||||
};
|
||||
};
|
||||
#endif
|
||||
@@ -1,3 +1,4 @@
|
||||
#if RADIOLIB_EXCLUDE_LR11X0 != 1
|
||||
#include "LR1121Interface.h"
|
||||
#include "configuration.h"
|
||||
#include "error.h"
|
||||
@@ -11,4 +12,5 @@ LR1121Interface::LR1121Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, R
|
||||
bool LR1121Interface::wideLora()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma once
|
||||
#if RADIOLIB_EXCLUDE_LR11X0 != 1
|
||||
|
||||
#include "LR11x0Interface.h"
|
||||
|
||||
@@ -11,4 +12,5 @@ class LR1121Interface : public LR11x0Interface<LR1121>
|
||||
LR1121Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst,
|
||||
RADIOLIB_PIN_TYPE busy);
|
||||
bool wideLora() override;
|
||||
};
|
||||
};
|
||||
#endif
|
||||
@@ -1,3 +1,4 @@
|
||||
#if RADIOLIB_EXCLUDE_LR11X0 != 1
|
||||
#include "LR11x0Interface.h"
|
||||
#include "Throttle.h"
|
||||
#include "configuration.h"
|
||||
@@ -284,4 +285,5 @@ template <typename T> bool LR11x0Interface<T>::sleep()
|
||||
#endif
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@@ -1,5 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#if RADIOLIB_EXCLUDE_LR11X0 != 1
|
||||
#include "RadioLibInterface.h"
|
||||
|
||||
/**
|
||||
@@ -66,3 +66,4 @@ template <class T> class LR11x0Interface : public RadioLibInterface
|
||||
|
||||
virtual void setStandby() override;
|
||||
};
|
||||
#endif
|
||||
@@ -1,3 +1,4 @@
|
||||
#if RADIOLIB_EXCLUDE_SX127X != 1
|
||||
#include "RF95Interface.h"
|
||||
#include "MeshRadio.h" // kinda yucky, but we need to know which region we are in
|
||||
#include "RadioLibRF95.h"
|
||||
@@ -336,3 +337,4 @@ bool RF95Interface::sleep()
|
||||
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
@@ -1,5 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#if RADIOLIB_EXCLUDE_SX127X != 1
|
||||
#include "MeshRadio.h" // kinda yucky, but we need to know which region we are in
|
||||
#include "RadioLibInterface.h"
|
||||
#include "RadioLibRF95.h"
|
||||
@@ -69,3 +69,4 @@ class RF95Interface : public RadioLibInterface
|
||||
/** Some boards require GPIO control of tx vs rx paths */
|
||||
void setTransmitEnable(bool txon);
|
||||
};
|
||||
#endif
|
||||
@@ -1,3 +1,4 @@
|
||||
#if RADIOLIB_EXCLUDE_SX127X != 1
|
||||
#include "RadioLibRF95.h"
|
||||
#include "configuration.h"
|
||||
|
||||
@@ -81,4 +82,5 @@ uint8_t RadioLibRF95::readReg(uint8_t addr)
|
||||
{
|
||||
Module *mod = this->getMod();
|
||||
return mod->SPIreadRegister(addr);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma once
|
||||
#if RADIOLIB_EXCLUDE_SX127X != 1
|
||||
#include <RadioLib.h>
|
||||
|
||||
/*!
|
||||
@@ -69,3 +70,4 @@ class RadioLibRF95 : public SX1278
|
||||
// use the previous value
|
||||
float currentLimit = 100;
|
||||
};
|
||||
#endif
|
||||
@@ -1,3 +1,4 @@
|
||||
#if RADIOLIB_EXCLUDE_SX126X != 1
|
||||
#include "SX1262Interface.h"
|
||||
#include "configuration.h"
|
||||
#include "error.h"
|
||||
@@ -6,4 +7,5 @@ SX1262Interface::SX1262Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, R
|
||||
RADIOLIB_PIN_TYPE busy)
|
||||
: SX126xInterface(hal, cs, irq, rst, busy)
|
||||
{
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@@ -1,3 +1,4 @@
|
||||
#if RADIOLIB_EXCLUDE_SX126X != 1
|
||||
#pragma once
|
||||
|
||||
#include "SX126xInterface.h"
|
||||
@@ -10,4 +11,5 @@ class SX1262Interface : public SX126xInterface<SX1262>
|
||||
public:
|
||||
SX1262Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst,
|
||||
RADIOLIB_PIN_TYPE busy);
|
||||
};
|
||||
};
|
||||
#endif
|
||||
@@ -1,3 +1,4 @@
|
||||
#if RADIOLIB_EXCLUDE_SX126X != 1
|
||||
#include "SX1268Interface.h"
|
||||
#include "configuration.h"
|
||||
#include "error.h"
|
||||
@@ -15,4 +16,5 @@ float SX1268Interface::getFreq()
|
||||
return 433.125f;
|
||||
else
|
||||
return savedFreq;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma once
|
||||
#if RADIOLIB_EXCLUDE_SX126X != 1
|
||||
|
||||
#include "SX126xInterface.h"
|
||||
|
||||
@@ -13,3 +14,4 @@ class SX1268Interface : public SX126xInterface<SX1268>
|
||||
SX1268Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst,
|
||||
RADIOLIB_PIN_TYPE busy);
|
||||
};
|
||||
#endif
|
||||
@@ -1,3 +1,4 @@
|
||||
#if RADIOLIB_EXCLUDE_SX126X != 1
|
||||
#include "SX126xInterface.h"
|
||||
#include "configuration.h"
|
||||
#include "error.h"
|
||||
@@ -341,4 +342,5 @@ template <typename T> bool SX126xInterface<T>::sleep()
|
||||
#endif
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
@@ -1,4 +1,5 @@
|
||||
#pragma once
|
||||
#if RADIOLIB_EXCLUDE_SX126X != 1
|
||||
|
||||
#include "RadioLibInterface.h"
|
||||
|
||||
@@ -68,3 +69,4 @@ template <class T> class SX126xInterface : public RadioLibInterface
|
||||
|
||||
virtual void setStandby() override;
|
||||
};
|
||||
#endif
|
||||
@@ -1,3 +1,4 @@
|
||||
#if RADIOLIB_EXCLUDE_SX128X != 1
|
||||
#include "SX1280Interface.h"
|
||||
#include "configuration.h"
|
||||
#include "error.h"
|
||||
@@ -7,3 +8,4 @@ SX1280Interface::SX1280Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, R
|
||||
: SX128xInterface(hal, cs, irq, rst, busy)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
@@ -1,5 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#if RADIOLIB_EXCLUDE_SX128X != 1
|
||||
#include "SX128xInterface.h"
|
||||
|
||||
/**
|
||||
@@ -12,3 +12,4 @@ class SX1280Interface : public SX128xInterface<SX1280>
|
||||
SX1280Interface(LockingArduinoHal *hal, RADIOLIB_PIN_TYPE cs, RADIOLIB_PIN_TYPE irq, RADIOLIB_PIN_TYPE rst,
|
||||
RADIOLIB_PIN_TYPE busy);
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#if RADIOLIB_EXCLUDE_SX128X != 1
|
||||
#include "SX128xInterface.h"
|
||||
#include "Throttle.h"
|
||||
#include "configuration.h"
|
||||
@@ -313,4 +314,5 @@ template <typename T> bool SX128xInterface<T>::sleep()
|
||||
#endif
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user