All Posts

16 posts -- technical deep-dives, architecture decisions, and development journal entries.

Aether: OpenSky Integration and the Zero-Credit Architecture

How the Aether flight service evolved from burning OpenSky credits per user to a server-side caching architecture that costs nothing per client request.

Aether: Great Circles, Race Conditions, and Flight Detection

The math and logic behind Aether's flight route visualization, conflict detection, self-flight guards, and the formulas that make it all work.

From JSON Blob to SQLite: Fixing Chat Message Persistence

How we migrated Meshtastic chat storage from a 100-message SharedPreferences blob to a proper SQLite database with per-conversation retention.

NodeDex System Architecture

Complete technical deep-dive into NodeDex — procedural identity, field journal system, sigil generation, trait inference, patina scoring, and progressive disclosure.

Firmware Extensions: Binary Encoding Over LoRa Mesh

How Socialmesh extends Meshtastic with custom binary portnums for presence, signals, and identity -- without forking the firmware.

Welcome to the Socialmesh Developer Blog

Introducing the Socialmesh developer blog -- technical deep-dives, architecture decisions, and the development story so far.

Aether: Flight Sharing on the Mesh

Launching the Aether flight sharing service -- ground stations report aircraft reception data to a shared leaderboard via mesh radio.

Sigil: Node Identity Cards

Building the Sigil API -- shareable node identity card snapshots with an Express backend, SQLite storage, and Apple Wallet integration.

Multi-Protocol: Adding MeshCore Support

Making Socialmesh a multi-protocol app -- supporting both Meshtastic and MeshCore devices while keeping protocol logic completely isolated.

Going Open Source

Open-sourcing the Socialmesh mobile client under GPL-3.0 -- what’s included, why GPL, and how contributors can get started.

World Mesh: Watching the Global Network

Building a real-time MQTT consumer that collects Meshtastic node data from the global mesh and serves it as an API.

The Automation Engine

Building a node automation system for mesh radios -- triggers, actions, geofences, and battery hysteresis.

Firebase Without the Dependency

How Socialmesh integrates Firebase for optional cloud features while remaining fully functional offline.

Presence, Timelines, and the Social Layer

Adding the social layer to a mesh radio app -- presence broadcasts, signal timelines, and the beginning of what makes Socialmesh different.

BLE Transport: The Realities of Bluetooth on Mobile

Lessons learned building a reliable BLE transport layer for Meshtastic on iOS and Android. Adapter states, scan retries, and connection sequencing.

Day One: Building a Mesh Radio Companion

First commit. A Flutter app that talks to Meshtastic radios over Bluetooth Low Energy. Starting from zero.