Socialmesh
Off-Grid Mesh Messenger
Only for iPhone
Free · In‑App Purchases · Designed for iPhone. Not verified for macOS.
Socialmesh is an offline-first companion for Meshtastic and LoRa mesh networks, built to observe, manage, and operate real mesh systems in the field.
Socialmesh is an offline-first companion for Meshtastic and LoRa mesh networks, built to observe, manage, and operate real mesh systems in the field.
Requires a Meshtastic device - Socialmesh connects directly to Meshtastic radios over Bluetooth or USB and reflects what the mesh is actually doing: packets, hops, airtime, and decay.
Core capabilities
Mesh connectivity
- Bluetooth and USB device support
- Pairing, discovery, reconnect, and recovery flows
- Multi-device environments supported
Messaging
- Direct messages and channel chat
- Canned replies and quick message sheet
- Traceroute and position requests
Signals & presence
- Short-lived broadcasts with TTL
- Time-decayed presence feed
- Map, grid, and gallery views
- Sorting and filtering by proximity, activity, and expiry
NodeDex - Collector Album
- Every node you encounter becomes a collectible card with a unique sigil
- Rarity tiers and patina that deepens with each encounter
- Track co-sightings and build your mesh story
Maps & Visualization
- Local mesh map and global mesh map
- 3D Globe — interactive world view of mesh activity
- Proximity sorting and location links
Aether - High-Altitude Tracking
- Track Meshtastic nodes at 35,000 ft
- LoRa signals can reach 400+ km at altitude
- Schedule flights, report receptions, global leaderboard
Device management
- Region setup and onboarding
- Radio, channel, and security configuration
- Power, Bluetooth, and network controls
Telemetry & diagnostics
- Node health and metrics
- Environmental sensors
- Logs and exports
Automation
- Triggers, conditions, and rules
- Alerts and integrations (including IFTTT)
- Scheduled messages and location-based actions
Dashboards & widgets
- Customizable in-app widgets with live data bindings
- Home screen widgets
- Charts, gauges, and graphs for battery, telemetry, environment sensors
Notifications
- Granular, per-event notification controls
Additional tools
- Range testing
- Geofence picker
Cloud Sync (Optional Subscription)
Socialmesh works fully offline. Cloud Sync is an optional monthly or yearly subscription that backs up your NodeDex, automations, custom widgets, and profile across all your devices. Without it, data stays on-device only.
Premium Features (Optional)
- Theme Pack: 12 accent colors
- Ringtone Pack: searchable library of thousands of RTTTL ringtones
- Automations: advanced rules and scheduled broadcasts
- IFTTT Integration: connect to 700+ apps and services
The app is device-centric and mesh-true: the UI mirrors real radio behavior rather than forcing binary "online/offline" states. Track node presence as confidence that naturally fades when packets stop arriving. Explore local and global mesh activity on live maps. Diagnose radios, manage channels, and automate responses - even when completely offline.
Terms of Use: https://socialmesh.app/terms
Privacy Policy: https://socialmesh.app/privacy
more Really digging this app! It’s VERY well-functioning. Glad to see some alternatives to the official app. I also REALLY respect you for not collecting any user data. I value my privacy very much so reading through your privacy policy was very refreshing. Keep up the great work, looking forward to future updates!
Developer Response Thanks for the kind words, really appreciate you taking the time to write this.Privacy is a core principle of Socialmesh, so it’s great to hear that resonated with you. There’s a lot more coming in upcoming releases, especially around performance and new features.
Really digging this app! It’s VERY well-functioning. Glad to see some alternatives to the official app. I also REALLY respect you for not collecting any user data. I value my privacy very much so reading through your privacy policy was very refreshing. Keep up the great work, looking forward to future updates!
Thanks for the kind words, really appreciate you taking the time to write this.Privacy is a core principle of Socialmesh, so it’s great to hear that resonated with you. There’s a lot more coming in upcoming releases, especially around performance and new features.
A terrific alternative to the standard Meshtastic app, with a well designed interface and a creative touch to the user experience. Well done!
A terrific alternative to the standard Meshtastic app, with a well designed interface and a creative touch to the user experience. Well done!
I wrote a pretty favorable review for this app and got censored by Apple. No idea why. This app will add to understanding of your local Meshtastic network. There are a lot of tools and views. It takes some pressing around to discover them all. 3d maps could use a North pip to orient. Team map integration would be awesome. Really good overall.
Developer Response Thanks for updating your review.We don’t moderate or remove App Store reviews ourselves, as that’s handled entirely by Apple. If something didn’t appear, it would have been filtered or delayed on their side.Appreciate you taking the time to leave feedback again.
I wrote a pretty favorable review for this app and got censored by Apple. No idea why. This app will add to understanding of your local Meshtastic network. There are a lot of tools and views. It takes some pressing around to discover them all. 3d maps could use a North pip to orient. Team map integration would be awesome. Really good overall.
Thanks for updating your review.We don’t moderate or remove App Store reviews ourselves, as that’s handled entirely by Apple. If something didn’t appear, it would have been filtered or delayed on their side.Appreciate you taking the time to leave feedback again.
Seems very nice and powerfull modern gui but for some reason packets sent from this device are not seen in the meshtastic app. Otherwise it is pretty cool.
Developer Response Thanks for the detailed feedback.Packet visibility between different apps can depend on firmware versions, channel configs, and routing behaviour. We’re actively improving interoperability and diagnostics so this becomes clearer and more reliable.
Seems very nice and powerfull modern gui but for some reason packets sent from this device are not seen in the meshtastic app. Otherwise it is pretty cool.
Thanks for the detailed feedback.Packet visibility between different apps can depend on firmware versions, channel configs, and routing behaviour. We’re actively improving interoperability and diagnostics so this becomes clearer and more reliable.
- Performance improvements across the app for a faster, smoother experience.
- Reduced UI lag, improved responsiveness, and better stability during everyday use.
1.31.0 2h ago
Automations
Automations now support structured condition trees with IF / THEN / ELSE logic. Build complex rules that branch based on multiple conditions - battery level, node status, time of day, and more.
Each run shows exactly which branch was taken and why, with a detailed execution history you can inspect anytime.
Grouped Reactions
Message reactions are now grouped by emoji - if five people send a thumbs-up, you see one compact chip instead of five. Long-press any reaction to see every sender.
Reactions also wrap to the next line instead of overflowing off-screen, keeping the conversation tidy.
1.30.0 1d ago
NodeDex: Node encounter records now capture and display radio frequency offset (Hz), providing visibility into crystal oscillator drift
Widgets: Improvements and fixes to Distribution Widget creation
Includes additional bug fixes and performance enhancements
1.29.0 2d ago
This release focuses on polish, accuracy, and everyday reliability across the parts of Socialmesh that are live today.
- Messaging is smoother, with conversation search, better scroll restoration when returning to chats, improved position retention after sending while reading older messages, and stronger message validation before send.
- Remote device administration is more accurate. When configuring another node, Device Config now shows that remote node’s details instead of the locally connected radio’s identity.
- Reactions and chat behavior were cleaned up to reduce edge-case inconsistencies and make long conversations feel more stable.
- Bug reporting is faster and easier to follow, with more efficient loading for report responses and related screens.
- Profile editing is more reliable, including safer profile image resizing and stronger display name validation.
- UI polish improved across the app: action buttons wrap more cleanly on smaller screens, large accessibility text is handled better, and several layouts are less prone to clipping or overflow.
- Node and presence data are more trustworthy thanks to improved timestamp validation and refinements to how node relationships are tracked and displayed.
Under the hood, this update also includes a broad round of stability work, safer error handling, and expanded regression coverage for messaging, device settings, notifications, and validation.
1.28.0 3d ago
Messaging reliability improvements
- Fixed an issue where messages could be delivered via the internet (MQTT) instead of radio, causing incorrect hop counts and inconsistent behaviour
- Restored proper radio (LoRa) delivery so messages now follow the mesh as expected
- Improved reliability when MQTT is disabled
- General improvements to message delivery consistency and acknowledgements
Time Format Setting
Choose how times are displayed throughout the app. Head to Settings → Appearance & Accessibility and pick System Default, 12-hour (AM/PM), or 24-hour - your choice applies everywhere: messages, nodes, telemetry, traceroutes, NodeDex, and more.
Traceroute Map Accuracy
When viewing a traceroute on the map, the path now shows where nodes actually were at the time of the traceroute - not their current positions. If nodes have moved since, the map still reflects the real route that was traced. Origin, destination, and all intermediate hops are snapshotted the moment the traceroute completes.
Notifications
- Notification settings unified into a single location (Settings → Notifications) — the three background-specific notification toggles (DMs, channels, node discovery) that previously lived on the Background Connection screen have been consolidated into the existing global toggles
- Background Connection screen now focuses solely on BLE connection, Live Activity, notification style, and battery settings
- Background message processor uses the same notification preferences as the foreground path — no separate background-only gates
1.27.0 6d ago
Wi-Fi Radio Discovery
Socialmesh now automatically discovers Meshtastic devices on your local Wi-Fi network. If your radio has WiFi enabled, it appears instantly in the Connect screen - no manual IP entry required.
• Auto-discovery via mDNS/Bonjour finds Meshtastic radios on your LAN
• Discovered devices show their name with a TCP badge
• Tap to connect - same seamless flow as Bluetooth
• Saved Endpoints let you store host:port entries for remote access (e.g. dynamic DNS to a home gateway)
• Manage saved endpoints from Settings > Connection > Network Endpoints
1.26.0 Apr 3
MQTT Client Proxy - Connect to Any MQTT Broker via Your Phone
Your Meshtastic device no longer needs WiFi to reach an MQTT broker. Socialmesh now acts as a full MQTT client proxy - your device talks to the app over BLE, and the app connects to the broker over your phone's internet connection. This is the same proxy mechanism supported by the official Meshtastic apps, now fully implemented in Socialmesh.
• Connects to any MQTT broker (mqtt.meshtastic.org, private servers, self-hosted)
• Full TLS encryption and username/password authentication
• Bidirectional message relay: device → broker and broker → device
• Auto-reconnect with configurable keep-alive
• Works with all your channels - uplink and downlink enabled channels relay through the proxy
To set up: Device Settings → MQTT → enable "Proxy to Client", configure your broker, and save. The app handles the rest automatically.
In-App MQTT & Diagnostic Logging
All MQTT proxy events now appear in the in-app log viewer (Settings → Tools → App Log). Filter by "mqtt_proxy" to see connection lifecycle, message relay, errors, and warnings - all with timestamps and severity levels. No passwords or credentials are ever logged.
This makes troubleshooting MQTT issues straightforward: just share a screenshot of the log and we can pinpoint the problem.
RF vs MQTT Transport Indicators
Messages now show how they arrived - via radio (RF) or via MQTT. Look for the cloud icon (MQTT) or cell tower icon (RF) on message context menus, and the transport chip on node info cards with hop count display.
Node-to-Node Measurement Mode
Tap two node markers on the map to measure between them. The measurement card shows distance, bearing (degrees + cardinal direction), altitude per endpoint, elevation delta with trend icon, and line-of-sight analysis using earth curvature modeling with Fresnel zone clearance at 906 MHz. Long-press the card for additional actions: LOS analysis, RF link budget (FSPL), share, copy coordinates, open midpoint in Maps, or swap endpoints.
Appearance & Accessibility
New settings screen with live preview:
• Font modes: Branded (JetBrains Mono), System, or Accessibility (Inter)
• Text size presets: System Default, Default, Large (+15%), Extra Large (+30%)
• Display density: Compact, Comfortable, Large Touch
• High contrast mode and reduce motion option
• Safe text scaling with layout-aware caps
Message Persistence Overhaul
Chat messages are now stored in SQLite instead of SharedPreferences. Messages survive app restarts reliably, with 500 messages retained per conversation (up from 100 globally). Full field serialization including status, packet ID, routing errors, and error messages.
Traceroute Help
New guided tour (8 steps) covering how to send traceroutes, understand cooldowns, read results, browse history, and export data. Access from the help menu on the Traceroute History screen.
Bug Fixes
• Chat messages no longer disappear across app restarts
• Channel message deduplication fixed for push notification edge cases
• Compass widget now updates smoothly during tap-to-north animation
• Measurement mode text no longer clips on smaller screens
1.25.0 Apr 2
Automations
- Interval-based automation schedules now anchor to the configured hour/minute, preventing gradual time drift over repeated executions
- Added ability to clear the automation execution log, with empty-state UI when no entries exist
Notifications
- Muted channel preferences are now respected in both background and push notification paths
- Notification toggle preference keys centralised into shared constants - eliminates risk of typos between foreground and background processors
1.24.0 Apr 1
Map & Traceroute
- Traceroute visualization directly on the map — see your packet's path across the mesh
- Map layer settings now persist between sessions
- Traceroute notification deduplication refined to reduce duplicate alerts
Device & Admin
- SCD30 CO₂/humidity/temperature sensor configuration support in Admin settings
- Telemetry request button removed from UI (was unreliable)
Messaging & Storage
- Stale "retrying" messages are now automatically reset on app restart
- App icon badge clears when returning to the foreground
- Database migration safety improvements for v5 schema columns (idempotent migrations)
- File transfer outbound bytes now eagerly persisted before transfer starts
Nodes & UI
- New node list legend sheet accessible from the overflow menu
- Improved compact node tile layout
- Hop count made nullable in Mesh Explorer for accuracy
- Service presentation strings fully localized
- Nested scroll physics fix prevents janky scrolling
- Locale resolution callback added to prevent crashes with unsupported locales
Mesh Privacy Controls
- New privacy settings: control discoverability, profile sharing, and who can DM you
- Deterministic mesh service engine registration with immediate advert broadcast
Under the Hood
- Profile cache busting replaces manual provider invalidation
- Navigator context extraction refactored for safer snackbar actions
1.23.0 Mar 25
Map & Measurement
- Terrain-aware LOS analysis with Fresnel zone support and elevation visualization on measurement lines
- Terrain LOS result storage and propagation to measurement cards
- Map layer settings now persist across sessions
Notifications
- Master toggle for all notifications
- Per-type notification preferences (e.g., mute individual channels)
- Channel mute/unmute option in the channel sheet
- Traceroute notification deduplication logic refined
Messaging
- DM confirmation timeout with auto-retry -- unconfirmed mesh DMs are automatically retried
- Stale retry reset deferred to microtask to avoid circular provider reads
- Chat composer send button UX improvements
Channels
- QR code sharing for offline channel invites
Automations
- Trigger details storage and display refactored
- Webhook handling improvements, expanded Android cleartext support
NodeDex
- Stats card layout and visual design improvements
- Activity timeline help text enhanced
iOS
- New App Intents for node management and diagnostics (Shortcuts / Siri)
Settings & Admin
- RTTTL ringtone length limit updated to match firmware buffer size
1.21.0 Mar 16
Multi-Language Support
- Internationalization support (translations welcome)
- Italian, Portuguese available, with more to come in the near future
- Change your device language and the app follows automatically
Stability & Polish
- Fixed scroll crashes on Android
- Stabilized node card layouts with fixed-width columns
- Improved Firestore cache repair for corrupted local databases
- World Map rotation with compass reset
- Settings deep linking with search query support
- Position broadcast intervals aligned with the official iOS app
- Added missing haptic feedback across interactive elements
1.18.0 Mar 11
Map & Measurement
Node-to-node measurement tool - Long-press any node on the map to start measuring distance, bearing, and elevation between two points. Available on the main map, World Mesh map.
Line-of-sight analysis - Check RF line-of-sight between nodes with earth curvature and Fresnel zone calculations. Includes free-space path loss estimation.
RF vs MQTT indicator - See at a glance whether a message traveled over RF or MQTT, shown on the message context menu and node info card.
Compass fix - The compass now updates smoothly during tap-to-north animation instead of freezing.
Device & Connection
Reboot countdown - Visual countdown after changing local device configuration.
Smarter reconnection - Improved auto-reconnect with firmware readiness probes and better timeout handling.
Auto-enable MQTT proxy - MQTT client proxy is now automatically enabled for non-WiFi devices.
Background battery savings - Background polling pauses when appropriate to conserve battery.
Live Activity throttling - Node updates to the iOS Live Activity are debounced to reduce overhead.
Messaging
Reply support - Reply to messages directly in the chat screen.
Message metadata - Hop count, SNR, and RSSI are now visible in the message context menu.
SQLite message storage - Messages are now stored in SQLite with per-conversation retention of 500 messages (up from 100 globally).
UI & Accessibility
Appearance & Accessibility settings - Choose between Branded, System, or Accessibility fonts. Adjust text size, display density, contrast, and motion preferences.
Refreshed node cards - New layered visual design with radial gradient effects.
Favorites section - Favorite nodes now appear in a dedicated section at the top of the node list.
Position log - Map/list toggle moved to the app bar for quicker access.
Help center - New searchable help center with progress tracking, plus new articles for position history and traceroute.
1.17.0 Mar 2
Reliable Chat History - Messages are now stored locally in a proper database so they never disappear between sessions
Presence Search & Filters - Quickly find active nodes with search and filter chips on the presence screen
Timeline Search & Filters - Find specific events in your timeline with text search and category filters
Secure Channel Sharing - Share channels via invite links with per-member encryption
Unread Indicators - See which channels have new messages at a glance
Node Remote Configuration - Configure connected nodes directly from the app
Accessibility Options - Choose your font, text size, display density, high contrast mode, and reduced motion
Connection Reliability - Smoother reconnections, better error handling, and fewer dropped connections during setup
Bug Reporting - Report issues directly from the app and get replies from the team
Local Nicknames - Give any node a custom name that sticks across sessions and syncs to the cloud
Trust Signals - See at a glance how reliable a node is based on how often you've encountered it, how long it's been around, and how recently it was active
Activity Timeline - Browse a node's full encounter history with details on when and how you crossed paths
Bug Fixes:
- Fixed messages sent via Shortcuts getting stuck as "sending" forever
- Fixed the same stuck-sending bug in Quick Message sheet, SOS emergency broadcast, automation channel sends, and tapbacks on broadcast messages
- Added provider invalidation after file deletion to prevent I/O errors on stale database handles
- Added automatic BLE rescan with timer on the scanner screen
- Handled signed-out state gracefully on the subscriptions screen
- Improved navigation robustness and logging
1.16.0 Feb 25
Thank you to everyone who submitted bug reports - your feedback directly shapes every release. With this update, you can now report bugs and track their progress right from within the app.
Traceroute
- Discover the actual route packets take to reach any node across your mesh
- Hop-by-hop path visualization with per-hop SNR for both forward and return paths
- Send traceroutes from a node's detail sheet or Dashboard Quick Actions
- 30-second airtime-fair cooldown with visible countdown
- Traceroute history with filtering, search, and CSV export
- In-app help guide with 8-step guided tour
Presence
- Search bar for finding nodes by name, ID, or role
- Filter chips showing live counts for Active, Seen recently, Inactive, Unknown, and Familiar nodes
- Summary cards and activity chart hide when filtering or searching for a cleaner focused view
Messaging
- Unread message badges on individual channel tiles
- Separate unread counts for DMs and channels in tab badges
Signals
- Improved image loading reliability when scrolling through image-heavy feeds
- Better loading spinners and error states for signal images
Timeline
- Search and filter timeline events
- Smoother list animations in long lists
Bug Reporting
- New in-app bug reporting - submit issues directly from Settings
- Attach screenshots with tap-to-preview gallery
- Threaded replies with real-time updates
- Device info automatically included for faster diagnosis
- Filter reports by status and search across all submissions
Settings
- Appearance and Accessibility: Branded, System, or Accessibility fonts
- Text size presets: System Default, Default, Large, Extra Large
- Display density: Compact, Comfortable, Large Touch
- High contrast mode and reduce motion option
- Quick Responses management for canned messages
- Export Messages (PDF/CSV)
- Feature history, data management, and remote administration options
Improvements
- Smoother image gallery transitions
- Countdown banners for position requests and broadcasts
- Stability and layout fixes
1.14.1 Feb 17
NodeDex - Your Mesh Field Journal
Every node you discover on the mesh is now automatically recorded in the NodeDex, a living field journal of the radio world around you.
Each node receives a unique procedural Sigil - a geometric glyph generated from its identity, so no two nodes ever look alike. Nodes also earn a personality Trait derived from real behavior: Wanderers roam, Sentinels hold position, Beacons never sleep, Ghosts appear and vanish, and Relays keep the mesh alive.
Explore the Constellation view to see your mesh as a living star map - nodes as points of light, connections as arcs between them. Tap any node to open its full profile with signal history, discovery timeline, and social tags.
Find NodeDex in the drawer menu under Social.
1.14.0 Feb 8
- User reported bug fix with Auto-reconnect
- Improved widget and automation sharing - shared widgets/automations via QR codes now load reliably when opened from shared links
- Enhanced offline-first experience with non-blocking Firebase initialization
- Performance and stability improvements
- Various bug fixes
1.13.0 Feb 6
- Improved Signals and presence logic with more accurate time-decay and confidence
- Faster node discovery and more reliable device reconnects (BLE and USB)
- New and expanded automations for alerts, geofence, and node events
- Widget and dashboard improvements with better real-time telemetry
- Better identity handling for node names across sessions
- Performance and battery optimizations during live mesh use
- Stability fixes and protocol-level improvements
1.12.0 Feb 4
- Improved Signals reliability
- Faster refresh and smoother performance
- Bug fixes and stability improvements
1.11.2 Feb 1
- Performance improvements across the app for a faster, smoother experience.
- Reduced UI lag, improved responsiveness, and better stability during everyday use.
more Version 1.31.0 2h ago
Data Not Collected The developer does not collect any data from this app.