NTsocial MeshLink Android operation manual

Android · Meshtastic / LoRa

NTsocial MeshLink operation manual

Connect an Android phone to Meshtastic radios, exchange off-grid text, manage as many as four radio endpoints, and optionally let selected NTsocial channels reach LoRa.

Manual revision · 2026-08-29 App · 1.0.7 (code 8) Android · 8.0+ Radio connection · Bluetooth
Fastest safe start: turn on the radio → open Connections → select the radio → wait for synchronization → set the correct LoRa region → open Conversations. A region is a radio-law setting, not a language choice.

Chapter 01

What MeshLink does

MeshLink is an independent Meshtastic controller for Android and an optional local gateway for NTsocial. NTsocial is not required for ordinary Meshtastic use.

Two ways to use it

Standalone Meshtastic app

Connect to a compatible radio, send channel or direct text, inspect nearby nodes, and configure LoRa, channels, security, device settings and supported modules.

NTsocial radio gateway

Keep MeshLink connected to the radio while NTsocial sends explicitly bound text and supported state through MeshLink to a Meshtastic channel.

The five main destinations

  • Conversations: Channel Hub, channel conversations and direct messages, with an all-radio view and per-radio tabs.
  • Nodes: Devices learned from the mesh and their status, position and telemetry when available.
  • MeshCore: A separate feature path. It is not the Meshtastic radio connection used by the NTsocial gateway.
  • Settings: Radio, device, channel, security, modules, backup, maintenance and app preferences.
  • Connections: Scan for Bluetooth radios, connect, and manage the saved radio fleet.

Current Android boundaries

  • The Android connection screen exposes Bluetooth radios. Do not expect a USB or TCP connection button in this release.
  • LoRa is a low-bandwidth text and state path. MeshLink does not send NTsocial images, voice clips, PTT audio or general files over LoRa.
  • Native Meshtastic radio messaging does not need the internet. Internet can still be used by optional features you explicitly configure, such as MQTT or obtaining firmware.
  • Map tiles are not bundled into this cloud-free Android release. Position values and position-related metrics may still be visible.

Chapter 02

Meshtastic essentials

Understanding the two wireless links prevents most setup mistakes: Bluetooth connects the phone to one nearby radio; LoRa connects that radio to other Meshtastic radios.

How one message travels

  1. Android phoneMeshLink creates or displays the text
  2. BluetoothShort-range control link to your radio
  3. Your radioEncodes and transmits a Meshtastic packet
  4. LoRa meshOther nodes receive and may rebroadcast it
Bluetooth range is not LoRa range. Keep the phone close enough to its own radio. The radio—not the phone—provides the long-range LoRa link.

Core terms

Node
One Meshtastic radio. It has a node ID, long and short names, and may report battery, position and telemetry.
Mesh and hop
Nodes can rebroadcast packets. Each relay is a hop. More hops can extend reach but also consume shared airtime.
Region
The legal frequency plan for where the radio is physically used. Set it correctly before transmitting.
Modem preset
A bundle of LoRa speed/range parameters. Radios must use compatible radio settings to hear each other.
Primary / secondary channel
A radio stores channel slots. The primary channel also carries important mesh behavior; secondary channels provide additional conversations.
PSK
The shared channel key. Matching name alone is not enough—peers need compatible radio settings and the same channel key.
Role
Controls node behavior such as ordinary client or routing-focused use. Choose a role for the device's real job.
Airtime
LoRa capacity is limited and shared. Short, infrequent text is healthier for the mesh than rapid or bulky traffic.

What affects range

  • Antenna quality, frequency match, antenna height, terrain, buildings, radio power and modem preset all matter.
  • Line of sight usually matters more than raw transmitter power. Move a node higher and away from metal before chasing aggressive settings.
  • A repeater is not automatically beneficial. Use rebroadcast-oriented roles only when the placement and local airtime plan justify them.
Do not silently set Rebroadcast mode = ALL. It can increase network load and should be a deliberate, team-wide decision.

What delivery indicators mean

Statuses such as queued, sent or acknowledged describe different milestones. A packet admitted to the local database or radio queue is not proof that a remote person read it. In difficult terrain, confirm important messages by a reply or another agreed procedure.

Chapter 03

Install and first launch

MeshLink 1.0.7 supports Android 8.0 or later. A compatible Meshtastic radio should normally run firmware 2.5.14 or later; older firmware can hide features or behave differently.

First-launch flow

  1. Choose English, 繁體中文 or 日本語. You can change the app language later in Settings.
  2. Read the introduction, then grant Nearby devices / Bluetooth so the app can discover and connect to the radio.
  3. Location is optional for phone-location and distance features. MeshLink asks only when that function is used; it does not request background location.
  4. Allow notifications if you want new-message, new-node or low-battery alerts. Critical alerts are optional.

Before the first connection

  • Charge the phone and radio, and attach the correct antenna before transmitting.
  • Enable Bluetooth on the phone and wake the radio.
  • Keep the radio near the phone during pairing and initial synchronization.
  • Stop another controller app from holding the same radio connection.
  • Know the permitted frequency region for your physical location.

Chapter 04

Connect the first radio

Use Connections for discovery and fleet management. Scanning is bounded rather than permanent, which saves power and avoids stale results.

Scan and connect

Bottom navigationConnectionsBluetooth devices
  1. Power on the radio, place it nearby, and open Connections.
  2. Wait for the scan window. If the device does not appear, restart the scan after confirming Bluetooth permission and radio advertising.
  3. Tap the correct device name/address. Complete the Android pairing prompt or radio PIN if one appears.
  4. Wait until the connection state is ready and the app finishes reading radio configuration, node data and channels.

After the first synchronization

Open Settings → LoRa and set the correct region if the app warns that it is unset. Then verify the owner name and radio channel. Some setting changes make the radio reboot and reconnect.

Region is a legal setting. Select the region where the radio is being operated. Do not copy a teammate's region merely because the channel QR came from them.

Disconnect, reconnect and forget

  • Disconnect ends the current Bluetooth session but keeps the saved endpoint and its local history.
  • Connect resumes a saved endpoint. Keep the device awake and in Bluetooth range.
  • Remove forgets a non-primary saved endpoint from the fleet. It is not the same as erasing the physical radio.
  • The compatibility primary endpoint is marked Legacy primary and cannot be removed from the fleet card.

Chapter 05

Use up to four radios

MeshLink can retain a catalog of four distinct Meshtastic Bluetooth endpoints. Each endpoint keeps its own radio data and conversation history while app-wide preferences stay shared.

Register another endpoint

  1. Open Connections and confirm the fleet capacity shown near the radio cards.
  2. Disconnect the current radio if necessary, wake the next radio, then scan and select it.
  3. Let synchronization finish before adding another device. Use the name and address suffix to distinguish similar radios.

Select and inspect a radio

Use the radio card's Select action to make an endpoint current, then connect or disconnect it. Endpoint-aware pages return to their main screen after a radio switch; they do not keep a separate hidden navigation stack for every radio.

In Conversations and endpoint-aware settings, tabs can show the final four address characters. All aggregates conversations from the fleet. A disconnected radio can still show cached information, but that view is read-only until the endpoint is connected.

What is separate and what is shared

Per endpoint

Radio connection, node database, channels, radio configuration, message history and cached Channel Hub state.

App-wide

Language, theme and other application preferences that do not belong to one physical radio.

Gateway eligibility is explicit. Saving a secondary radio does not automatically make every one of its channels available to NTsocial. Bind only endpoints and routes that NTsocial currently lists as ready.

Chapter 06

Conversations and messages

The Channel Hub combines channel and direct conversations. Use the All view for fleet awareness or an endpoint tab to focus on one radio.

Read the Channel Hub

  • Cards can show the endpoint, channel role, lock/security state, latest text, time, unread count and channel appearance.
  • A connected endpoint can open a live conversation. A disconnected endpoint may show cached history as read-only.
  • Channel conversations broadcast to members using the same channel configuration. Direct messages target a node ID.

Send a channel or direct message

  1. Open Conversations and choose the intended endpoint or All.
  2. Open a channel card, or choose a node/contact for a direct conversation.
  3. Enter a short text message and send. Keep LoRa messages concise.
  4. Watch the status indicator, but request a reply for operationally important information.

Message tools

Depending on message state and context, the conversation screen supports search, reply, reactions, copy, local deletion, selection, delivery details, resend and reusable Quick Chat text. Deleting a local record does not recall a packet already transmitted over the mesh.

Text path only. Do not paste huge text blocks or expect images, voice, PTT or files to cross the radio mesh. LoRa airtime is scarce.

Interpreting status

Status familyPractical meaningWhat it does not prove
Queued / pendingThe app or radio path accepted work for later handling.That a LoRa transmission occurred.
Sent / en routeThe packet progressed into the radio network.That the intended person received or read it.
Acknowledged / deliveredA protocol acknowledgement was observed where supported.Human comprehension or action.
FailedThe local path could not complete the send.That no other earlier copy ever left the radio.

Chapter 07

Nodes and radio diagnostics

The Nodes page is the radio's learned mesh directory. Entries age as packets are heard; an old entry is not evidence that a device is online now.

Use the node list

Search and filter the list to find a node, then check its long/short name, ID, last-heard time, hop information and available signal or battery data. Values appear only when the node and firmware report them.

Open node details

Detail pages can contain device information, position, environment, signal, power, air-quality, host, Pax, neighbor and other telemetry. Missing panels usually mean the source node, sensor module or firmware did not provide that data—not that the app failed to draw it.

Traceroute and metrics

Use traceroute sparingly to learn the path when the network supports it. A route can change between packets. RSSI and SNR describe a received radio link, while hop count describes relaying; compare trends instead of treating one sample as a guarantee.

Remote administration

Use remote administration cautiously. It needs a connected radio and appropriate session/security data. Confirm the target node ID before rebooting or changing a remote device, and avoid high-impact changes during an active field operation.

Chapter 08

The MeshCore tab

MeshCore appears as its own top-level destination because it is a separate radio ecosystem and workflow. It should not be confused with the Meshtastic connection managed in Connections.

  • Meshtastic conversations, nodes, channels and the NTsocial gateway use the Meshtastic endpoint path documented in the rest of this guide.
  • Opening or configuring MeshCore does not bind an NTsocial channel to Meshtastic.
  • Do not assume a MeshCore device can carry NTsocial gateway traffic unless the NTsocial gateway screen explicitly lists a compatible, ready route.
Simple rule: for NTsocial + LoRa, prepare the radio in Connections, verify its Meshtastic channel, then bind it from the NTsocial app.

Chapter 09

Channels, QR codes and security

A channel is more than a displayed name. Communication depends on compatible LoRa settings, channel slot and role, and the shared key.

Primary and secondary channels

The primary channel is the radio's main channel slot and participates in mesh behavior. Secondary channels add conversations. Before changing the primary channel on a working fleet, record the existing configuration and coordinate the change with the whole team.

Clear, well-known and private keys

  • Clear / no PSK: channel traffic is not protected by a private shared key.
  • Well-known/default: convenient for public interoperability but not a secret.
  • Custom PSK: only devices with the same key can interpret that channel's protected payload.
A channel PSK is a shared group secret, not verified person-to-person encryption. Anyone who receives the channel QR/key can join that security boundary. Rotate it if exposed.

Share or import a channel set

  1. Open Settings → Channels and choose the channel or sharing action.
  2. Generate a QR only for the intended team. Treat the QR like a password when it contains a private key.
  3. On the receiving phone, scan on device and review whether the action will add channels or replace the current set.
  4. Confirm the region separately. Importing a channel is not permission to use the sender's regional frequency plan.

Apply and verify

Channel and LoRa changes may reboot the radio. The app can show a neutral pending state for roughly 30 seconds while the radio reconnects and configuration is read back. You may leave the page; success is established by verified readback, while an explicit rejection or mismatch is an error.

Built-in NTsocial channel

MeshLink can register its canonical NTsocial Meshtastic channel when an unused slot exists. It does not overwrite an already configured region or modem preset and must fail safely when no channel slot is available. Review the result instead of assuming the radio was reconfigured.

Chapter 10

Radio and app settings

Settings are endpoint-aware. Select the intended radio before changing radio configuration. The app hides options that the hardware, role or firmware does not support.

Radio configuration

  • User: owner long/short name and identity-related radio values.
  • LoRa: region, modem preset, hop and transmit-related options. Change only with a network plan.
  • Channels: primary/secondary channel slots, role and key.
  • Security: device and administration security controls.

Device configuration

Depending on the radio, pages can include Device, Position, Power, Network, Display and Bluetooth. Phone-location sharing is opt-in and needs foreground location conditions. A setting shown for one endpoint might not appear for another model.

Module settings

Supported firmware can expose MQTT, serial, external notification, Store & Forward, range test, telemetry, canned messages, audio, remote hardware, neighbor info, ambient lighting, detection sensor, Paxcounter, status, traffic management and TAK. Enabling a module consumes radio, memory, power or airtime; enable only what the deployment uses.

MQTT changes the network boundary. Native LoRa can be completely offline, but MQTT intentionally uses IP networking and a broker you configure. Review its credentials and privacy implications.

App-local settings

Language, theme, privacy/location choices, notification behavior, filters, device links, cache and CSV export belong to the Android app. They are not broadcast as Meshtastic radio configuration. Wi-Fi provisioning may appear for supported radios even though ordinary Android radio connections remain Bluetooth-first.

Administration

Backup/restore protects configuration before risky changes. Reboot, shutdown, factory reset, node-database reset, clean local database and debug tools have different scopes—read the confirmation carefully. A factory reset of the radio is not the same operation as clearing MeshLink's local cache.

Chapter 11

Use MeshLink with NTsocial

MeshLink owns the Bluetooth radio session. NTsocial talks to MeshLink through a protected local app service and routes only channels you explicitly bind.

Prepare both apps

  • Install current NTsocial and NTsocial MeshLink builds on the same Android phone.
  • Connect MeshLink to the intended radio and let synchronization finish.
  • Set the lawful region and verify the target Meshtastic channel in MeshLink.
  • Keep Bluetooth on and prevent another radio controller from taking the connection.

Choose MeshLink as the provider

NTsocialProfileMeshtastic / LoRa gatewayNTsocial MeshLink

Only one gateway provider is active at a time. Wait until NTsocial reports that MeshLink is ready before binding a channel. Selecting the provider does not send every NTsocial conversation over LoRa.

Bind an NTsocial channel

  1. In NTsocial, open the channel that should use LoRa and its transport/radio binding controls.
  2. Choose only an endpoint and Meshtastic channel currently listed as ready by the gateway.
  3. Save the binding, then return to the channel and send a short, non-sensitive test message.
  4. Verify from another Meshtastic node or by a reply. Do not use the sender's local status as the only proof.

Gateway data and delivery boundaries

  • Supported text and compact state/control data can use the bound LoRa route.
  • Images, audio, PTT bytes and arbitrary files stay on NTsocial's phone transports.
  • “Accepted” can mean stored in local Room data, WorkManager or the radio queue. It never promises RF airtime, remote receipt or a human read.
  • NTsocial owns its canonical conversation history. MeshLink is the radio transport and diagnostic surface.
  • If the radio, endpoint identity, channel key or gateway provider changes, review and revalidate the binding.

A reliable field test

  1. Disconnect mobile data/Wi-Fi if you want to prove the off-grid path, while keeping Bluetooth enabled.
  2. Use two separated Meshtastic nodes with matching region/preset/channel settings.
  3. Send a unique short phrase from the bound NTsocial channel.
  4. Confirm it at the remote side and send a reply in the reverse direction.

Chapter 12

Firmware and maintenance

Firmware controls the radio's capabilities. Update only when the device, connection method and firmware package match.

Update safely

  • Charge the phone and radio, use the correct antenna and keep the devices close.
  • Back up radio configuration and channel information first.
  • Choose the exact hardware model and supported update path shown by the app.
  • Do not close the app, power off the radio or move out of range during an active transfer.
  • Expect the radio to reboot; reconnect and verify region, channels and owner data afterward.

Firmware controls appear only for compatible hardware. The app may offer Bluetooth OTA or Wi-Fi-based provisioning/update paths where supported; their presence does not add a general Wi-Fi radio connection mode to the Connections screen.

Backup, export and clean-up

Use configuration backup before experiments. CSV export is useful for inspection but is not a complete radio restore. Clean local database removes app-side data; node-database reset affects the radio's learned nodes; factory reset is broader. Confirm the scope every time.

After an interrupted change

Keep the radio powered, wait for its normal boot cycle, then reopen Connections and scan. If it advertises, reconnect and read settings before attempting another update. Follow the device maker's recovery procedure when it no longer boots or advertises.

Chapter 13

Troubleshooting

Start at the phone-to-radio Bluetooth link, then the radio configuration, then the over-air mesh. Testing in that order prevents one failure from being mistaken for another.

Radio does not appear or connect

  • Confirm the radio is awake and advertising, Bluetooth is on, and Nearby devices permission is granted.
  • Move close, stop the other controller app, restart the bounded scan, then power-cycle only the radio if needed.
  • If Android pairing is stale, forget the Bluetooth pairing in system settings and pair again.

Connected, but messages do not arrive

  • Compare region, modem preset, channel slot/role and PSK on both radios.
  • Check antenna, frequency compatibility, battery, placement, last-heard time and whether the correct endpoint is selected.
  • Send one short test and wait. Rapid retries consume airtime and can make congestion worse.

Channel change remains pending

Allow the reboot/reconnect window, then revisit the channel and verify readback. If the radio reports a rejection or the values differ, treat the change as failed; do not assume a green local toast overrules the radio's actual configuration.

NTsocial cannot use the route

  • Verify MeshLink is connected and NTsocial selected MeshLink—not another gateway provider.
  • Open NTsocial's radio catalog again and bind only a currently ready entry.
  • Rebind after replacing a radio, resetting channels or changing the channel key.
  • Remember that a saved secondary radio is not automatically gateway-ready.

Battery or background reliability

Bluetooth, frequent position updates, telemetry, screen-on time and chatty modules all use power. Permit the notifications/foreground service the app explains, keep phone and radio charged, and disable modules the deployment does not need.

Last safety check

Do not rely on one off-grid path for life safety. Carry an appropriate emergency communication method, follow local spectrum rules, protect channel keys, and rehearse the exact radio plan before entering the field.