No description
Find a file
torlando-tech 27aee402fd fix: disable Python tracemalloc in release builds
tracemalloc.start(10) was running in release builds due to
ENABLE_MEMORY_PROFILING being true for both build types. This
instruments every Python allocation with 10-frame tracebacks,
progressively starving Reticulum's transport threads via GIL
contention. Reported as "deaf and mute" after ~30 minutes on
a Lenovo Tab M10 Plus (v0.7.4-beta regression vs v0.7.3-beta).

- Set ENABLE_MEMORY_PROFILING=false for release builds
- Split MemoryProfilerManager: lightweight native heap monitoring
  (Sentry breadcrumbs) always runs; Python tracemalloc only in debug

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 16:41:38 -04:00
.claude docs: add Strangler Fig migration skill for reticulum_wrapper.py extraction 2026-02-15 01:49:59 -05:00
.githooks chore: add git pre-push hook for code quality checks 2026-01-27 00:06:40 -05:00
.github ci: bump actions/upload-artifact from 6 to 7 2026-03-02 09:37:14 +00:00
.planning Merge pull request #394 from torlando-tech/refactor/tests 2026-02-01 00:43:25 -05:00
app fix: disable Python tracemalloc in release builds 2026-03-09 16:41:38 -04:00
data Merge pull request #604 from MatthieuTexier/fix/startup-restore-contacts-first 2026-03-08 01:48:20 -05:00
detekt-rules cleanup: fix stale comments/logs from heartbeat interval change 2026-02-20 10:19:18 -05:00
docs refactor: remove dead name-based dedup code after PR #630 2026-03-08 21:13:31 -04:00
domain initial commit 2025-11-30 19:59:14 -05:00
gradle deps(deps): bump the compose group with 2 updates 2026-03-04 09:37:37 -05:00
LXST-kt@b96936f5d9 chore: update LXST-kt submodule to latest main 2026-02-27 20:54:35 -05:00
python fix: address PR #609 code review — volatile fields, dead code, UI dedup, overlap warning 2026-03-06 20:10:26 -05:00
reticulum refactor: remove dead name-based dedup code after PR #630 2026-03-08 21:13:31 -04:00
screenshot-tests fix: update KSP to 2.3.6 and migrate kotlinOptions for Kotlin 2.3.0 compat 2026-03-04 00:48:22 -05:00
scripts fix(ci): add ProGuard consumer rules for LXST-kt Python-callable classes 2026-02-07 17:47:21 -05:00
.claude_settings.json fix: Address QA issues for reaction bubbles 2025-12-24 23:57:46 -05:00
.codecov.yml ci: exclude Compose UI files with @Preview from coverage 2025-12-18 19:30:14 -05:00
.editorconfig style: suppress detekt warnings for complex BLE bridge functions 2026-01-01 20:08:05 -05:00
.envrc.example initial commit 2025-11-30 19:59:14 -05:00
.gitignore docs: add Strangler Fig migration skill for reticulum_wrapper.py extraction 2026-02-15 01:49:59 -05:00
.gitmodules fix(ci): use canonical GitHub URL for LXST-kt submodule 2026-02-07 16:35:42 -05:00
audit-dispatchers-full.sh fix: add THREADING: allowed suppression for Python callback boundary 2025-12-16 18:39:56 -05:00
audit-dispatchers.sh fix: add THREADING: allowed suppression for Python callback boundary 2025-12-16 18:39:56 -05:00
build-and-launch.sh initial commit 2025-11-30 19:59:14 -05:00
build.gradle.kts deps(deps): bump the kotlin group across 1 directory with 4 updates 2026-03-04 00:31:22 -05:00
CLAUDE.md restore columba claude instructions 2026-02-07 16:15:48 -05:00
columba-icon.svg initial commit 2025-11-30 19:59:14 -05:00
deploy.sh feat: add automatic RNode reconnection and interface status UI 2025-12-08 21:58:48 -05:00
detekt-config.yml feat: add StateFlowPollingLoop detekt rule to catch infinite loop patterns 2026-01-31 22:01:27 -05:00
FUNDING.yml initial commit 2025-11-30 19:59:14 -05:00
gradle.properties initial commit 2025-11-30 19:59:14 -05:00
gradlew initial commit 2025-11-30 19:59:14 -05:00
gradlew.bat initial commit 2025-11-30 19:59:14 -05:00
LICENSE initial commit 2025-11-30 19:59:14 -05:00
obtainium.json feat: add Obtainium configuration for easy app updates 2025-12-11 18:03:45 -05:00
README.md Enhance README with voice app details and new features 2026-02-23 22:14:15 -05:00
SECURITY.md Fix formatting in SECURITY.md for clarity 2026-01-03 17:53:26 -05:00
settings.gradle.kts fix: pre-flight call state check and stricter submodule guard 2026-02-07 20:50:09 -05:00

alt text

Columba

Columba is a simple messaging and voice app for the Reticulum network on Android. Send LXMF messages and make LXST voice calls without relying on the internet, cell towers, or any central servers.

Built with a native Android interface and Material Design 3, Columba brings mesh networking to your pocket in a familiar, easy-to-use package.

What You Can Do

  • Message without infrastructure - Send messages even when the internet is down or unavailable
  • Connect multiple ways - Use Bluetooth LE to connect to those around you anywhere, Wifi for those at home, LoRa radio via RNode for those at a distance, or use TCP to connect to any Reticulum server around the world
  • Stay private - End-to-end encryption with no accounts, no tracking, and no central servers
  • Share location - Share your location securely with others, viewable from a dedicated map
  • Download maps for offline use - Download or import map files. Supports vector and raster, in MBTiles format
  • Build your network - Help relay traffic for others and expand the mesh
  • Keep your identity - Generate your messaging identity right on your device
  • Manage multiple identities - Easily swap between multiple identities
  • Export and import identities - Keep an external backup of your keys, or migrate to a new device. Import from other Reticulum clients like Sideband
  • Share your identity via QR Code - Built in QR code scanner and generator for sharing your identity with others
  • Custom Color Themes - Don't like the default colors? Rice to your heart's content!

Getting Started

Download the latest release from Releases and install on your Android device. See SECURITY.md for APK verification instructions.

Get it on Obtainium

Alternatively, you can download the apk via NomadNet at 8d1788fdb4e9f85303cfdf7481e721c7:/page/index.mu

About Reticulum

Reticulum is a networking stack that lets devices communicate directly with each other, forming resilient mesh networks. It is optimized for low bandwidth, high latency connections, and can communicate over nearly any medium. Columba uses LXMF (Lightweight Extensible Message Format) to send messages across the Reticulum network, and uses a native Android implementation of ble-reticulum to enable messaging over BLE with other Android and Linux devices.

Want to learn more? Visit Reticulum's documentation.

Why "Columba"

Columba, latin for "dove," is a constellation in the southern sky depicting a dove. Doves are commonly a symbol of peace and hope, and have been used as messengers throughout history.