Radio transport
BK01 framing, bounded reassembly, deterministic loss tests and the gateway boundary.
A concrete transport experiment
The TypeScript codec splits up to 1,232 bytes into frames with a 44-byte header. The header contains the BK01 magic, a whole-payload SHA-256 digest, a two-byte frame index, a two-byte frame count and a four-byte payload length. Integer fields are big-endian. Supported MTUs are 64 through 300 bytes.
Reassembly tolerates ordering differences and identical duplicates. It rejects missing frames, conflicting duplicates, mixed digests, invalid lengths, overflow and a mismatching final hash. SHA-256 integrity alone does not authenticate a sender; a reconstructed Solana transaction must still have a valid wallet signature.
What the lab models
A seeded pseudorandom generator decides drops and latency jitter. Frames occupy a sequential channel for their serialized bit count divided by the chosen bitrate. Each frame gets at most five transmission attempts; acknowledgements are idealized. The result includes payload bytes, all transmitted bytes, modelled elapsed time and an event transcript.
This is not erasure coding, a propagation model or a consensus algorithm. It does not model RF interference, ack loss, jamming, real geographic topology or adversarial validators. Exported durations are simulated time, not measured hardware benchmarks.
Connect a reference node
Run the separate TheBunkerCoin reference implementation in your own environment and expose its API through an authenticated HTTPS gateway. Follow its current README rather than assuming a specific binary or database is production-ready. Configure the server variables below and redeploy.
The adapter reads /blocks?limit=12, /nodes and /radio. Set the reporting mode explicitly; hardware-reported is still an operator claim, not an independent attestation. Do not expose private locations, callsigns or device identifiers through public telemetry.
RADIO_NODE_URL=https://your-gateway.example
RADIO_NODE_API_KEY=<server-only gateway token>
RADIO_NODE_MODE=simulationSigned-transaction transport bridge
The CLI accepts newline-delimited base64 BK01 frames on standard input and checks the reconstructed memo transaction. Decode-only is the default. The --submit option forwards an already signed transaction to an HTTPS Bunkercoin relay; the bridge never signs.
Recent-blockhash transactions expire. A slow path can exceed that lifetime; do not retry indefinitely or claim an expired transaction settled. Durable-nonce support and its account lifecycle are not implemented. Real radio use also requires appropriate equipment, lawful spectrum access and compliance with the rules applicable to the operator.
npm run radio:gateway < captured-frames.txt
RELAY_URL=https://your-app.example npm run radio:gateway -- --submit < captured-frames.txt