Skip to main content

Module modulation

Module modulation 

Source
Expand description

Per-modulation parameter structs for SET_CONFIG (PROTOCOL.md §10).

SET_CONFIG’s payload is a one-byte modulation identifier followed by a modulation-specific struct. Each struct is fixed-layout little-endian; FSK/GFSK alone carries a variable-length sync word at its tail.

The crate models the whole universe of DongLoRa Protocol modulations even on devices that physically can’t drive them. Firmware ultimately returns EMODULATION for anything the chip doesn’t support, but the wire codec stays uniform across all 1.0-compliant implementations.

Structs§

FlrcConfig
FLRC configuration payload (13 bytes after modulation_id).
FskConfig
FSK / GFSK configuration payload (PROTOCOL.md §10.2).
LoRaConfig
LoRa configuration payload (15 bytes after modulation_id).
LrFhssConfig
LR-FHSS configuration payload (10 bytes after modulation_id).

Enums§

FlrcBitrate
FLRC bitrate enum (PROTOCOL.md §10.4).
FlrcBt
FLRC Gaussian BT-product enum (PROTOCOL.md §10.4).
FlrcCodingRate
FLRC coding rate enum (PROTOCOL.md §10.4).
FlrcPreambleLen
FLRC preamble length enum (PROTOCOL.md §10.4).
LoRaBandwidth
LoRa signal bandwidth enum (PROTOCOL.md §10.1). The small integer is what goes on the wire, NOT the kHz value.
LoRaCodingRate
LoRa coding rate enum (PROTOCOL.md §10.1).
LoRaHeaderMode
LoRa header mode (PROTOCOL.md §10.1).
LrFhssBandwidth
LR-FHSS occupied-bandwidth enum (PROTOCOL.md §10.3).
LrFhssCodingRate
LR-FHSS coding rate enum (PROTOCOL.md §10.3).
LrFhssGrid
LR-FHSS grid selection (PROTOCOL.md §10.3).
Modulation
Any of the four modulation configs, tagged by ModulationId.
ModulationId
One-byte modulation selector (PROTOCOL.md §10). Prefixes every SET_CONFIG payload.