Restore SX1276 CW support and calibrated power sweeps
Retain the original carrier feature from PR #11 with zero-deviation FSK, board PA calibration, and LoRa restoration. Re-key after power changes without extending the timeout, and restore prior power after a failed sweep. Cover native and SX1276 transitions, failure recovery, external PA and RFO mapping; verify Linkflow repeater and Heltec V2 USB Companion builds.
This commit is contained in:
1 parent
9de1373bd9
commit
27e4a0d0db
6 files changed
+226
-14
No files matched your search
@@ -2,7 +2,7 @@
|
||||
|
||||
`cw` and `cw2` transmit a continuous, unmodulated carrier at the selected
|
||||
profile's frequency and the configured TX power. They are available in the
|
||||
shared ASCII CLI on SX1262-family and LR1110 builds, including repeaters,
|
||||
shared ASCII CLI on SX1276-family, SX1262-family, and LR1110 builds, including repeaters,
|
||||
Companions, room servers, and sensors that use that CLI.
|
||||
|
||||
| Command | Action |
|
||||
@@ -32,6 +32,12 @@ or a busy radio. Profile retuning waits until the carrier stops; replacement
|
||||
or expiry of the active second profile stops its carrier. Nothing about CW
|
||||
is saved across reboot.
|
||||
|
||||
The normal `set tx <dBm>` command also works during CW for meter sweeps. It
|
||||
keeps the board's power limits and PA calibration, resumes the carrier after
|
||||
changing power, and does not extend the CW timeout. TX power retains its usual
|
||||
saved behavior. SX1276 temporarily uses FSK with zero frequency deviation,
|
||||
then rebuilds the LoRa configuration before resuming reception.
|
||||
|
||||
Use the local USB or BLE console for immediate replies and manual stopping.
|
||||
An on-air CLI reply must wait until the carrier ends because LoRa packets
|
||||
cannot transmit during the test.
|
||||
|
||||
@@ -46,6 +46,30 @@ no outbound packet pending. The observer has no autonomous transmission.
|
||||
`src/Mesh.cpp` and test-file contents; the actual implementation uses
|
||||
`ota_context_if_active()`. This is separate from the CW changes.
|
||||
|
||||
## SX1276 follow-up
|
||||
|
||||
The SX1276 carrier feature from [PR #11](https://github.com/mikecarper/MeshCore/pull/11)
|
||||
is included alongside SX1262 and LR1110 support. It switches to FSK with zero
|
||||
deviation, applies the board's calibrated TX power, and rebuilds the runtime
|
||||
LoRa configuration when stopped. External-PA settings pass through the same
|
||||
DAC/drive-power mapping used for packets, including RFO selection.
|
||||
|
||||
The normal TX power command can adjust a running carrier for meter sweeps.
|
||||
RadioLib's SX1276 power setter enters standby, so the carrier is restarted
|
||||
afterward without extending the deadline. Failed power changes stop the
|
||||
carrier and restore the previous cached power.
|
||||
|
||||
Follow-up checks use base `9dd9881d520b4b791600a00fff1f8e1436921054` plus the
|
||||
SX1276 changes. Production-method regression tests cover both profiles,
|
||||
zero deviation, external-PA calibration, RFO, power sweeps, timeout, failed
|
||||
FSK entry, failed restoration, retry guards, and return to LoRa. The native
|
||||
CW paths and existing radio/profile/sleep/PA checks pass as well.
|
||||
Both `GEPRC_Linkflow_900_repeater` (external PA) and
|
||||
`Heltec_v2_companion_radio_usb` firmware builds pass, including size checks.
|
||||
|
||||
SX1276 RF output has not been measured in this follow-up. The physical RF
|
||||
results above apply to SX1262 and LR1110.
|
||||
|
||||
## Bench qualifications
|
||||
|
||||
The first CW2 request arrived before radio2's existing delayed activation.
|
||||
|
||||
Reference in new issue
Block a user