Skip to main content

Module mcu

Module mcu 

Source
Expand description

Starting the two microcontrollers inside a concentrator.

Giving a microcontroller its firmware is only half of bringing one up. The gain control comes out of reset waiting to be configured, and it is configured through four mailbox registers and a status register, one small group of settings at a time: the host writes the values, writes a code saying which group it just wrote, waits for the status to reach the next number, and reads every value back to see that it took. The arbiter is simpler but works the same way, through its own debug registers.

A concentrator whose microcontrollers have been loaded but not started reports a healthy version register, passes every firmware check, and hears nothing useful, because its gain control has never been told what gains to use.

Nothing here reads a register. The order and the values are data, so the whole handshake can be checked against the reference with no hardware present.

Structs§

Gains
The gains a gain control is configured with.

Enums§

Step
A step in the exchange that starts a microcontroller.

Constants§

AGC_VERSION_SX125X
The one a concentrator with the earlier front ends expects.
AGC_VERSION_SX1250
The gain control firmware a concentrator with SX1250 front ends expects.
ARB_DETECT_THRESHOLD
How many peaks a second detection has to clear to be believed.
ARB_STATUS_RESUMED
The status the arbiter returns to once it has been told to resume.
ARB_VERSION
The arbiter firmware a concentrator expects.
GAIN_AUTOMATIC
The gain value that leaves the gain control to decide for itself.
PA_START_DELAY
How long the amplifier is started before a packet, in hundreds of microseconds.
STATUS_RUNNING
The status a microcontroller reports once its firmware is running.
SX125X_GAINS
The gains an SX1255 or SX1257 front end is configured with.
SX1250_GAINS
The gains an SX1250 front end is configured with.

Functions§

start_arbiter
What the arbiter is told before it is let go.
start_gain_control
What a gain control is configured with and how it is told.