amateur radio
open source
amateur radio, Android, Apache-2.0, APRS, AREDN, ATAK, BLE, bluetooth, Briar, callsign, community network, cryptography, digipeater, disaster response, EmComm, emergency communications, esp32, Flutter, Geogram, ham radio, Haven, linux, mesh networking, meshtastic, NOSTR, off-grid communication, offline maps, open source, P2P, packet radio, peer-to-peer, Quansheng UV-K5, raspberry pi, station server, store-and-forward, survival, WebRTC, wifi
9M2PJU
0 Comments
Geogram: Off-Grid Peer-to-Peer Communication Without Servers, Accounts, Or Cloud
Most of the apps on your phone stop working the moment the internet drops. WhatsApp spins, Signal waits for a connection, your email client sits there with a spinner, and even your notes app sometimes refuses to sync because it cannot reach a server in a data centre you have never seen. The entire modern communications stack is built on a single fragile assumption: that the network is always there, and that a company you do not control is willing to keep relaying your data.
Geogram is a deliberate break from that assumption. It is an open source, Apache-2.0 licensed, peer-to-peer communications platform that connects devices directly, phone to phone, laptop to laptop, ESP32 to ESP32, without requiring servers, accounts, cloud APIs, or any infrastructure you do not own. Messages hop between devices over whatever transport happens to be available, WiFi when you have it, Bluetooth when you do not, internet relay through a station when nothing else works, and the whole thing keeps running when the cell tower is down, the fibre is cut, or the company that runs your chat app decides to change their API terms.
This article is a walk through what Geogram is, how its architecture fits together, what it actually does in the field, the ESP32 and Quansheng radio angle, why the callsign-based identity system should make hams sit up and pay attention, and where it sits next to other off-grid tools like Meshtastic, AREDN, ATAK, and Haven.
What Geogram Is, In Plain Language
Geogram is a transport-agnostic peer-to-peer communications suite built from a single Flutter codebase. The repo lives at geograms/geogram on GitHub, Apache-2.0 licensed, with around 2,000 commits and a small but active community. The same codebase compiles to Android, Linux, Windows, macOS, iOS, web, and ESP32 firmware, and every platform speaks the same data formats and can sync with every other platform.
The core idea is this. Every device running Geogram is both a client and a server. There is no central server you must register with, no account you must create, no phone number you must verify, no email you must confirm. Your identity is a callsign paired with a NOSTR cryptographic keypair. You pick a callsign, the app generates a keypair, and from that point on every message you send is cryptographically signed so that anyone receiving it can verify it came from you. No spoofing, no impersonation, no “trust us” from a company that might not exist next year.
Messages move between devices over a Connection Manager that picks the best available transport automatically and fails over when one path dies. The priority table, from fastest to slowest, looks like this:
| Priority | Transport | Use Case |
|---|---|---|
| 5 | USB-C (AOA) | Direct cable, fastest offline connection |
| 10 | LAN | Direct HTTP on same WiFi network |
| 15 | WebRTC | Peer-to-peer across NAT, no relay needed |
| 30 | Station | Internet relay through a community station |
| 35 | Bluetooth Classic | Fast offline transfers, paired devices |
| 40 | BLE | Slow offline fallback, no pairing needed |
You do not choose the transport. Geogram figures out what is available and uses it. Start a conversation over WiFi at home, keep talking over Bluetooth while walking together, sync up later through a station when you are apart. The communication adapts; you just talk. Messages that cannot be delivered immediately queue locally and sync when the target device comes back into range, even if that takes hours or days.
Where Geogram Came From
Geogram is built by a small project that publishes itself under the geograms GitHub organisation, created in May 2025, with the project site at geogram.radio. The organisation hosts 14 public repos, including the main Flutter app, an ESP32 firmware repo, a LilyGO T-Dongle S3 firmware for BLE beacon interaction, a Quansheng UV-K5 integration repo, a pure-Dart I2P node for decentralised NAT-traversing file sharing, an offline HTML variant, and a central documentation repo.
The pitch, in the project’s own words, is that Geogram is built for communities that need to communicate when things get difficult: remote areas, disaster response, places where the network is censored or unreliable, or simply people who believe their conversations should not depend on corporate infrastructure. There is no paid tier, no freemium upsell, no pro version. The binary is large, the licence is permissive, and the only outbound network connections the app ever makes are to stations you explicitly configure and optional GitHub API calls on the downloads page.
The Station Server: Your Device Becomes Infrastructure
This is the idea that ties Geogram together and the one that should feel familiar to anyone who has ever run a packet radio node, a digipeater, or an APRS iGate.
Your phone can be a server. Your laptop can be a server. That old Raspberry Pi collecting dust can be a server. Geogram runs station software on any device, turning personal hardware into community infrastructure. Nothing lives on someone else’s cloud.
A station is an optional relay point. It bridges devices across the internet when they are not on the same local network, but it does not become a required dependency. If the station goes down, devices on the same WiFi or within Bluetooth range still talk to each other directly. The station enhances connectivity; it does not own it.
The Station API exposes HTTP and WebSocket endpoints. Authentication uses NOSTR-signed events, which means there are no passwords. Every request is cryptographically signed by the sender’s keypair, and the station verifies the signature. The API covers chat rooms, direct messages, device proxying (forwarding requests to devices that are not directly reachable), software update distribution for offline devices, cached map tiles, and a toggleable debug API.
The use cases the project describes are deliberately grounded in real-world connectivity situations:
- A station at a community centre serves visitors during open hours, then continues syncing with members who pass by after closing.
- A station on a boat collects messages while at sea and delivers them when returning to port.
- A station on a Raspberry Pi at a repeater site serves a neighbourhood over WiFi and syncs with phones over Bluetooth as people walk by.
No monthly fees. No account required. No company can shut down your community’s infrastructure because you own it.
The ESP32 Station: Build Your Own Node For $10-20
For dedicated station hardware, Geogram provides firmware for ESP32 microcontrollers. These are the same cheap, ubiquitous chips that power a huge fraction of the maker and amateur radio firmware world, including the 9M2PJU fox hunt beacon and DX cluster client covered elsewhere on this blog. A Geogram ESP32 station costs about $10 to $20 in parts and runs continuously on minimal power, serving as an always-on infrastructure node for your community network.
Three boards are currently supported:
| Board | Features |
|---|---|
| ESP32-C3-mini | Compact WiFi bridge, minimal footprint |
| ESP32-S3 ePaper 1.54″ | E-paper display, temperature/humidity sensor, RTC |
| ESP32 Generic | Basic WiFi relay |
An ESP32 station does several things:
- WiFi bridging, connects BLE mesh networks to WiFi and the internet, acting as a gateway between the short-range Bluetooth layer and the longer-range IP layer.
- Configuration portal, on first boot the station creates a “Geogram-Setup” WiFi network. You connect, navigate to
192.168.4.1, and enter your network credentials. The station then joins your network and begins relaying traffic. - FTP and Telnet access, remote file management and a command line interface for headless operation.
- Map tile caching, stores offline OpenStreetMap and satellite imagery on an SD card, serving tiles to connected devices over WiFi or Bluetooth.
- OTA updates, automatic firmware updates pulled from GitHub releases, so a deployed station stays current without someone walking out to it with a laptop.
Pre-built firmware binaries are on the releases page, and the build instructions are in the esp32/ folder of the main repo.
The Mobile Flasher: ESP32 And Quansheng Radios From Your Phone
This is the feature that should catch the eye of anyone who has ever cursed at a USB-to-TTL adapter or a flaky Windows driver stack while trying to flash a radio.
Geogram includes a Flasher app that flashes ESP32 devices and programs Quansheng UV-K5 radios directly from an Android phone. No computer needed. The flasher has built-in USB drivers, automatic device detection by VID and PID, real-time progress tracking, and a device library with photos, datasheets, and purchase links.
Supported targets:
- ESP32, ESP32-C3, ESP32-S2, ESP32-S3
- Quansheng UV-K5 (the cheap, hackable handheld that has become a favourite in the ham and maker communities thanks to its open firmware ecosystem)
The Quansheng integration goes deeper than just flashing. There is a dedicated geograms/geogram-k5 repo for connecting the UV-K5 to the Geogram platform, and a geograms/geogram-tdongle repo with LilyGO T-Dongle S3 firmware that interacts with Geogram for Android as a BLE beacon. The radio is being treated as a first-class citizen of the network, not just a flash target.
Offline Maps: Worldwide Imagery Without Google, Mapbox, Or API Keys
Geogram includes worldwide satellite imagery and street maps that work without internet. Pan and zoom anywhere on the planet using cached tiles stored locally on your device or synced from a nearby station.
Stations cache map tiles for their region and serve them to connected devices over WiFi or Bluetooth. A field team downloads tiles before heading out; a community station keeps regional maps available for anyone who connects. No Google Maps, no Mapbox, no API keys, no usage limits, no billing surprises.
The map is also the interface to local information. Events, places, and active alerts appear directly on the map. Tap to see details, get directions, or add your own. The same map works whether you are online in a city or offline in the wilderness. For hams who already use APRS maps and SOTA spotter maps, this is a familiar idea applied to a much broader set of data.
The App Suite: A Whole Offline Operating System
Geogram is not just a chat app. It is a suite of apps, each storing data in human-readable text formats that sync between devices through any available transport. The formats are designed to be git-compatible, offline-first, and auditable. You can open the data files in a text editor and read them.
Chat
Real-time messaging with room-based channels and direct messages. File attachments, voice messages, location sharing, and polls. Messages can be NOSTR-signed for sender verification. Works across all connection types, from high-speed LAN to low-bandwidth Bluetooth, automatically adapting delivery to available transports. Messages queue locally and sync when devices reconnect, so nothing is lost even with intermittent connectivity.
Blog
Long-form publishing with markdown content, drafts, tags, and comments. Posts organise chronologically with year-based folders and support file attachments through SHA1-based deduplication. A local publication can distribute articles to readers who sync when they visit community gathering points, creating a sneakernet distribution network for information. This is community journalism that does not depend on a hosting provider.
Work
An offline Google Docs replacement. Spreadsheets with cells, formulas, and multiple sheets. Rich text documents with headings, lists, tables, and images. Presentations with slides, themes, and transitions. Forms with field definitions and signed responses. Real-time collaboration syncs automatically when connectivity is available. All data stays on your devices. No cloud storage, no subscriptions, no data harvesting.
Events
Community calendars with event details, locations, media galleries, and participant tracking. Physical locations with GPS coordinates and online gatherings. Multi-day events, registration systems, and update timelines. Information propagates through the network as devices sync, so even members with intermittent connectivity learn about upcoming activities.
Places
Geographic points of interest organised by coordinate-based regions. Document water sources, shelter locations, supply caches, hazards, or any other geographic knowledge without commercial mapping services. A grid system divides the globe into manageable regions that scale automatically as density increases. The information persists locally and syncs between members, building a community-maintained geographic database.
Alerts
A geographic alert system with severity classification and community verification. Four severity levels, emergency, urgent, attention, and info, prioritise response. Status tracking follows issues from open through resolution. A downed power line, a flooded road, an unsafe structure gets documented with photos and location, then verified by others who encounter it. Updates track progress as situations evolve, and resolution proof closes the loop.
Inventory
Personal and shared asset tracking with folder organisation up to five levels deep. Over 200 predefined item types cover off-grid contexts: vehicles, tools, food, medical supplies, communications equipment. The borrowing system tracks who has what, with support for callsign-identified community members and free-text entries for external borrowers. Usage and refill tracking monitors consumables. Communities can share inventory visibility through groups while keeping sensitive items private.
Wallet
Track debts and IOUs with cryptographic receipts. Multi-currency support, including time as a currency. Optional witness signatures for agreements. This is informal community economics without a payment processor.
Transfer
Unified download and upload management across all apps. Queue prioritisation, resume capability for interrupted transfers, and a patient mode that waits up to 30 days for offline peers. Automatic retry with exponential backoff handles unreliable connections. Priority levels (urgent, high, normal, low) ensure critical files move first. Ban lists block unwanted transfers from specific callsigns.
Bot
An offline AI assistant using local GGUF models. Q&A about station data, content moderation, semantic search, and voice transcription through Whisper. Model selection adapts to device hardware, from lightweight models on phones to larger models on capable stations. The bot indexes station content automatically, making accumulated knowledge searchable. No internet API calls. This is local AI in the most literal sense.
Reader
An offline content library. RSS feeds, manga with CBZ support, ebooks in EPUB, PDF, and TXT. All content cached locally with progress tracking. Useful for carrying a reference library into the field.
Flasher
The ESP32 and Quansheng flashing tool described above.
Games
Offline peer-to-peer games: Poker, Blackjack, Rommé, and a Math Challenge. Play via Bluetooth with nearby devices. NOSTR-signed results prevent cheating. A reminder that off-grid tools do not have to be entirely serious.
Forum (in development)
Threaded discussions organised by sections and topics. Persistent, searchable archives of community knowledge with quoting, file attachments, and polls.
Market (in development)
Decentralised commerce with shops, inventory, orders, and verified reviews. Peer-to-peer transactions without payment processors or central marketplaces.
Postcards (in development)
Sneakernet message delivery through physical carrier chains. Messages travel via intermediate carriers who stamp them with cryptographic proof, creating tamper-proof chains of custody. This is the digital equivalent of passing a message by hand, with a cryptographic paper trail.
Under The Hood: Why The Binary Is 200-400 MB
Geogram downloads are large, 200 to 400 MB depending on platform. This is deliberate. Everything runs locally. No cloud APIs, no external services, no phone-home behavior. The trade-off is size: services that other apps outsource to Google, Amazon, or specialised SaaS providers are bundled directly into the binary.
| Component | Size | Purpose |
|---|---|---|
| IP Geolocation | ~133 MB | Offline location lookup using DB-IP MMDB, no external queries |
| ONNX Runtime | ~73 MB | Local AI/ML inference for music generation and vision |
| Media Player | ~50 MB | libmpv for video and audio without cloud codecs |
| WebRTC | ~43 MB | Peer-to-peer connections without relay servers |
| TensorFlow Lite | ~15 MB | On-device vision and ML models |
| Whisper | ~3 MB | Offline speech recognition, tiny to large-v2 models |
Most apps appear smaller because they download pieces on demand, phone home for features, or simply do not work offline. Geogram includes everything upfront because you might not have internet when you need it. The result is a larger download that works anywhere, requires no accounts, makes no network requests you did not initiate, and cannot be degraded by a company changing their API terms.
Security And Privacy: No Telemetry, No Analytics, No Crash Reporting
The security model is worth being precise about. Geogram has no analytics, no telemetry, no crash reporting services, no update checks to external servers, and no third-party API calls baked into the application. The only outbound connections are to stations you explicitly connect to and optional GitHub API calls for release information on the downloads page of the website.
Identity is NOSTR-based. Every message and every API request is signed by the sender’s keypair. There are no passwords to steal, no session tokens to hijack, no central database of credentials to breach. Verification is cryptographic and local.
A Bluetooth-only mode restricts all connectivity to BLE, completely disabling internet and LAN transports. This is for maximum privacy when you only want to communicate with physically nearby devices. Location granularity is runtime-configurable, with coordinate rounding to prevent precise tracking while maintaining regional relevance.
Builds are verifiable. The Flutter SDK version is pinned, all dependencies are locked, build numbers are deterministic, and every CI pipeline is in the repository. Anyone can clone the source at a release tag, follow the same build steps, and confirm the output matches the published binary.
Platforms
Geogram runs on all major platforms from a single codebase:
| Platform | Status |
|---|---|
| Android | Stable |
| Linux | Stable |
| ESP32 | Stable (C3-mini, S3 ePaper) |
| Windows | Available but untested |
| macOS | Available but untested |
| iOS | Available but untested |
| Web | Available but untested |
The Android, Linux, and ESP32 versions receive the most testing and are recommended for production use. All platforms share the same data formats and can sync with each other through any available transport.
Linux installation is a single command, no root required:
curl -fsSL https://raw.githubusercontent.com/geograms/geogram/main/linux/scripts/get-geogram.sh | bash
This downloads the latest release, installs desktop integration (icons, app menu entry, autostart), and launches Geogram. To uninstall, run ~/.local/share/geogram/uninstall-desktop.sh.
Why Hams And Emcomm Folks Should Care
This is the part that ties Geogram back to the rest of this blog, and it is the part that matters most.
Hams already live in the world of “build a network that does not depend on infrastructure”. Packet radio, APRS, AREDN, Winlink, D-STAR, Yaesu System Fusion, M17, the entire digital voice and data ecosystem, all of it is about moving information without depending on a commercial carrier. Geogram is the same idea applied to the phone, laptop, and ESP32 world, with a software stack that is far more polished than most ham-adjacent projects and a feature set that goes well beyond messaging.
A few things in particular should resonate:
- Callsign-based identity. Geogram uses callsigns as the primary identifier, paired with NOSTR keypairs. This is the ham radio convention, extended with cryptography. If you already have a callsign, you already understand the model. The difference is that Geogram’s callsigns are self-issued and cryptographically verified, not regulated by a licensing authority, which means the system works for non-hams too.
- Store-and-forward. Messages queue locally and deliver when the target comes back into range, even days later. This is packet radio’s core idea, applied to a modern Flutter app with Bluetooth and WiFi transports instead of AX.25 over 2m FM.
- Station as digipeater. A Geogram station on a Raspberry Pi or ESP32 is conceptually a digipeater or an APRS iGate. It relays traffic, bridges transports, and serves a community. The difference is that it carries chat, blogs, maps, files, and alerts, not just position packets.
- ESP32 firmware. If you have built the 9M2PJU fox hunt beacon or the ESP32 DX cluster client, the Geogram ESP32 station is the same kind of project: cheap hardware, open firmware, a web configuration portal, and a real purpose in the field.
- Quansheng UV-K5 integration. The UV-K5 is the hackable handheld that half the ham community already owns. Geogram treats it as a first-class network citizen, not just a flash target.
- Offline maps with community data. APRS maps show stations and objects. Geogram maps show events, places, alerts, and stations, all offline, all community-maintained. It is APRS’s map concept generalised to a full community information layer.
- IRC bridge. There is an IRC bridge that connects standard IRC clients (irssi, WeeChat, HexChat) to Geogram chat rooms. Hams who still live on IRC will feel at home.
A few specific use cases where Geogram fits neatly into ham and emcomm work:
- Served-agency events. A marathon, a parade, a bike race, a county fair. Run a Geogram station on a laptop or Pi at the command post with a cellular uplink, and every operator with a phone has chat, maps, alerts, and file sharing without depending on cellular coverage along the course. No app store account required, no signup, just install the APK and go.
- Search and rescue. A Geogram mesh in the field gives every team member chat, location sharing, alerts, and an offline map of the search area. Phones sync over Bluetooth as teams pass each other. An ESP32 station at base camp bridges the Bluetooth mesh to WiFi and internet. The Places app documents found hazards, the Alerts app tracks open issues, the Inventory app tracks team gear.
- Disaster response. When the cell tower is down and the fibre is cut, a couple of ESP32 stations, a Raspberry Pi running the station software, and a handful of phones with the Geogram APK give an EOC, a shelter, and a field team a shared communications network in an hour. The Blog app becomes a community bulletin board. The Events app coordinates distributions. No cloud, no carrier, no procurement process.
- Off-grid and remote sites. A repeater site, a SOTA activation, a field-day location, a remote shack. A Geogram station bridges chat, files, and map data between the remote site and a base with internet, over WiFi or Bluetooth, without a chain of mesh nodes or a cellular modem at the remote end.
- Community networks. A neighbourhood, a village, a remote community, a boat. A Geogram station on a Pi or ESP32 becomes the local hub. People sync when they come within range. The station serves a blog, a forum, a market, a map, all without anyone paying a hosting bill.
One regulatory caveat worth being clear about: Geogram uses unlicensed ISM spectrum (WiFi and Bluetooth) under Part 15 or the local equivalent, not amateur spectrum. You operate it under those rules, not under your amateur license. That means no amplifiers beyond what the certified radio allows, no modifying the radio to exceed certified power, and no encryption if you were to ever layer it on top of an amateur-band link instead of the ISM WiFi/Bluetooth link. The good news is that on the ISM link, encryption is fine, and NOSTR signatures plus the transport security give you genuinely strong protection.
How Geogram Compares To Other Off-Grid Tools
The off-grid communications space has gotten crowded in the last few years. Here is where Geogram sits.
Versus Meshtastic. Meshtastic is a LoRa mesh text messenger. It is excellent at what it does: long-range, low-bandwidth text over sub-GHz LoRa, with cheap nodes and a polished app. Geogram is a much broader suite, chat plus blogs plus maps plus files plus a dozen other apps, running over WiFi and Bluetooth rather than LoRa. The range is shorter per hop but the bandwidth is vastly higher. The two are complementary: Meshtastic for long-range low-bandwidth text, Geogram for short-range high-bandwidth everything. A Geogram ESP32 station could in principle bridge between the two ecosystems.
Versus AREDN. AREDN is WiFi mesh on amateur bands, 2.4 GHz and 3 GHz, with BATMAN-adv routing and a focus on IP connectivity over kilometres. It is ham-licensed, which means more power and bigger antennas but no encryption. Geogram is unlicensed ISM, which means less range but encryption is fine. AREDN is a network layer; Geogram is a full application suite. Running Geogram over an AREDN mesh would give you the best of both: long-range IP backhaul from AREDN, rich applications and crypto from Geogram.
Versus ATAK. ATAK is a situational-awareness tool used by military, federal, and public safety teams, with a civilian version (CivTAK) available. It is strong on map-based situational awareness and CoT (Cursor on Target) messaging, weaker on general community communications. Geogram has a map with events, places, and alerts, but it is not a CoT tool. The two serve different audiences: ATAK for tactical teams that need a shared operational picture, Geogram for communities that need to talk, publish, and coordinate without infrastructure.
Versus Haven. Haven, covered in a previous article on this blog, is a MANET-style IP mesh radio built on a Raspberry Pi and Wi-Fi HaLow, with BATMAN-adv routing and kilometres of range per hop. It is a network layer, like AREDN but on unlicensed sub-GHz HaLow. Geogram is an application suite that could run on top of a Haven mesh just as easily as it runs on top of a home WiFi router. The two are complementary: Haven for the long-haul IP backbone, Geogram for the apps people actually use on their phones.
Versus Briar. Briar is the closest philosophical cousin. It is an open source peer-to-peer messaging app for Android that uses Tor, WiFi, and Bluetooth, with no servers. Briar is focused on messaging and blogging for activists and journalists in censored environments. Geogram takes the same no-server philosophy and expands it into a full suite of community apps, adds ESP32 and station infrastructure, adds the Quansheng and ESP32 flashing tools, and adds offline maps. If Briar is the secure messaging app for a protest, Geogram is the communications platform for a community.
A Few Practical Notes If You Want To Try It
- Start on Linux or Android. Those are the stable platforms. The Windows, macOS, iOS, and web builds exist but are untested. The Linux one-line installer is the fastest way to kick the tyres.
- Do not be alarmed by the download size. 200 to 400 MB is intentional. Everything is bundled for offline use. If you have a metered connection, download it once over WiFi and carry it.
- Pick a callsign you will keep. Your callsign plus your NOSTR keypair is your identity. There is no password reset. If you lose your keypair, you lose your identity. Back it up.
- Try the ESP32 station if you have a board lying around. An ESP32-C3-mini or a generic ESP32 with an SD card slot is enough to run a station. Flash it from the Android flasher or the web flasher, configure it through the captive portal, and you have a $10 community relay.
- Flash your Quansheng UV-K5 from your phone. If you have a UV-K5 and an Android phone with USB OTG, the Geogram flasher will program it without a computer. This alone is worth installing the app for.
- Download map tiles before you go off-grid. The offline maps are only useful if the tiles are cached. Load the region you need while you still have internet, then the map works in the field.
- Use Bluetooth-only mode for maximum privacy. If you only want to talk to people physically near you and do not want any internet traffic at all, toggle Bluetooth-only mode. It disables LAN and station transports completely.
- Read the technical docs. The docs/technical.md file in the repo is a clear, well-written architecture overview covering the transport priority table, the BLE GATT structure, the EventBus, the Station API, and the data format specifications for every app. It is one of the better open source docs you will read.
Why Geogram Still Matters
There is a quiet revolution happening in off-grid communications. Open source mesh routing has matured. Single-board computers are cheap enough that a $10 ESP32 or a $35 Raspberry Pi can be community infrastructure. Phones are powerful enough to run a full communications suite locally, with on-device AI and offline maps, without phoning home to anyone. What was missing was someone doing the integration work, picking the transports, writing the apps, designing the data formats, and shipping it as a coherent project that anyone can install without an account.
That is what Geogram is. It is not a new protocol, it is not a new radio, it is a thoughtful integration of existing ideas, NOSTR identity, transport-agnostic messaging, store-and-forward sync, station-as-infrastructure, offline-first apps, into a single platform that anyone can run, modify, and deploy. The fact that it is Apache-2.0 licensed, that the builds are verifiable, that the ESP32 firmware is open, and that the Quansheng UV-K5 is treated as a first-class citizen matters. It lowers the floor for who can build a community network from “company with a data centre and a terms-of-service page” to “anyone with a phone and a $10 ESP32”.
For hams, the callsign-based identity, the store-and-forward messaging, the station-as-digipeater model, and the ESP32 firmware should feel like home. For emcomm teams, the offline maps, alerts, inventory, and events apps are exactly the coordination tools you reach for when the cell tower is down. For makers, the ESP32 station and the Quansheng flasher are a weekend project with a real purpose. And for anyone who has ever watched a chat app spin because the network dropped, Geogram is a reminder that communication does not have to depend on a company that might not exist next year.
The source is on GitHub. The project site is geogram.radio. The licence is Apache-2.0. Go build a station.



Post Comment