-
Notifications
You must be signed in to change notification settings - Fork 40
Modem control using KISS protocol extension
sh123 edited this page Oct 15, 2021
·
10 revisions
When EnableKissExtensions configuration parameter is set to true modem will be able to handle SetHardware KISS command 6 for setting modem parameters and will send event about signal level with KISS command 7, both are operating on KISS port 0. This way client application (such as Codec2 Walkie-Talkie) can display signal levels and change modem parameters dynamically.
Payloads for commands are sent and expected as big endian and defined as:
// KISS SetHardware 6
struct SetHardware {
uint32_t freq;
uint32_t bw;
uint16_t sf;
uint16_t cr;
uint16_t pwr;
uint16_t sync;
uint8_t crc;
} __attribute__((packed));
// KISS command 7
struct SignalReport {
int16_t rssi;
int16_t snr; // snr * 100
} __attribute__((packed));
// KISS command 8
struct Reboot {
} __attribute__((packed));