CHRP Track
Inspiration
When a hurricane, earthquake or wildfire hits, cell towers and internet service are often the first things to fail. That is exactly when people most need to say “we’re safe,” “send help” or “the bridge is out.” Text-only emergency radios exist, but a short voice note or a photo carries far more information, and those are usually too large to send without a network.
We asked a simple question: can we fit a human voice and a photograph into a few tiny radio packets?
What it does
CHRP lets people send short voice messages and photos over a LoRa mesh network. These are small, low-cost, long-range radios that pass messages from device to device with no cell towers, Wi-Fi or internet.
The challenge is that LoRa is extremely slow. Each packet holds only around 200 bytes, which is less than a single sentence of text. CHRP solves this by compressing media dramatically:
Voice: A 3.2-second voice message starts as 51,200 bytes of raw audio. CHRP shrinks it to 280 bytes, about 180 times smaller, which fits in just 2 radio packets.
Photos: A photo is reduced to a 64×64 thumbnail and compressed to about 800 bytes, or 5 packets. That is still clear enough to recognize a broken bridge, a flooded road or a person.
Lost packets: Radio packets often get lost. CHRP adds one extra “parity” packet to each group, so if any single packet goes missing, the receiver can rebuild it exactly.
AI assistance on the device: NVIDIA Nemotron Nano runs locally to transcribe voice messages, write one-line summaries and flag urgent messages such as SOS calls or medical needs. It works fully offline.
On the receiving end, a responder sees the photo, hears the voice message and reads a short summary, all from a few hundred bytes that crossed miles of radio.
How it works
Speech is described, not stored. Instead of saving every audio sample, the voice codec (Codec2) breaks speech into 40-millisecond frames. For each frame it records only the pitch, whether the sound is voiced or noisy, and the overall shape of the sound. That comes to just 28 bits per frame. Images keep only what matters. The photo is shrunk, and then WebP compression predicts each small block of pixels from its neighbors. It stores only the differences and drops fine detail the eye barely notices. Bytes become packets. The compressed data is split into fragments of 180 bytes or less, and each fragment gets a small header. Parity protects the group. A parity packet is calculated by combining the data packets with a bitwise XOR. If one data packet is lost, combining the parity packet with the surviving packets restores it exactly. The mesh delivers. Packets hop across LoRa nodes until they reach the receiver, which checks, reassembles and decodes them.
Our demo video shows each of these steps as an animation built from the real data, so every number on screen is the actual size produced by the system.
Accuracy and uncertainty
In emergencies, false confidence is dangerous, so CHRP is built to be honest about what it knows:
Compression loses some quality, and CHRP never uses AI to “enhance” or fill in images or audio. What you see is exactly what was sent.
Checked delivery. Every packet carries a checksum, so corrupted data is rejected instead of being shown as if it were correct.
Accountability. Through BlockConvey, every AI output is logged with its model version and confidence level. This creates an audit trail and lets us monitor the model for drift or bias over time.
Challenges we ran into
The size of the radio packets. Fitting a voice and a photo into a few hundred bytes meant measuring every single byte. Ordinary formats like MP3 and JPEG were far too large. Packet loss. Radio links drop packets constantly. Resending them wastes precious airtime, so we chose parity packets that let the receiver fix losses on its own. Trusting AI offline. A model running on a small device can make mistakes. Confidence scores, human confirmation and BlockConvey audit logs keep it accountable. Accomplishments we’re proud of Shrinking a 3.2-second voice message from 51,200 bytes to 280 bytes Keeping a photo recognizable at about 800 bytes Recovering a lost packet perfectly using nothing but XOR math Building a demo animation in which every number shown is real
What’s next
Field testing across multi-hop mesh networks in rural and disaster-prone areas Stronger error correction that can recover from several lost packets at once Offline translation of voice messages for multilingual emergency zones A simple app that pairs with an off-the-shelf LoRa radio
Log in or sign up for Devpost to join the conversation.