NTsocial Application User Guide
Modules: profile settings, the Public feed, the People page, channel operations, offline maps, ATaK coordination, and updated Meshtastic / LoRa workflows covering LoRa Sync, channel-share QR codes, and long-range tactical routing.
2. Profile Settings
2.1 Getting to know your Profile page
Your Profile page is a one-stop hub with three types of settings: your public identity info that others can see, local preferences that only affect your phone, and wireless options for BLE and LoRa.
- After editing fields like
Tagline,Bio,Location,Website,Email, or social links, pressPublishto make the new version the official profile state others can sync. - Changing your
Nicknameoften updates your own UI and future outgoing messages first, but that still doesn't mean the full profile has been formally republished. Change Avatarfollows its own flow. Once you pick an image, NTsocial usually processes and sends it directly, so avatar-only changes typically don't need another tap onPublish.Language,Long Range Mode, andMeshtastic (LoRa)are local settings, not public profile fields.Long Range Mode (LE Coded PHY S=8)is BLE long range, not LoRa.Meshtastic (LoRa)only opens the bridge to the official Meshtastic app. It doesn't make every chat use LoRa and it doesn't auto-bind channels for you.
2.2 Page layout & access
Open the app and tap Profile on the bottom navigation bar. You'll usually see the following blocks from top to bottom:
- The title and avatar area.
Node Contribution.MESH Pet.Nickname.Basic Info.Social Links.Language.Publish.Long Range Mode (LE Coded PHY S=8).Meshtastic (LoRa).
2.3 Identity, avatar, and visibility
At the top of the page you'll usually see two different identity visuals side by side.
- Identity image: a stable image generated from your fingerprint or key material — handy for recognizing someone even if they change their nickname.
- Custom avatar: the picture you want others to associate with you.
Change Avatar: opens the system image picker, processes the selected image, and normally sends the avatar change directly.- Transport limit: text-based profile data usually syncs more easily than the avatar image itself. A far-away node might learn that your profile text changed before it receives the new avatar file.
2.4 Editing your public profile text
The fields under Nickname, Basic Info, and Social Links are the main public text parts of your profile.
2.4.1 Nickname
- Each edit is saved locally right away.
- New outgoing messages may start showing the new nickname before the rest of the profile is formally republished.
- If you want member cards, author cards, and profile sync to all converge on the same newest version, go ahead and press
Publishafter you finish editing.
2.4.2 Basic info
The Basic Info block usually contains Tagline, Bio, and Location.
- Tagline: a short one-line summary.
- Bio: a fuller self-introduction.
- Location: manually entered text like a city or region — it's not live GPS.
- Privacy rule: leave anything blank if you don't want to reveal it.
2.4.3 Social links
The Social Links area usually contains Website, Email, GitHub, Twitter / X, and Instagram.
- These are raw user-entered identifiers or URLs.
- Displaying a website, email, or social handle here doesn't mean NTsocial has verified it.
- Only enter the links or IDs you actually want others to see.
2.5 Local-only controls
These controls affect only your own phone and are not public profile fields.
2.5.1 Language selector
The language block switches only the UI on your own phone.
English繁體中文日本語- Changing language doesn’t require
Publish. - Changing your UI language doesn’t change anyone else’s app language.
2.5.2 Node contribution
- This value reflects how much your node has helped relay or backfill text for others.
- It's closer to a relay contribution score than a social reputation level.
- Text synchronization is what mainly counts here, not image delivery.
2.5.3 MESH Pet
MESH Petis a fun optional visual that responds to your node contribution state.- You can collapse it, and it doesn't affect ordinary communications. It's not part of your public profile.
2.6 Wireless settings
The bottom of the page has the two wireless settings that people most often mix up.
2.6.1 Long Range Mode (LE Coded PHY S=8)
- This is BLE long range — it's not LoRa.
- For this to help in real peer-to-peer use, both devices need hardware support and both need it enabled.
- If a device doesn't support it, NTsocial will show an unsupported message and keep the switch disabled.
- Think of it as “stretch BLE farther,” not “turn the phone into a LoRa radio.”
2.6.2 Meshtastic (LoRa)
- This switch lets NTsocial connect to the official Meshtastic app and reuse the LoRa node managed there.
- It enables NTsocial to read Meshtastic node and channel state, and later bind a specific NTsocial channel to a Meshtastic channel index.
- It doesn't make every NTsocial conversation use LoRa, doesn't replace the official Meshtastic app, and doesn't auto-bind a channel for you.
2.6.3 Device selection and status
- Typical actions include
Install Meshtastic,Open Meshtastic,Select Bluetooth Device, orChange Bluetooth Device (optional). - Typical status ideas include waiting for Meshtastic service, service connected, connecting, connected, or disconnected.
- If NTsocial says it's already reusing the node currently connected in the official Meshtastic app, that's usually the cleanest state.
- If the picker says Bluetooth is off or permission is missing, fix that at the system level before continuing.
2.7 Publish, sync, and common situations
2.7.1 What Publish changes
Publishpackages the current profile text as the newest official version and pushes that state outward.- It matters most for
Tagline,Bio,Location,Website,Email, and social links. - Nickname may already look updated locally before you publish, but publishing is still the cleanest way to keep everyone on the same newest profile state.
- Avatar-only changes, language changes, Long Range changes, and Meshtastic toggles don't require
Publishto take effect locally. - Published text can later travel over any usable sync path, including LoRa-backed background sync. Avatar image files still depend much more on BLE behavior.
2.7.2 Where others see your profile
- The
Peoplepage and its detail view. - Author cards shown from posts or replies.
- Other lists or info cards that display your nickname, tagline, or short profile summary.
2.7.3 Recommended workflows
- Update your self-introduction: edit the text fields, then press
Publish. - Change only the avatar: press
Change Avatarand wait for it to process. If you also changed text fields, pressPublishafterward for those text changes. - Test BLE long range: confirm both devices support
LE Coded PHY S=8and enable it on both ends. - Use LoRa with NTsocial: connect the node in the official Meshtastic app first, enable
Meshtastic (LoRa)fromProfile, then bind the real NTsocial channel from theChannelspage.
2.7.4 Misunderstandings and quick fixes
- The screen changed, so everyone already received the new profile: not necessarily. Press
Publishafter editing text fields. - Changing nickname means the full profile is already synced: not necessarily. The nickname can appear locally and in new messages first.
- Long Range Mode is LoRa: it isn't — it's BLE long range.
- Turning on Meshtastic makes the whole app use LoRa: it doesn't. You still have to bind the actual NTsocial channel later.
- Changing the avatar always requires Publish: usually it doesn't, unless you also changed text fields and want those text changes published too.
- Others still see your old bio or tagline: confirm that you really pressed
Publishand that a real BLE or LoRa sync path exists between the devices. - The Long Range toggle is greyed out: the device usually doesn't support
LE Coded PHY S=8. Meshtastic (LoRa)keeps waiting or disconnected: recheck the official Meshtastic app, the node connection, Bluetooth, permissions, and device selection.
3. Public Feed
3.1 What is Public?
Public is NTsocial's fully public, unencrypted message wall. Anyone nearby who uses NTsocial may eventually receive what you post there, including people you don't know.
It's open to everyone nearby — not limited to friends, not private, and not encrypted. Think of it as a way for public information to flow naturally between NTsocial devices.
3.2 Why Public matters
If private messages are one-to-one and channels are for groups, Public is NTsocial's way of letting strangers exchange information openly — no infrastructure needed.
- You don't need to add a friend, know who the other person is, or join a group first.
- You don't need a cell tower, Wi-Fi, SIM card, or cloud server.
- As long as nearby people are using NTsocial, public posts can keep moving between devices.
3.3 How Public works and the privacy rule
The core idea behind Public isn't to imitate a normal social-media feed. The point is to let public messages travel through real people carrying NTsocial devices.
- Because the content is public and unencrypted, NTsocial can synchronize, backfill, deduplicate, and relay it more efficiently.
- As you walk, ride, wait, or move through crowds, your phone can gradually collect public posts already carried by nearby users.
- Your own public posts can also keep spreading as other people carry them onward.
Privacy rule: if you wouldn't want a stranger reading it, don't post it in Public. That includes addresses, phone numbers, personal schedules, financial data, work secrets, or anything else meant for a limited audience.
3.4 Opening Public and reading the layout
Open the app and switch to Public. The page has three simple layers:
- The title and notification bell at the top.
- The list of public top-level posts in the middle.
- The composer at the bottom for writing and sending a new post.
3.5 Reading the post list
The main list shows top-level public posts. Replies stay attached to their own thread rather than cluttering the main wall.
- The main wall is meant to stay easy to scan.
- If a post has replies, you open that thread from the reply control or reply count.
- This is useful when you want to quickly observe what nearby users have recently made public.
3.6 Create text and image posts
The Public page mainly supports plain text posts, image posts, and public replies.
- Type your message in the composer.
- If needed, choose one image.
- Check again that you are not revealing private information.
- Press
Send.
- A text-only post is fine.
- A text-plus-image post is also fine.
- The image is public too, so faces, documents, or location clues in the image count as public disclosure.
3.7 Replies and author cards
When you reply to a public post, your reply is public too — it isn't a private message or an encrypted response.
- Use the reply control under a post to open the thread view.
- The thread view usually shows the original post, all visible replies, and your own input box.
- You can also open the author's info card to understand who posted the message.
- Opening an author card isn't the same as opening a private message.
3.8 Notifications and sync on the move
The notification bell controls whether new public posts actively notify you. The feed can keep changing as you move because NTsocial exchanges public content whenever new peer links appear.
- If you're already reading
Public, extra notifications matter less. - If you're elsewhere in the app or it's in the background, new public posts may trigger a notification.
- You don't need to refresh manually — public posts arrive as devices meet, synchronize, and backfill nearby content.
- This isn't cloud fetching from the internet. It depends on real NTsocial users and real device encounters nearby.
3.9 Public vs private messages vs channels
Public: fully public, unencrypted, open to nearby strangers, best for public observations and broad local sharing.PRIVATE MESSAGE: one-to-one communication meant for a specific person.Channel: a bounded shared space for a topic, team, or workflow, often with more deliberate membership and optional encryption.
3.10 Best uses, misunderstandings, and quick fixes
A. Good use cases
- Nearby observations, activity updates, line or crowd information, street conditions, event notes, and other things you want any nearby NTsocial user to be able to read.
- Short field reports with one image.
- Open discussion with people you don't already know.
B. Common misunderstandings
- Public works like a normal cloud social feed: not really. Its key property is human-carried, device-to-device spread.
- Only friends can see Public: false. Nearby strangers may receive it.
- If the list keeps growing, the app must be pulling from the internet: not necessarily. It's likely just meeting new NTsocial devices and backfilling public content.
- Public is fine for private matters: nope. It's specifically the wrong place for secrets.
C. Quick checks
- You posted something and not everyone saw it immediately: Public spreads through real device encounters, not instant cloud broadcast.
- The Public list isn't growing: check whether there are actually other NTsocial users nearby, whether the app is running normally, and whether you're in an environment where real encounters can happen.
4. People Page
4.1 Your People page
The People page isn't just a contact list. It combines the people you can interact with in NTsocial and the wireless-state information from Meshtastic into one screen.
- The upper half is the NTsocial interaction area for finding people, checking who is online, entering private messages, and managing favorites and blocks.
- The lower half is the Meshtastic diagnostic area for watching node and gateway health.
- Tapping an identified person row in the upper half normally opens
PRIVATE MESSAGEdirectly. - This is a global people page, not the member list for one specific channel.
4.2 Two halves: NTsocial and Meshtastic
The easiest way to understand this page is to think of it as two layers with different purposes.
- Upper half: person-to-person interaction. It answers, "Who can I interact with right now, and who should I tap for private messages?"
- Lower half: radio and network-state observation. It answers, "Which Meshtastic nodes can the gateway currently see, and how healthy is that side of the network?"
4.3 Opening the page
Open the app and tap People on the bottom navigation bar. From top to bottom, you'll usually see:
- The online NTsocial people list.
Friends.Blocked.Meshtastic Nodes.Gateway Health.
- The top online list may not have a separate "NTsocial" title, but that's what it functionally is.
Meshtastic NodesandGateway Healthappear only whenMeshtastic (LoRa)is enabled.
4.4 Reading the online list
The top list isn't a permanent account directory. It's the set of NTsocial identities currently recognized as recently active and practically reachable.
- A person appearing here feels more like "recently interactive" than "saved forever."
- If someone disappears from this live list later, that doesn't mean your relationship, favorite status, or message history was deleted.
- The first line usually prefers the published profile nickname when available.
- The second line may show a tagline, bio, website, a short identifier, or a waiting-for-identity message.
- Rows with unread private messages often rise to the front. After that, stronger nearby signal usually sorts earlier than weaker signal.
4.5 Starting Private Messages and Viewing Profiles
The upper list is the main entry point for one-to-one private messaging.
- Tap once: open
PRIVATE MESSAGEwith that person directly. - Long-press: open the fuller profile detail card for that identified person.
- If the row still says identity is waiting or not fully resolved, some actions may be temporarily unavailable.
4.6 Badges, Signal, Favorites, and Blocking
- Unread badge: means that private conversation currently has unread content from that person. Opening the conversation usually clears it.
- Signal and dBm: when there's no unread badge, the right side often shows nearby NTsocial / BLE reachability rather than LoRa diagnostics.
- Star: add or remove the person from
Friends. - Block: add or remove the person from
Blocked.
4.7 Friends list and blocked list
Friends isn't the same as "currently online." It's your own saved list of people you want easy access to.
- People can stay there even while offline.
- Tapping a friend still opens the private message screen directly.
- The blocked list is mainly a management area, not somewhere you'd go to start a conversation.
- Blocking someone doesn't make that radio presence disappear from the physical world. A currently detected device may still appear in live observation areas.
4.8 When Nobody Is Around
If the page says there are currently no connections, it only means the live NTsocial area at the top has nobody to list right now.
- It doesn't mean your
Friendslist was erased. - It doesn't mean your
Blockedlist was erased. - It doesn't mean your private-message history disappeared.
- It doesn't automatically mean LoRa is broken.
4.9 Checking Meshtastic Nodes and Gateway Health
The lower half is diagnostic, not conversational. Meshtastic Nodes shows what the current Meshtastic side can hear, and Gateway Health summarizes radio-side load and health.
- A node row may show the node name,
hops,SNR,RSSI, andlastHeard. lastHeardmeans when the gateway last heard that radio node. It doesn't mean that NTsocial user just spoke in private messages.Gateway Healthoften includes battery, voltage, channel utilization, and air-util-tx style indicators.- These lower sections are for technical observation, not for opening private messages.
4.10 People vs. Profile vs. Channel Members
People: global person interaction, private-message entry, favorites, blocked list, and Meshtastic diagnostics.Profile: where you edit and publish your own public identity data so other people can see the newest version.- Channel members page: a member list for one specific channel, including that channel's reachability tools such as
All Ping.
4.11 Workflows, Common Mistakes, and Quick Fixes
A. Recommended workflows
- Open a private message: go to
People, find the person in the live list orFriends, then tap the whole row. - Keep someone easy to find later: tap the star so that person stays in
Friendseven when offline. - Read the full profile: long-press the identified person row instead of tapping once.
- Check LoRa-side health: scroll downward to
Meshtastic NodesandGateway Healthrather than assuming the upper half already tells you everything about the radio link.
B. Common misunderstandings
- The Meshtastic node list is my private-message contact list: nope — it's diagnostic only.
- The People page is the same as a channel member list: not quite. The People page is global.
- Friends only shows people who are online right now: actually, keeping offline people handy is one of its main purposes.
- If someone isn't in the live top list anymore, the old private conversation must be gone: not true. The live list is dynamic, but your conversation history and saved lists are a separate layer.
C. Quick fixes
- You tapped a row and nothing happened: check whether identity is still unresolved or still waiting.
- You want to see profile details instead of chatting: long-press the identified person row.
- You see no live NTsocial connections: keep scrolling and check
Friends,Blocked, and, when LoRa is on, the Meshtastic diagnostics below. - You can see Meshtastic nodes but still can't start a private message: that's normal. The radio node list isn't the NTsocial private-message entry list.
1. NTsocial Overview
Modern communications infrastructure is highly developed, but it's also surprisingly fragile. During natural disasters, regional conflicts, or sudden network outages, traditional systems that depend on cell towers and centralized servers often fail right when they're needed most. NTsocial was built for exactly these extreme conditions — a decentralized social and tactical communications platform.
NTsocial follows a core design principle: don't depend on external networks. Using Bluetooth Low Energy (BLE) as its backbone, NTsocial turns smartphones into independent communication nodes and automatically links them into a local mesh network with multi-hop relay capability — even without 4G/5G or Wi-Fi. Through this network, you can send public, channel, and encrypted text messages, share images and voice clips, and even use standalone push-to-talk (PTT) voice.
To extend coverage as far as possible, every node in the network helps store and forward messages. Combined with special Bluetooth transmission modes, direct node-to-node communication can reach roughly 100 meters in open outdoor conditions. To push beyond Bluetooth's physical limits, NTsocial is also being actively integrated with Meshtastic (LoRa) as an ultra-long-range transport layer. While the BLE backbone stays active, text and tactical status (ATaK) data can travel first over LoRa to distant nodes several kilometers away. With relaying between LoRa nodes, communication can scale across regions to hundreds of kilometers — creating a resilient dual-track system: efficient multimedia nearby and durable text-based coordination over long distances.
As a communications backup for disaster zones and field operations, NTsocial tightly integrates offline maps, map object management, location reporting, and decentralized social coordination. Our goal is to preserve a basic channel for freedom of expression and information flow in the harshest conditions, so you and your teammates can stay connected when conventional networks go silent.
This manual will keep growing over time. Right now, it's organized into six main parts:
- Profile Settings: managing your public identity, language, and network preferences.
- Public Feed: reading, writing, and replying to truly public posts that spread through nearby NTsocial users.
- People Page: opening private messages, reading profile summaries, managing favorites and blocks, and checking Meshtastic node health.
- Channels in NTsocial: creating, joining, securing, and using channels, including chat, ATaK, and PTT workflows.
- Offline Map Management System: loading and configuring map data, themes, elevation (DEM), and tracks.
- ATaK and Meshtastic Workflows: location reporting, tactical object management, LoRa Sync, and long-range routing setup.
5. Channels in NTsocial
In NTsocial, a channel is a shared communication space for a team, a family, a group of friends, or people nearby. It's more than a simple chat room — depending on how you set it up, a channel can carry regular conversation, encrypted messages, ATaK location data, map objects, or Meshtastic-routed text.
Quick rule: Use a public or encrypted channel for normal conversation. Add a password when privacy matters. Create an ATaK channel when you need location and map collaboration. Bind that channel to Meshtastic only when you want the same workflow to travel over LoRa.
5.1 What Is a Channel?
You can join multiple channels at once, and each one can serve a different purpose. Some are open discussion rooms, some are password-protected, and some are dedicated to ATaK teamwork.
- Important: Two channels can show the same name and still be different channels.
- Why: Every channel has its own channel ID, creator information, and short code.
- Best practice: When joining, don't rely on the name alone. Check the creator, lock icon, and channel details so you don't enter the wrong channel.
5.2 Picking the Right Channel Type
- Public channel: Best for open discussion, local event coordination, and easy discovery by nearby users. No password is required.
- Encrypted channel: Best for a private group, team coordination, or any discussion that shouldn't be readable without the password.
- ATaK channel: Best for search and rescue, field missions, location sharing, and map-object coordination. It uses a password and a location reporting interval.
- Bound Meshtastic channel: Best when you want a specific NTsocial channel to use a Meshtastic LoRa route. After binding, the channel becomes text-only on the NTsocial side.
- Native Meshtastic page: This is a diagnostic and native-text page for a Meshtastic LoRa channel. It isn't the same thing as a normal NTsocial channel.
5.3 Reading the Channels Screen
When you open the Channels tab, the screen is usually divided into three areas: channels you already joined, channels recently discovered nearby, and the Meshtastic channel list.
- Joined channels: Show the name, unread count, and markers such as encrypted, ATaK, or LoRa / Meshtastic status.
- Discovered channels: Show channels your phone has recently seen nearby through beacons or relayed channel traffic. This isn't a global public directory.
- Meshtastic channels: Show the available Meshtastic channel indexes you can open for diagnostics or native text tests.
- Tap: Open the channel.
- Long-press a joined channel: View the full channel ID and short code.
- X button: Leave that channel directly from the channel list.
5.4 Creating or Joining a Channel
Tap the + button in the lower-right corner of the Channels screen to create a new channel. Channel names should be short and easy to recognize.
- Name rules: The name must be 1 to 20 characters long and cannot contain
/ \ : * ? " < > |. - Public channel: Enter a name, leave encryption and ATaK off, then create it.
- Encrypted channel: Enter a name, turn on the private / encrypted option, set a password, then create it.
- ATaK channel: Enter a name, turn on the ATaK option, set a password, choose the location reporting interval, then create it.
- What happens next: After creation, NTsocial joins you to the channel immediately and opens the channel page.
- Joining a discovered channel: Tap Join. If the channel has a lock icon, you must enter the correct password before NTsocial can show the content properly.
5.5 Sending Messages, Images, Voice, and Replies
Inside a regular public or encrypted channel, you can use it as a full conversation space rather than a text-only room.
- Text: Send ordinary chat messages.
- Images: Attach pictures and show them inline in the conversation.
- Voice: Record and send voice messages from the microphone.
- Replies: Open a reply thread under a post for focused discussion.
- Author card: Open the sender information card to see the display name and related identity details.
Important limitation: If a channel is bound to Meshtastic, NTsocial currently keeps that channel in text-only mode. Image and voice controls are hidden by design.
5.6 Members, Online Status, and Push-to-Talk
Tap the member icon in the upper-right corner of a channel to open the member list.
- Search: You can look up members by display name or fingerprint-related information.
- Online / Offline: Lets you quickly see whether a member appears active.
- Signal indicator: Shows a strength estimate based on RSSI.
- PTT call: Use the phone icon to start a push-to-talk call to that member.
- How PTT works: PTT is half-duplex, like a walkie-talkie. You normally press and hold to speak, then release to listen.
PTT is especially useful for hiking teams, search and rescue crews, and other situations where short, direct voice coordination is better than typing.
5.7 Encrypted Channels and Passwords
Encrypted channels are meant for people who should be able to read the same conversation privately. The rule is simple: everyone in that channel must use the same correct password.
- Correct password: Messages can be read normally.
- No password or wrong password: You may only see a placeholder such as an encrypted-message notice instead of readable content.
- Channel-specific: The password protects only that channel. It isn't a master password for the entire app.
- Same-name warning: Two channels with the same name can still have different creators and different passwords.
5.8 ATaK Channels and Location Collaboration
ATaK channels are the most specialized channel type in NTsocial. They're designed for mission-style coordination where position updates and map data matter as much as chat.
- Best uses: Search and rescue, field coordination, disaster response, patrols, and task-based team movement.
- Setup: Create the channel as an ATaK channel, set a password, and choose a reporting interval in minutes.
- Prerequisites: Your phone needs location permission, and device location services must be turned on.
- Channel behavior: The page shows location-related actions, and you can review member location history and coordinates.
- Map objects: ATaK workflows can add, edit, and delete map objects for shared team awareness.
Best practice: If you want ATaK data to sync outward as reliably as possible, bind that same ATaK channel to a Meshtastic route after basic setup is complete.
5.9 Meshtastic Routing and Native Channels
Binding doesn't turn an NTsocial channel into Meshtastic itself. It means you choose a Meshtastic channel index as the transport path for that NTsocial channel.
- Before binding: Finish Meshtastic setup elsewhere in NTsocial first, install the official Meshtastic app, and make sure the LoRa device is connected.
- How to bind: Open the NTsocial channel, tap the
LoRaor Meshtastic button in the upper-right corner, then choose the Meshtastic channel index. - One-to-one at the channel level: One NTsocial channel can be bound to one Meshtastic channel index at a time.
- Shared LoRa path: Multiple NTsocial channels can still point to the same Meshtastic channel index if needed.
- After binding: Text continues to work, but images and voice are disabled in that channel.
The Meshtastic channel list shown on the lower part of the Channels screen is different. Those entries open the native Meshtastic page, which is mainly for native-text testing and diagnostics rather than normal NTsocial channel conversation.
3.10 Notifications, leaving, and common limits
- Unread count: Joined channel cards show unread numbers so you can see where new activity happened.
- Notification toggle: Inside a channel, use the bell icon in the upper-right corner to turn notifications on or off for that channel.
- Leave from the list: Tap the X on the channel card.
- Leave from inside the channel: Use the Leave action in the upper-right corner.
- ATaK reminder: If you leave an ATaK channel, ATaK reporting and related state for that channel stop for your device.
- Discovery limit: The discovered list only shows channels your phone has actually seen nearby recently, not every channel in the world.
- Password errors: If you join but still see encrypted placeholders, check whether the password is wrong or whether you joined a same-name channel created by someone else.
Practical advice: Decide your goal first, then choose the channel type. Public or encrypted channels are best for chat, encrypted channels are best for privacy, ATaK channels are best for map coordination, and Meshtastic binding is best when you need that same channel to travel over LoRa.
6. Offline Map System
NTsocial uses a fully offline rendering engine and doesn't rely on Google Maps or other online services. It works anywhere without cellular coverage, but users must import their own map data files. NTsocial supports mainstream formats from the open-source mapping community (.map/.xml/.DEM/.GPX). In Taiwan, we recommend the open-source project “魯地圖” (MOI.OSM - Taiwan TOPO).
6.1 Opening the Map
- For first-time use, download the latest map data files. Download the .map/.xml/.DEM files.
- On most Android phones, files are stored in the Download folder. No manual unzip or relocation is needed; NTsocial will handle the files automatically.
- Tap “Map” from the bottom navigation menu in the app.
- If no map data has been imported, the app will ask you to select at least one existing map file on your device (for example, a .map file).
After importing map data, open the left sidebar: tap the menu button (≡) in the top-left corner, or swipe right from the left edge of the screen. All map management, layer controls, and ATaK channel selection happen here.
For first-time use, be sure to tap “Import style file.” After importing, select “MOI_OSM_twmap.xml” from the style list.
6.2 Importing and Switching Maps (.map)
- Open the sidebar and scroll to the “Offline Maps” section.
- If no maps have been imported or you need to add a new one, tap “Import map file (.map/.zip).”
- The file picker will open. Select the .map file stored on your device (or a .zip containing the map).
- After import, tap the filename in the list to activate the map.
Note: The system automatically remembers the last map you used.
6.3 Visual Themes (.xml)
- Rendering themes determine the map’s visual style (road colors, contour display, and more).
- In the sidebar “Rendering Theme” section, tap “Import theme (.xml/.zip).”
- We recommend importing a .zip that includes all assets (images and icons).
- After import, select the theme you want to apply. Choosing “Default” uses the built-in rendering style.
Text scale: If map labels appear too small, adjust “Text scale” in the sidebar. Options range from Small (0.35x) to Extra large (0.85x).
4.4 Digital elevation model (DEM) & hillshading
- The system supports SRTM HGT elevation data for hillshading.
- In the sidebar “Elevation data (DEM)” section, tap “Import HGT (.hgt/.zip).”
- Select the .hgt file that matches your current map area.
- After import, the system automatically overlays hillshading during map rendering.
6.5 Managing GPX Tracks (GPX)
- In the sidebar “GPX tracks” section, tap “Import GPX.”
- After import, check the filename in the list to display the track (blue line) on the map.
- You can select multiple GPX files at the same time for overlay analysis.
6.6 Basic Map Controls
- Zoom: Use two-finger pinch gestures, or tap the + / - buttons in the top-right corner.
- Recenter: Tap the TW button in the top-right corner to reset the view to the default center point (Taiwan).
- Pan: Drag the map with one finger.
7. ATaK Tactical Channel Operations
ATaK channels are designed for outdoor team collaboration. You can create as many ATaK channels as you need, and the map can display multiple channels at once — letting you manage several teams’ geographic information simultaneously. ATaK channels include real-time member location synchronization and map object data. Each member automatically reports GPS coordinates, and each member can create map objects based on their field observations.
7.1 Activating and Showing Channels on the Map
- Tactical channels you've joined are automatically listed in the “ATaK channels” section at the bottom of the left sidebar.
- Open the left sidebar and scroll to the bottom.
- Show/Hide: Check the box to the left of a channel name to show or hide its members and objects on the map.
- Expand info: Tap the arrow to the right of a channel name to view the member list (including last report time) and the map object list.
7.2 Automatic Location Reporting (PLI - Position Location Information)
- After joining a tactical channel, the system automatically reports location in the background. The reporting interval is set by the channel creator.
- Reporting mechanism: The system uses the channel “update interval” to capture GPS coordinates and broadcast them securely.
- Freshness guard: If GPS data is too old (for example, indoors with no fix), the system pauses reporting to avoid sending incorrect coordinates.
- Privacy: Location data is only sent to tactical channels you have joined and enabled. Members can leave channels at any time.
7.3 Tracking Team Members
- Channel members are shown on the map as circular icons.
- Abbreviations: The letter or number inside the circle represents the member identifier.
- Color coding: The system assigns different colors automatically (red, purple, green, blue, and more).
- Details: Tap a member icon to view the full nickname, channel, and the time of the last location update.
5.4 Tactical objects (Map Objects) management
A. Create objects
- Long-press the desired location on the map. Zoom in first for accuracy.
- The system will show the “Create map object” dialog. Fill in the following fields:
- Publish channels: Select the channels to synchronize the object (multi-select supported).
- Name: A short label (for example, CP-1, Target-A).
- Attribute: A short note (for example, resources, food, drinking water, tents, camp, fire).
- Description: Detailed information.
- Icon: Choose a representative symbol from the grid (for example, personnel, medical, hazard, rally point).
- Tap “Create” to broadcast the object to the mesh network.
B. View & edit objects
- Tap an existing object icon on the map.
- The info panel shows the object name, coordinates, attributes, description, and the current “Alive Channels.”
- Edit: Tap “Edit” to update the name or description, or to sync the object to additional channels.
- Delete: Tap “Delete” and choose the channel(s) in which you want to remove the object.
- The system sends a delete operation (Op: Delete) to the selected channels to remove the marker from members’ maps.
8. Meshtastic / LoRa, LoRa Sync, and Channel QR
In NTsocial, Meshtastic / LoRa doesn't replace the whole app. It's a long-range transport layer for LoRa-bound NTsocial channel text, LoRa Sync backfill, channel/member/profile status sync, ATaK state transfer, and channel-share QR workflows.
Four rules to remember: First, connect and verify the LoRa node in the official Meshtastic app before touching NTsocial. Second, a normal NTsocial channel only starts using LoRa after you bind that specific channel to a Meshtastic channel index. Third, bound text may try LoRa first, but BLE doesn't disappear. Fourth, a channel-share QR distributes NTsocial channel information; it doesn't auto-join the channel and doesn't auto-bind LoRa for the receiver.
8.1 How LoRa Works in NTsocial
Meshtastic in NTsocial is best understood as a selective long-range extension. It's used for specific channel text and tactical state, while the rest of NTsocial still keeps its normal BLE and app-level behavior.
- What LoRa is doing here: It carries very short text and tactical snapshots farther than ordinary Bluetooth links can reach.
- What it isn't: It's not a single switch that turns the whole app into a LoRa-only messenger.
- Where it helps most: Long-range group text, LoRa Sync backfill, ATaK state transfer, and channel-share coordination for teams that already operate with Meshtastic hardware.
8.2 What Uses LoRa and What Doesn't
When a channel is correctly bound to LoRa, not every content type behaves the same way. Also, don't confuse NTsocial's BLE long-range mode with Meshtastic LoRa. They're different systems.
- Main things that can use LoRa: bound NTsocial channel text posts, text replies, manually pasted share links or other text-type share content, LoRa Sync text backfill, latest channel state, member roster updates, profile JSON text updates, ATaK state snapshots, and
All Ping. - Things that don't mainly use LoRa: images, voice messages, avatar image files, PTT / call audio, and ordinary nearby BLE message sync.
- Long Range BLE mode: this is still Bluetooth Coded PHY (S=8) inside NTsocial's BLE stack.
- Meshtastic (LoRa): this requires the official Meshtastic app, a working LoRa node, and a compatible Meshtastic channel configuration.
8.3 Where to Find LoRa-Related Screens
Meshtastic operations are spread across several NTsocial pages. Knowing the layout first reduces a lot of confusion later.
- Profile tab: The
Meshtastic (LoRa)card appears nearPublish Profileand the BLELong Range Modesetting. - Channels home: A top switch lets you move between
NTsocialandMeshtastic. - Normal NTsocial channel screen: The top-right action area contains
Members, the optional ATaK icon, notifications,LoRa/LoRa ON, andLeave Channel. - Members page: This is where
All Pinglives. - People page: When LoRa is active, it can show
Meshtastic NodesandGateway Health. - Map page: If you have joined ATaK channels, the map sidebar can expose ATaK members and object state.
8.4 Getting the Meshtastic App Ready First
The most stable setup path starts in the official Meshtastic app. NTsocial is designed to reuse that working connection rather than replace the original Meshtastic workflow.
- Install the official Meshtastic app if it's still missing.
- Power on a compatible LoRa node and connect it inside the official app.
- Create or import the Meshtastic channel you plan to use.
- If the node still has no region configured, complete the correct region setting before any traffic tests.
- Make sure both sides use compatible Meshtastic channel settings. The safest method is for both sides to import the same channel QR code or shared link.
- Before moving back to NTsocial, exchange one very short message such as
testin the official Meshtastic app.
- Connection limit: A Meshtastic device normally supports only one active user connection at a time.
- Practical advice: If you're choosing between Bluetooth, Wi-Fi, and USB, go with Bluetooth for NTsocial since the current integration depends on the saved BLE device address.
8.5 Turning On Meshtastic from Your Profile
After the official Meshtastic app is already healthy, turn on NTsocial's integration layer from the Profile page.
- Open
Profile. - Find the card labeled
Meshtastic (LoRa). - Turn on the switch.
- If NTsocial can reuse the current connection from the official Meshtastic app, the status may immediately move to a healthy state.
- If device selection is required, choose the same LoRa node you already prepared in the official app.
- Typical status examples: not enabled, Meshtastic not installed, waiting for Meshtastic service, connecting, connected, or service disconnected. The exact wording may vary by app version.
- Good to know: Once the device address is saved, you usually don't need to pick it again unless you change LoRa devices or clear app data.
- If the picker shows a problem: turn on Bluetooth when it's off, grant scan or connection permission when asked, and if no device appears, first confirm the LoRa device is powered on, nearby, and visible in the official Meshtastic app.
Good sign: if NTsocial says it's already reusing the node currently connected inside the Meshtastic app, that's usually the cleanest setup state.
8.6 Reading the Meshtastic Channel List
After LoRa is enabled, open Channels and switch to Meshtastic. This is the best confirmation that NTsocial is really reading live Meshtastic data.
- Open
Channels. - Switch to
Meshtastic. - Look for a status banner and a list of Meshtastic channel cards showing the index, name, and
uplink/downlinkstate. - Tap one entry, such as
[0] Primaryor[1] LongFast, to enter theLoRa Channel #Npage. - Use that page to send only a very short native-text test.
- What
LoRa Channel #Nis for: a viewer and test page for native Meshtastic text and diagnostic summaries. - What it isn't: it's not the same as a normal NTsocial chat page, and opening it doesn't bind a normal NTsocial channel.
- If you see
APP[256] ... bytes: that usually means NTsocial traffic passed through the Meshtastic app-port path. It's a diagnostic summary, not ordinary chat text. - Limit: native Meshtastic diagnostic text should stay within 180 UTF-8 bytes, and your first test should be much shorter than that.
8.7 Binding a Channel to LoRa
This is the step that actually makes a normal NTsocial channel use Meshtastic. Turning on global support isn't enough by itself.
- Open the NTsocial channel you want to use.
- Tap
LoRaorLoRa ONat the top of the channel screen. - When the Meshtastic route dialog opens, choose the channel index you want to bind.
- If a binding already exists, you can inspect the current selection, switch it, or remove it.
- After that, the NTsocial channel remembers the mapping on your own phone.
- One route per NTsocial channel: a single NTsocial channel can bind to only one Meshtastic channel index at a time.
- Local flexibility: more than one NTsocial channel may still point to the same local Meshtastic index if you want.
- Local-only binding: this binding is per device. If both users want to send from NTsocial over the same LoRa path, each user must create the binding on their own device.
Important: the number shown on screen is less important than the underlying Meshtastic channel configuration. The safest practice is still for both sides to import the same Meshtastic channel QR code or shared link.
8.8 What Changes After Binding
A. UI and message-path changes
After binding, ordinary NTsocial channel text is no longer raw Meshtastic text. NTsocial wraps it in its own packet format and hands it to Meshtastic for transport. In this mode, Meshtastic is the transport layer rather than the final user-facing chat format.
- Channel list change: The routed channel usually shows a
LoRamarker. If the same channel is also ATaK-enabled, you may also see a location icon. - Channel screen change: The top button changes to
LoRa ONor an equivalent state label. - Composer change: The input area becomes text only. Image and voice buttons disappear by design.
- Receiver recommendation: If you send from the diagnostic page, the other side can read it in the official Meshtastic app. If you send from a bound NTsocial channel, the receiver should ideally also use NTsocial.
B. Getting message length right
Many users assume the message body can always be 180 bytes. That rule only applies to the native Meshtastic diagnostic text page. Bound NTsocial chat is different because the full packet also has to carry NTsocial data, headers, and encryption overhead.
- Diagnostic text page: The raw text itself must stay within 180 UTF-8 bytes.
- Bound NTsocial channel: The usable text is shorter than 180 bytes because the full packet must fit.
- Character width matters: Chinese, Japanese, emoji, and other multibyte characters consume more space than plain Latin letters and digits.
- Practical rule: Treat bound NTsocial LoRa chat as a very short text channel rather than a place for long paragraphs.
Recommended first test: Start with about 5 to 15 Chinese or Japanese characters, or 10 to 30 Latin letters and digits. Once that works, increase length gradually if needed.
C. How to tell whether a received message came in over LoRa
In a bound NTsocial channel, the most useful check is usually the receiving side rather than your own sent-message bubble.
- Received message: If a message arrived through Meshtastic, the sender name usually shows a
LoRamarker. - Your own outgoing message: Even if NTsocial really tried LoRa first, your own message may not be marked
LoRafor that reason alone. - Scope reminder: Meshtastic binding doesn't switch the entire app into LoRa mode. Private chats and the regular public feed still use other paths.
8.9 LoRa Sync and Background Updates
LoRa support isn't just about live channel text. NTsocial also uses the long-range path to backfill and refresh selected state in the background.
A. LoRa Sync for missing text
- What it does: if two users share the same LoRa-bound NTsocial channel and one side missed part of the text history, NTsocial can backfill that text over LoRa in the background.
- When you feel it most: after being offline, after a weak route recovers, or after you re-encounter a node from the same channel.
- What it mainly backfills: text posts, text replies, and text-type share cards.
- What it doesn't backfill as LoRa text: images, voice, avatar image files, or PTT audio.
B. Status sync beyond chat text
- Channel state: latest channel title, summary, and related metadata can stay more current over LoRa.
- Member roster: member-list freshness is improved because roster state can sync in the background.
- Profile JSON: nickname, bio, tagline, and other text-based profile fields can sync even when avatar images don't.
- ATaK state: location and tactical state snapshots can also participate in the background sync path.
Normal behavior: a persistent NTsocial notification may appear while LoRa Sync, ATaK, or related background services are running. That usually means Android is keeping the foreground service alive.
6.10 Verifying Meshtastic is actually working
The cleanest verification order is:
- Make the diagnostic text page work first.
- Bind an NTsocial channel to the same Meshtastic index.
- Send one very short message in the bound NTsocial channel.
- Confirm that the other side receives it in NTsocial and check whether the received message shows a
LoRamarker.
Important: LoRa ON means NTsocial will try Meshtastic first. It doesn't always guarantee that the message can only travel through Meshtastic.
- If the Meshtastic transport can't carry the packet, NTsocial may fall back to its own BLE mesh path.
- During testing, avoid keeping both phones in a situation where direct NTsocial BLE mesh is obviously strong, or it becomes hard to tell which transport really delivered the message.
- Advanced users: If you use adb or logging tools, you can inspect diagnostic files or logcat entries for Meshtastic app-port traffic, but most users don't need this to complete setup.
8.11 Testing Reachability with All Ping
All Ping is a quick way to see which members in an NTsocial channel can currently answer you and whether the response path involved LoRa.
- Open any NTsocial channel.
- Tap the
Membersicon near the top right to enter the member page. - Tap
All Pingat the top right of that page. - Review member states such as
Waiting,Temporarily unreachable,xx ms/x.x s, or an extraLoRamarker.
- If the channel is LoRa-bound:
All Pingcan make use of both BLE and LoRa. - If the channel isn't LoRa-bound: the feature still works, but it behaves more like a nearby BLE reachability test.
- Where results appear: Ping results stay on the member page and don't become normal chat messages.
8.12 Checking Node and Gateway Status
The bottom People tab isn't just for contacts. Once LoRa is enabled, it's also a handy place to check the health of the Meshtastic side of the network.
- Meshtastic node list: You'll typically see a node name together with
hops,SNR,RSSI, andlastHeard. In practical terms, fewerhopsusually means a more direct path,SNRandRSSIare signal-quality references, andlastHeardtells you how recently the node was heard. - Gateway health: This section usually shows indicators such as battery, voltage, channel utilization, and air-util-tx. It's useful when you suspect low power, a busy channel, or unstable packet delivery.
8.13 Running ATaK Over LoRa
If you need long-range tactical collaboration, LoRa binding and ATaK channel settings must work together.
- Create or mark the NTsocial channel as an ATaK channel.
- Set the password and location update interval required by that ATaK channel.
- Open the same channel and bind it to the correct Meshtastic channel index with the
LoRabutton. - Keep NTsocial's background service active and confirm that location permission is granted.
- Why both layers matter: LoRa binding alone doesn't automatically turn a channel into an ATaK channel.
- What LoRa helps carry: position reports, ATaK settings, map objects, and related latest-state snapshots.
- Best order: first verify short-text delivery, then expand into ATaK once the base Meshtastic path is stable.
8.14 Sharing Channels via QR Codes
NTsocial can package joined channels into a shareable QR workflow. This is especially useful for field teams that need fast channel distribution.
- Open
Channelsand tap the floating+button. - Select the action used to generate a share QR.
- Choose one or more channels you already joined.
- Generate the preview and confirm the bundled channel list.
- What the preview shows: selected count, a large QR image, the list of packaged channels, and notes about how importing works.
- Typical share options: save PNG, share externally, or send the share inside NTsocial as a private-message share card.
- Important behavior: the built-in “send inside NTsocial” flow is a private-message workflow. It isn't the same as dropping the share into an arbitrary channel, and it doesn't automatically inherit a channel’s LoRa route.
- Capacity: one QR currently has a practical limit of about 12 channels.
- Security note: encrypted-channel QR shares don't contain the plaintext password itself. They carry verification material so the receiver can later validate the password they enter, and generation can fail if the local device lacks the needed key material.
8.15 Importing Shared QR Codes
NTsocial supports several ways to receive a shared channel bundle.
- Direct scan: use the channel action menu to open the QR scanner.
- Import from image: pick a saved PNG or screenshot and let NTsocial detect the QR.
- Import from an NTsocial share card: if someone sent a channel-share card inside NTsocial private chat, use the card’s import action.
- External handoff: NTsocial can also handle supported share intents or an
ntsocial://channels/import?...style deep link.
- Import result summary: you may see counters such as imported, updated, already existed, and failed.
- Where imported channels appear: on the
NTsocialside of the channel screen, under the discoverable list rather than as auto-joined channels. - What you still must do: join the channel yourself. If it's encrypted, enter the correct password. If you also want LoRa, bind it locally after joining.
- Important reminder: importing a QR from a LoRa-bound sender doesn't auto-bind LoRa on the receiving phone.
8.16 What Gets Cleared When You Leave
Leaving a channel clears more than just the chat membership. For LoRa and ATaK users, this matters.
- What's typically cleared: the channel's LoRa binding, ATaK settings for that channel, cached ATaK positions and map objects, member-roster cache, LoRa peer-path memory, and
All Pingstate tied to that channel. - What to do after rejoining: recheck the LoRa binding and ATaK settings instead of assuming they survived the leave / rejoin cycle.
8.17 Recommended Workflow and Troubleshooting
A. Shortest correct workflow
- Connect the LoRa node in the official Meshtastic app.
- Enable
Meshtastic (LoRa)from NTsocialProfile. - Confirm that the
Meshtasticsub-tab shows the channel list. - Create or join the NTsocial channel you actually want to use.
- Open that channel and bind it with the
LoRabutton. - Send one very short text and verify the receiver sees the
LoRamarker. - Only after that, expand to
All Ping, ATaK, QR sharing, and map-side collaboration.
B. Common misunderstandings
- Misunderstanding 1: turning on
Meshtastic (LoRa)makes the whole app use LoRa. In reality, only selected bound-channel text and related tactical packets try LoRa first. - Misunderstanding 2: opening
LoRa Channel #Nmeans a normal NTsocial channel is already bound. It doesn't. - Misunderstanding 3: importing a channel-share QR means you already joined the channel and already have LoRa. You still need to join it and then bind LoRa locally if desired.
- Misunderstanding 4: if the message arrived, LoRa definitely worked. BLE fallback may also have delivered it.
- Misunderstanding 5: the share QR contains the plaintext channel password. It doesn't.
- Misunderstanding 6: sending the share inside NTsocial means it will automatically travel through whatever LoRa-bound channel you were viewing. The built-in share flow is actually a private-message card flow.
C. Frequent problems
Meshtastic (LoRa)stays disconnected: confirm the official Meshtastic app is installed, the node is truly connected there, and NTsocial can still see the same device.- The Meshtastic tab shows no channels: check that LoRa is enabled, the official app has already loaded the channel list, and the node is really connected.
- Images still don't travel far after binding: that's expected. Images aren't the main LoRa transport target.
- You imported a QR but can't find the channel: look under the discoverable section of the
NTsocialchannel tab, not the already-joined list. - The QR scanner says there's nothing importable: retry with the original PNG, the image-import option, or the raw external share payload rather than a heavily compressed screenshot.
- Encrypted share-QR generation fails: confirm the device really joined the encrypted channel successfully, still has the required local key material, and isn't trying to package too many channels into one QR.
All Pingoften shows temporarily unreachable: recheck LoRa binding, Meshtastic channel compatibility on both sides, node power, and the signal indicators shown underMeshtastic NodesandGateway Health.
9. Troubleshooting & Notes
Blank or grid map
- Confirm that the correct .map file is selected in the sidebar.
- Confirm that offline map data for the area has been downloaded.
Location not updating
- Ensure Android location permission is set to “Allow all the time” or “While using the app” for NTsocial.
- If Battery Saver is enabled, background location reporting may be blocked. Add NTsocial to the battery optimization whitelist.
Object sync delay
- The ATaK protocol relies on mesh network transfer. Sync delays can occur when nodes are sparse or signals are degraded.
- If an object is marked as “deleted” but the icon remains, try refreshing or restarting the app.
File compatibility
- Map files only support Mapsforge-compatible formats (OpenAndroMaps recommended).
- When importing ZIP files, ensure there are no extra macOS system files (such as __MACOSX) to avoid import failures.