This commit is contained in:
mikecarper
2026-09-16 22:09:44 +00:00
parent 341218e87e
commit 984e78ff7b
94 changed files with 99 additions and 183 deletions
+1 -1
View File
@@ -2808,7 +2808,7 @@
<script src="/MeshCore/_javascript/filter_tool.js"></script>
<script src="/MeshCore/_javascript/preset_test.js"></script>
<script src="/MeshCore/_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3804,7 +3804,7 @@ and NTP diagnostics remain infrastructure features.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -55
View File
@@ -9,10 +9,6 @@
bw: "500",
sf: "8",
cr: "7",
normalfreq: "910.525",
normalbw: "62.5",
normalsf: "7",
normalcr: "5",
tx: "22",
});
const VALID_BANDWIDTHS = Object.freeze([
@@ -147,10 +143,6 @@
const bw = strictNumber(raw.bw, "bw");
const sf = strictInteger(raw.sf, "sf");
const cr = strictInteger(raw.cr, "cr");
const normalFreq = strictNumber(raw.normalfreq, "normalfreq");
const normalBw = strictNumber(raw.normalbw, "normalbw");
const normalSf = strictInteger(raw.normalsf, "normalsf");
const normalCr = strictInteger(raw.normalcr, "normalcr");
const tx = strictSignedNumber(raw.tx, "tx");
if (endMs <= startMs) {
@@ -172,22 +164,6 @@
if (cr < 5 || cr > 8) {
throw new PresetTestError("cr must be between 5 and 8");
}
if (normalFreq < 150 || normalFreq > 2500) {
throw new PresetTestError("normalfreq must be between 150 and 2500 MHz");
}
if (!VALID_BANDWIDTHS.some(function (allowed) {
return Math.abs(allowed - normalBw) < 0.01;
})) {
throw new PresetTestError(
"normalbw must be one of " + VALID_BANDWIDTHS.join(", ") + " kHz"
);
}
if (normalSf < 5 || normalSf > 12) {
throw new PresetTestError("normalsf must be between 5 and 12");
}
if (normalCr < 5 || normalCr > 8) {
throw new PresetTestError("normalcr must be between 5 and 8");
}
if (tx < -30 || tx > 60) {
throw new PresetTestError("tx must be between -30 and 60 dBm");
}
@@ -202,15 +178,9 @@
bw: bw,
sf: sf,
cr: cr,
normalFreq: normalFreq,
normalBw: normalBw,
normalSf: normalSf,
normalCr: normalCr,
tx: tx,
freqText: numberText(freq),
bwText: numberText(bw),
normalFreqText: numberText(normalFreq),
normalBwText: numberText(normalBw),
txText: numberText(tx),
});
}
@@ -244,9 +214,6 @@
function commandsFor(config, nowMs) {
const tuple = [config.freqText, config.bwText, config.sf, config.cr].join(",");
const normalTuple = [
config.normalFreqText, config.normalBwText, config.normalSf, config.normalCr,
].join(",");
const minutes = remainingMinutes(config, nowMs);
return Object.freeze({
stockNow: "tempradio " + tuple + "," + minutes,
@@ -259,7 +226,7 @@
"set radio2.cross on\nset tempradioat2 " + tuple + ",rxtx," +
config.startEpoch + "," + config.endEpoch + "\nget tempradioat2",
stockCancelBefore: "get tempradioat\ndel tempradioat all",
stockCancelDuring: "tempradio " + normalTuple + ",1",
stockCancelDuring: "reboot",
stockLeaveIn30: "tempradio " + tuple + ",30",
companionCancelBefore:
"get tempradioat2\ndel tempradioat2 all\nset radio2.cross auto",
@@ -437,10 +404,6 @@
params.set("bw", values.bw);
params.set("sf", values.sf);
params.set("cr", values.cr);
params.set("normalfreq", values.normalfreq);
params.set("normalbw", values.normalbw);
params.set("normalsf", values.normalsf);
params.set("normalcr", values.normalcr);
params.set("tx", values.tx);
return configFromSearch("?" + params.toString());
}
@@ -469,10 +432,6 @@
url.searchParams.set("bw", config.bwText);
url.searchParams.set("sf", String(config.sf));
url.searchParams.set("cr", String(config.cr));
url.searchParams.set("normalfreq", config.normalFreqText);
url.searchParams.set("normalbw", config.normalBwText);
url.searchParams.set("normalsf", String(config.normalSf));
url.searchParams.set("normalcr", String(config.normalCr));
url.searchParams.set("tx", config.txText);
return url.toString();
}
@@ -551,11 +510,6 @@
setText(root, '[data-field="bw-display"]', config.bwText);
setText(root, '[data-field="sf"]', String(config.sf));
setText(root, '[data-field="cr"]', String(config.cr));
setText(
root,
'[data-field="normal-profile"]',
[config.normalFreqText, config.normalBwText, config.normalSf, config.normalCr].join(",")
);
setText(root, '[data-role="start-zoned"]', formatZoned(config.startMs, config.tz));
setText(root, '[data-role="end-zoned"]', formatZoned(config.endMs, config.tz));
setText(root, '[data-role="display-zone"]', config.tz);
@@ -599,10 +553,6 @@
generator.elements.bw.value = config.bwText;
generator.elements.sf.value = String(config.sf);
generator.elements.cr.value = String(config.cr);
generator.elements.normalfreq.value = config.normalFreqText;
generator.elements.normalbw.value = config.normalBwText;
generator.elements.normalsf.value = String(config.normalSf);
generator.elements.normalcr.value = String(config.normalCr);
generator.elements.tx.value = config.txText;
function generateUrl() {
@@ -616,10 +566,6 @@
bw: generator.elements.bw.value,
sf: generator.elements.sf.value,
cr: generator.elements.cr.value,
normalfreq: generator.elements.normalfreq.value,
normalbw: generator.elements.normalbw.value,
normalsf: generator.elements.normalsf.value,
normalcr: generator.elements.normalcr.value,
tx: generator.elements.tx.value,
});
const url = configuredUrl(
+1 -1
View File
@@ -3219,7 +3219,7 @@
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -2922,7 +2922,7 @@ reproduction steps, and the tested preamble settings.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3114,7 +3114,7 @@ Command guide: <a href="../carrier_wave/">carrier-wave RF checks</a>.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3334,7 +3334,7 @@ does not contain its linked marker is rejected during the build.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -6399,7 +6399,7 @@ selected by that manifest.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -11360,7 +11360,7 @@ does not update an older application's version reader.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3036,7 +3036,7 @@ and build checks; subsequent hardware checks are recorded in the
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3237,7 +3237,7 @@ policy. The second invocation verifies the persisted paths after reboot.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3223,7 +3223,7 @@ assets or firmware-picker entries were replaced by these experimental builds.</p
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3039,7 +3039,7 @@ protocol setting to resize it at runtime.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -5810,7 +5810,7 @@ response = wait_for_response(PACKET_MSG_SENT)
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -4015,7 +4015,7 @@ selection, nRF52 in-place deltas, relays, trust checks, and recovery behavior.</
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3001,7 +3001,7 @@ across the board matrix.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3105,7 +3105,7 @@ reboot so the default-ASCII check has a new session. On ESP32, omit both
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -2931,7 +2931,7 @@ pip install mkdocs-material
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3164,7 +3164,7 @@ and frequency-repeat scope/error propagation. Temporary build overlay removed.</
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3019,7 +3019,7 @@ the Arduino 2.x repeater releases unused Bluetooth controller RAM in
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3206,7 +3206,7 @@ a crossover-only block. See the <a href="../flood_filtering/#filter-bridge-and-r
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -5784,7 +5784,7 @@ Flash one of the Ethernet-enabled firmware variants:
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3745,7 +3745,7 @@ sized structure for every possible condition and action.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3046,7 +3046,7 @@ for runtime diagnostics.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3581,7 +3581,7 @@ and each replacement's <code>.memory.json</code> report before updating.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -4646,7 +4646,7 @@ inspect or reset those separately when troubleshooting.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3233,7 +3233,7 @@ is a finite bench comparison, not a calibrated sensitivity or interference test.
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
@@ -3286,7 +3286,7 @@ were preserved.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3230,7 +3230,7 @@ serve host-supplied packages without needing that receiver storage layout.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3454,7 +3454,7 @@ ownership in <a href="https://github.com/mikecarper/MeshCore/blob/keymindCascade
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3031,7 +3031,7 @@ Room Server: 7ee81f1cb65fc274bd363397c3c80ce9006d575efae50fe952c8ca246613a18c
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3142,7 +3142,7 @@ fresh data is available.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3805,7 +3805,7 @@ set flood.retry.path 2
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
@@ -3300,7 +3300,7 @@ about 5.9 MiB. No USB reset, Pi reboot, or target battery removal was used.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -4671,7 +4671,7 @@ network, and reboot record in that manifest.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -2873,7 +2873,7 @@ then check the repeater's five rows and the V4's non-blinking reader footer.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3300,7 +3300,7 @@ sign serial requests.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -2888,7 +2888,7 @@
<script src="_javascript/filter_tool.js"></script>
<script src="_javascript/preset_test.js"></script>
<script src="_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -4355,7 +4355,7 @@
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -4140,7 +4140,7 @@ image: the default active-download guard preserves it until you explicitly use
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3345,7 +3345,7 @@ not the cause, and waev does not cap connections per IP.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -2957,7 +2957,7 @@ were restarted in phase <code>B-post-CAD-soak</code>, marking the intentional up
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3239,7 +3239,7 @@ these HIL changes; this is not a clean-release comparison.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3150,7 +3150,7 @@ Android camera/pairing compatibility.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3186,7 +3186,7 @@ profile does not include direct MQTT; the V4 does.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -2891,7 +2891,7 @@ The harness is shared with OTAFIX's TinyUSB fork at
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3023,7 +3023,7 @@ values; receiving new verified advertisements can refresh them normally.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3719,7 +3719,7 @@ DEBUG: PWRMGT: LPCOMP wake configured (AIN7, ref=3/8 VDD)
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -2898,7 +2898,7 @@
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3755,7 +3755,7 @@ and container internals, see <a href="../ota_protocol/">the OTA protocol specifi
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3419,7 +3419,7 @@ as an alias.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3334,7 +3334,7 @@ Use USB/BLE DFU or SWD for initial provisioning and local recovery.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3430,7 +3430,7 @@ OTAFIX enters USB/BLE recovery rather than booting a partial image.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -4719,7 +4719,7 @@ reject v2+BOOTLOADER, v3 without exact <code>FULL|SIGNED|BOOTLOADER</code>, and
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3860,7 +3860,7 @@ that only contains what changed). You get them by:</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3437,7 +3437,7 @@ support only a subset of the path encodings and payload types described here.</p
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3047,7 +3047,7 @@ services are active, and the previously paused memory soak remains inactive.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3188,7 +3188,7 @@ completed 197/200 scanning packets: slow 97/100, fast 100/100, after fresh
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -4423,7 +4423,7 @@ relay an opaque OTA packet when their routing policy permits it.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3035,7 +3035,7 @@ cover that path. Physical display readability was not inspected.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3230,7 +3230,7 @@ tests, and results were initially handed off locally before publication.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+6 -36
View File
@@ -2840,8 +2840,7 @@ tuple; no source edit is required.</p>
<p>
The test will include bridges. If the Puget Sound area experiences a
widespread power outage or loss of cellular service, we will end the
test early and revert to the normal
<code data-field="normal-profile">910.525,62.5,7,5</code> profile.
test early and revert to the normal 910.525 MHz channel.
</p>
</section>
@@ -3010,10 +3009,9 @@ clock</code></pre>
<pre><code data-command="stock-cancel-during"></code></pre>
<button type="button" data-copy-command="stock-cancel-during">Copy stock leave command</button>
<p class="preset-test-note">
Stock MeshCore has no <code>normalradio</code> command. This starts a
one-minute temporary session on the normal return profile without
saving over the node's configuration. When that minute ends, the
node restores its saved radio settings.
Stock MeshCore has no <code>normalradio</code> command. This reboots
the node, which clears TempRadio and returns to its saved radio
settings. The command sends no reply; reconnect after the node starts.
</p>
<h4>Leave in 30 minutes</h4>
<pre><code data-command="stock-leave-30"></code></pre>
@@ -3111,32 +3109,6 @@ clock</code></pre>
<input type="number" name="tx" min="-30" max="60" step="0.1" required>
<small>This estimate-only value does not change the TempRadio commands.</small>
</label>
<div class="preset-test-generator-subheading">Normal return profile</div>
<label>
<span>Normal frequency (MHz)</span>
<input type="number" name="normalfreq" min="150" max="2500" step="0.001" required>
</label>
<label>
<span>Normal bandwidth (kHz)</span>
<select name="normalbw" required>
<option>7.8</option><option>10.4</option><option>15.6</option>
<option>20.8</option><option>31.25</option><option>41.7</option>
<option>62.5</option><option>125</option><option>250</option><option>500</option>
</select>
</label>
<label>
<span>Normal spreading factor</span>
<select name="normalsf" required>
<option>5</option><option>6</option><option>7</option><option>8</option>
<option>9</option><option>10</option><option>11</option><option>12</option>
</select>
</label>
<label>
<span>Normal coding-rate denominator</span>
<select name="normalcr" required>
<option>5</option><option>6</option><option>7</option><option>8</option>
</select>
</label>
</div>
<button type="submit">Generate test URL</button>
</form>
@@ -3172,9 +3144,7 @@ clock</code></pre>
timestamps with explicit UTC offsets or Unix epoch seconds. If
<code>tz</code> is omitted, the page uses the browser's time zone. The
other URL parameters are <code>freq</code>, <code>bw</code>,
<code>sf</code>, <code>cr</code>, <code>normalfreq</code>,
<code>normalbw</code>, <code>normalsf</code>, <code>normalcr</code>, and
estimate-only <code>tx</code>.
<code>sf</code>, <code>cr</code>, and estimate-only <code>tx</code>.
</p>
</section>
</div>
@@ -3244,7 +3214,7 @@ installed firmware documents.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -2974,7 +2974,7 @@
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3110,7 +3110,7 @@ checks equality against the production 4.6/300-us allocation.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -2997,7 +2997,7 @@ ownership alongside the timing model.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3825,7 +3825,7 @@ measure this added optimization; its time saving and RF behavior await testing.<
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3686,7 +3686,7 @@ single-profile mode.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3425,7 +3425,7 @@ The Pi's soak service and Indicator telemetry were also healthy after restoratio
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -2930,7 +2930,7 @@ layout afterward and does not wake a duty-cycling radio to inspect its mode.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -4135,7 +4135,7 @@ because its number appears first.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3304,7 +3304,7 @@ it does not certify all historical statements as current hardware behavior.</p>
<script src="../../_javascript/filter_tool.js"></script>
<script src="../../_javascript/preset_test.js"></script>
<script src="../../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3404,7 +3404,7 @@ the larger layout and do not fit a 1.25 MiB slot.</p>
<script src="../../_javascript/filter_tool.js"></script>
<script src="../../_javascript/preset_test.js"></script>
<script src="../../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3142,7 +3142,7 @@ remain available; Full alternatives require their matching partition layout.</p>
<script src="../../_javascript/filter_tool.js"></script>
<script src="../../_javascript/preset_test.js"></script>
<script src="../../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3626,7 +3626,7 @@ and <a href="../full_companion_features/">Full Companion feature guide</a> provi
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3305,7 +3305,7 @@ rollover. They are not substitutes for the hardware evidence.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
File diff suppressed because one or more lines are too long
@@ -3252,7 +3252,7 @@ again unless requested. No private backup contents were added to Git.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
@@ -3293,7 +3293,7 @@ Earlier captures were not overwritten.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3200,7 +3200,7 @@ the exact tested-image identifier. Prior captures were preserved.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3154,7 +3154,7 @@ these HIL-only additions, not a clean-release comparison.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
@@ -3102,7 +3102,7 @@ build overlay removed. No background test collector remains running.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3530,7 +3530,7 @@ these uncommitted HIL additions; this is not a clean-release comparison.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3108,7 +3108,7 @@ has been removed.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3197,7 +3197,7 @@ S3 soak work were not modified. The temporary build overlay was removed.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3222,7 +3222,7 @@ The temporary build overlay was removed; no autonomous test TX remains.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3230,7 +3230,7 @@ logger was not restarted. Changes were initially handed off locally before publi
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3118,7 +3118,7 @@ before publication.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3190,7 +3190,7 @@ results were initially handed off locally before publication.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3018,7 +3018,7 @@ Host simulations do not replace a post-flash LoRa login test on the G2.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3807,7 +3807,7 @@ function parseStatsPackets(buffer: ArrayBuffer): StatsPackets {
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3272,7 +3272,7 @@ CLI Base64 page rather than analyzer hex.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3556,7 +3556,7 @@ length, which also includes the sender-name prefix added over the air.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3006,7 +3006,7 @@ resolved. Do not erase or repartition the radio as part of this test.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>
+1 -1
View File
@@ -3253,7 +3253,7 @@ comparison covers all 95 printable ASCII glyphs.</p>
<script src="../_javascript/filter_tool.js"></script>
<script src="../_javascript/preset_test.js"></script>
<script src="../_javascript/preset_test.js?v=20260916-2"></script>
</body>