Files
HaloKeymind/tools/hil/profile_switch_v5_packets_reverse.json
T
mikecarper 0e5955f889 Speed up SX1262 profile switching and verify radio lab behavior
Keep TCXO warm during owned dual-profile retunes, batch modulation setup, and enable guarded fast RX with buffered 8 MHz SPI on XIAO S3 WIO and Indicator LoRa. Preserve lifecycle invalidation, packet guards, rollback, and existing scheduling budgets.

Add reliable sequence-scoped USB lab transport, native regression coverage, bounded channel and preamble diagnostics, and byte-exact measurement records including failed experiments and qualification limits.
2026-09-14 01:22:09 -07:00

639 lines
13 KiB
JSON

{
"schema": 5,
"experiment": "rx_after_profile_switch_packets",
"receiver": "COM28",
"sender": "COM31",
"power_dbm": -9,
"complete": false,
"trials": [
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 7,
"target": 0,
"length": 16,
"sequence": 1,
"listening": {
"listening": 1,
"profile": 0,
"sf500": 7,
"preamble": 32,
"setup_deferrals": 0
},
"sent": {
"sent": 1,
"len": 16,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 1,
"len": 16,
"valid": true,
"profile": 0,
"rssi": -43.0,
"snr": 12.5,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 7,
"target": 0,
"length": 64,
"sequence": 2,
"listening": {
"listening": 2,
"profile": 0,
"sf500": 7,
"preamble": 32,
"setup_deferrals": 0
},
"sent": {
"sent": 2,
"len": 64,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 2,
"len": 64,
"valid": true,
"profile": 0,
"rssi": -43.0,
"snr": 12.0,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 7,
"target": 0,
"length": 255,
"sequence": 3,
"listening": {
"listening": 3,
"profile": 0,
"sf500": 7,
"preamble": 32,
"setup_deferrals": 0
},
"sent": {
"sent": 3,
"len": 255,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 3,
"len": 255,
"valid": true,
"profile": 0,
"rssi": -43.0,
"snr": 12.0,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 7,
"target": 1,
"length": 16,
"sequence": 4,
"listening": {
"listening": 4,
"profile": 1,
"sf500": 7,
"preamble": 120,
"setup_deferrals": 0
},
"sent": {
"sent": 4,
"len": 16,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 4,
"len": 16,
"valid": true,
"profile": 1,
"rssi": -42.0,
"snr": 13.0,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 7,
"target": 1,
"length": 64,
"sequence": 5,
"listening": {
"listening": 5,
"profile": 1,
"sf500": 7,
"preamble": 120,
"setup_deferrals": 0
},
"sent": {
"sent": 5,
"len": 64,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 5,
"len": 64,
"valid": true,
"profile": 1,
"rssi": -42.0,
"snr": 13.0,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 7,
"target": 1,
"length": 255,
"sequence": 6,
"listening": {
"listening": 6,
"profile": 1,
"sf500": 7,
"preamble": 120,
"setup_deferrals": 0
},
"sent": {
"sent": 6,
"len": 255,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 6,
"len": 255,
"valid": true,
"profile": 1,
"rssi": -42.0,
"snr": 13.5,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 8,
"target": 0,
"length": 16,
"sequence": 7,
"listening": {
"listening": 7,
"profile": 0,
"sf500": 8,
"preamble": 32,
"setup_deferrals": 0
},
"sent": {
"sent": 7,
"len": 16,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 7,
"len": 16,
"valid": true,
"profile": 0,
"rssi": -43.0,
"snr": 11.8,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 8,
"target": 0,
"length": 64,
"sequence": 8,
"listening": {
"listening": 8,
"profile": 0,
"sf500": 8,
"preamble": 32,
"setup_deferrals": 0
},
"sent": {
"sent": 8,
"len": 64,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 8,
"len": 64,
"valid": true,
"profile": 0,
"rssi": -43.0,
"snr": 12.0,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 8,
"target": 0,
"length": 255,
"sequence": 9,
"listening": {
"listening": 9,
"profile": 0,
"sf500": 8,
"preamble": 32,
"setup_deferrals": 0
},
"sent": {
"sent": 9,
"len": 255,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 9,
"len": 255,
"valid": true,
"profile": 0,
"rssi": -43.0,
"snr": 12.2,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 8,
"target": 1,
"length": 16,
"sequence": 10,
"listening": {
"listening": 10,
"profile": 1,
"sf500": 8,
"preamble": 88,
"setup_deferrals": 0
},
"sent": {
"sent": 10,
"len": 16,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 10,
"len": 16,
"valid": true,
"profile": 1,
"rssi": -41.0,
"snr": 12.5,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 8,
"target": 1,
"length": 64,
"sequence": 11,
"listening": {
"listening": 11,
"profile": 1,
"sf500": 8,
"preamble": 88,
"setup_deferrals": 0
},
"sent": {
"sent": 11,
"len": 64,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 11,
"len": 64,
"valid": true,
"profile": 1,
"rssi": -41.0,
"snr": 12.2,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 8,
"target": 1,
"length": 255,
"sequence": 12,
"listening": {
"listening": 12,
"profile": 1,
"sf500": 8,
"preamble": 88,
"setup_deferrals": 0
},
"sent": {
"sent": 12,
"len": 255,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 12,
"len": 255,
"valid": true,
"profile": 1,
"rssi": -41.0,
"snr": 12.5,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 9,
"target": 0,
"length": 16,
"sequence": 13,
"listening": {
"listening": 13,
"profile": 0,
"sf500": 9,
"preamble": 32,
"setup_deferrals": 0
},
"sent": {
"sent": 13,
"len": 16,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 13,
"len": 16,
"valid": true,
"profile": 0,
"rssi": -43.0,
"snr": 12.2,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 9,
"target": 0,
"length": 64,
"sequence": 14,
"listening": {
"listening": 14,
"profile": 0,
"sf500": 9,
"preamble": 32,
"setup_deferrals": 0
},
"sent": {
"sent": 14,
"len": 64,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 14,
"len": 64,
"valid": true,
"profile": 0,
"rssi": -43.0,
"snr": 12.0,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 9,
"target": 0,
"length": 255,
"sequence": 15,
"listening": {
"listening": 15,
"profile": 0,
"sf500": 9,
"preamble": 32,
"setup_deferrals": 0
},
"sent": {
"sent": 15,
"len": 255,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 15,
"len": 255,
"valid": true,
"profile": 0,
"rssi": -43.0,
"snr": 12.0,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 9,
"target": 1,
"length": 16,
"sequence": 16,
"listening": {
"listening": 16,
"profile": 1,
"sf500": 9,
"preamble": 48,
"setup_deferrals": 0
},
"sent": {
"sent": 16,
"len": 16,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 16,
"len": 16,
"valid": true,
"profile": 1,
"rssi": -41.0,
"snr": 11.0,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 9,
"target": 1,
"length": 64,
"sequence": 17,
"listening": {
"listening": 17,
"profile": 1,
"sf500": 9,
"preamble": 48,
"setup_deferrals": 0
},
"sent": {
"sent": 17,
"len": 64,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 17,
"len": 64,
"valid": true,
"profile": 1,
"rssi": -41.0,
"snr": 11.0,
"rx_errors": 0
},
"valid": true
},
{
"case": "production_batch",
"mask": 0,
"spi_mhz": 2,
"round": 1,
"sf500": 9,
"target": 1,
"length": 255,
"sequence": 18,
"listening": {
"listening": 18,
"profile": 1,
"sf500": 9,
"preamble": 48,
"setup_deferrals": 0
},
"sent": {
"sent": 18,
"len": 255,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 18,
"len": 255,
"valid": true,
"profile": 1,
"rssi": -41.0,
"snr": 10.8,
"rx_errors": 0
},
"valid": true
},
{
"case": "combined_spi8",
"mask": 119,
"spi_mhz": 8,
"round": 1,
"sf500": 7,
"target": 0,
"length": 16,
"sequence": 19,
"listening": {
"listening": 19,
"profile": 0,
"sf500": 7,
"preamble": 32,
"setup_deferrals": 0
},
"sent": {
"sent": 19,
"len": 16,
"rc": 0,
"power_dbm": -9
},
"received": {
"received": 19,
"len": 16,
"valid": true,
"profile": 0,
"rssi": -43.0,
"snr": 12.0,
"rx_errors": 0
},
"valid": true
}
],
"scope": "Stationary short-range payload checks, not sensitivity/PER qualification"
}