1#if !defined(_RADIOLIB_FSK4_H)
2#define _RADIOLIB_FSK4_H
4#include "../../TypeDef.h"
6#if !RADIOLIB_EXCLUDE_FSK4
8#include "../PhysicalLayer/PhysicalLayer.h"
9#include "../AFSK/AFSK.h"
23 #if !RADIOLIB_EXCLUDE_AFSK
41 int16_t
begin(
float base, uint32_t shift, uint16_t rate);
54 int16_t
setCorrection(int16_t offsets[4],
float length = 1.0f);
62 size_t write(
const uint8_t* buff,
size_t len);
69 size_t write(uint8_t b);
81 #if !RADIOLIB_EXCLUDE_AFSK
85 uint32_t baseFreq = 0, baseFreqHz = 0;
86 uint32_t shiftFreq = 0, shiftFreqHz = 0;
88 uint32_t tones[4] = { 0 };
89 uint32_t tonesHz[4] = { 0 };
93 int16_t transmitDirect(uint32_t freq = 0, uint32_t freqHz = 0);
94 int32_t getRawShift(int32_t shift);
Client for audio-based transmissions. Requires Arduino tone() function, and a module capable of direc...
Definition AFSK.h:16
Client for FSK-4 communication. The public interface is the same as Arduino Serial.
Definition FSK4.h:15
int16_t begin(float base, uint32_t shift, uint16_t rate)
Initialization method.
Definition FSK4.cpp:19
size_t write(const uint8_t *buff, size_t len)
Transmit binary data.
Definition FSK4.cpp:57
void idle()
Send out idle condition (RF tone at mark frequency).
Definition FSK4.cpp:43
int16_t standby()
Stop transmitting.
Definition FSK4.cpp:98
int16_t setCorrection(int16_t offsets[4], float length=1.0f)
Set correction coefficients for frequencies and tone length.
Definition FSK4.cpp:48
Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....
Definition PhysicalLayer.h:216
unsigned long RadioLibTime_t
Type used for durations in RadioLib.
Definition TypeDef.h:642