RadioLib
Universal wireless communication library for Arduino
ExternalRadio.h
1 #if !defined(_RADIOLIB_EXTERNAL_RADIO_H)
2 #define _RADIOLIB_EXTERNAL_RADIO_H
3 
4 #include "../../TypeDef.h"
5 #include "../../Module.h"
6 
7 #include "../PhysicalLayer/PhysicalLayer.h"
8 
14  public:
15  #if defined(RADIOLIB_BUILD_ARDUINO)
20  ExternalRadio(uint32_t pin = RADIOLIB_NC); // cppcheck-suppress noExplicitConstructor
21  #endif
22 
28  ExternalRadio(RadioLibHal *hal, uint32_t pin = RADIOLIB_NC); // cppcheck-suppress noExplicitConstructor
29 
34  ExternalRadio(const ExternalRadio& ext);
35 
41 
46 
51  Module* getMod() override;
52 
58  int16_t setFrequencyDeviation(float freqDev) override;
59 
65  int16_t setDataShaping(uint8_t sh) override;
66 
72  int16_t setEncoding(uint8_t encoding) override;
73 
80  int16_t transmitDirect(uint32_t frf = 0) override;
81 
82  private:
83  Module* mod;
84  uint32_t prevFrf;
85 };
86 
87 #endif
Class to interface with external radio hardware.
Definition: ExternalRadio.h:13
int16_t setFrequencyDeviation(float freqDev) override
Dummy implementation overriding PhysicalLayer.
Definition: ExternalRadio.cpp:44
int16_t transmitDirect(uint32_t frf=0) override
Direct transmission to drive external radio.
Definition: ExternalRadio.cpp:59
~ExternalRadio()
Default destructor.
Definition: ExternalRadio.cpp:34
ExternalRadio(RadioLibHal *hal, uint32_t pin=RADIOLIB_NC)
Default constructor.
Definition: ExternalRadio.cpp:11
int16_t setDataShaping(uint8_t sh) override
Dummy implementation overriding PhysicalLayer.
Definition: ExternalRadio.cpp:49
Module * getMod() override
Method to retrieve pointer to the underlying Module instance.
Definition: ExternalRadio.cpp:40
int16_t setEncoding(uint8_t encoding) override
Dummy implementation overriding PhysicalLayer.
Definition: ExternalRadio.cpp:54
ExternalRadio & operator=(const ExternalRadio &ext)
Overload for assignment operator.
Definition: ExternalRadio.cpp:24
Implements all common low-level methods to control the wireless module. Every module class contains o...
Definition: Module.h:73
Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....
Definition: PhysicalLayer.h:151
Hardware abstraction library base interface.
Definition: Hal.h:13