Skip to main content

Module channel

Module channel 

Source
Expand description

Pointing a concentrator at the channels it listens on.

A concentrator that has been reset, identified and given firmware still hears nothing. Its receivers have not been told which intermediate frequencies to listen on, which radio each takes its samples from, which spreading factors to look for, or that they may run at all. This is what closes that gap.

There are ten receivers. Eight take any spreading factor and share a bandwidth fixed in hardware at 125 kHz. One more is fixed to a single spreading factor and bandwidth, which is what a network calls its service channel. The last hears frequency shift keying.

Every frequency here is an offset from the carrier a front end is tuned to, not a carrier of its own, which is why a plan is described relative to the radio it sits on.

Nothing here opens a bus. The order is data, so it can be checked against the reference with no hardware present.

Structs§

Fsk
The receiver that hears frequency shift keying rather than LoRa.
Implicit
What a receiver is told when the packets it hears carry no header of their own.
Listener
One of the receivers that takes any spreading factor.
Plan
What a concentrator is to listen for.
Service
The receiver fixed to one spreading factor, which is what a network calls its service channel.

Enums§

Step
A step in pointing a concentrator at its channels.

Constants§

DFT_PEAK_AUTOMATIC
Peak selection left to the receiver.
FSK_BANDWIDTH_CODE
How wide the FSK receiver listens, which is the setting for a 125 kHz channel.
FSK_CLOCK_HZ
The clock the FSK bit rate is counted against, in hertz.
FSK_DEFAULT_BITRATE
The bit rate a LoRaWAN network runs its frequency shift keying channel at.
FSK_MAX_PAYLOAD
The longest packet the FSK receiver takes.
FSK_RSSI_SAMPLES
How many samples the FSK receiver measures a signal level over.
FSK_SYNC_WORD
The sync word that channel looks for.
FSK_SYNC_WORD_LEN
How many bytes of it there are.
FSK_TIMEOUT
How long it waits for one, as the receiver counts it.
FSK_TOLERANCE
How far the bit timing may drift before a packet is given up on.
FSK_WHITENING
Keeping the bits from settling at one level, which a LoRaWAN FSK channel whitens.
MAX_OFFSET_HZ
How far from the carrier a channel can sit, in hertz.
MAX_SPREADING_FACTOR
The highest.
MIN_SPREADING_FACTOR
The lowest spreading factor a receiver can be asked for.
MULTI_BANDWIDTH_HZ
The bandwidth every multi-spreading-factor receiver runs at, in hertz.
MULTI_CHANNELS
How many receivers take any spreading factor.
PREAMBLE_SYMBOLS
How many preamble symbols a receiver waits for.
RSSI_DEFAULT
What the channel power reading starts from.
RSSI_FILTER_ALPHA
How heavily that reading is filtered.
RX_BANDWIDTH_HZ
How much spectrum one radio hears in total, in hertz.
SERVICE_PEAK_COUNT
How many peaks the fixed-rate receiver counts before it believes a preamble.
SERVICE_PEAK_TO_NOISE
How far above the noise a peak has to be for the fixed-rate receiver to take it.
SERVICE_PREAMBLE_SYMBOLS
How many preamble symbols the fixed-rate receiver expects at the usual spreading factors.
SERVICE_PREAMBLE_SYMBOLS_FAST
How many it expects at the two fastest, which is what end device drivers send there.
SERVICE_SECOND_PEAK_COUNT
How many peaks it counts on the second pass.
TIMING_LINEAR
Fine timing that follows the drift in a straight line.
TRACKING_AUTOMATIC
Frequency tracking left to the receiver.
TRACKING_OFF
Frequency tracking switched off.

Functions§

drift
How fast a frequency error turns into a timing one, as a mantissa and a shift.
every_spreading_factor
Every spreading factor, as the mask the chip takes.
low_rate_optimize
Whether a rate is slow enough to need the low data rate optimization.
offset_bytes
Splits a channel offset into the two bytes its registers take.
offset_value
Turns an offset from the carrier into the value a channel register takes.
reachable
Whether a channel offset is one the radio can actually hear.
steps
The order a concentrator is pointed at its channels in.