← Nodes

KYKM — Everyday Handheld

Active

ThinkNode M1 (nRF52840)

The carried, always-on handheld. Fleet admin master M1, and the node members reach Ed on.

Commissioned September 12, 2026Notes updated September 12, 2026

  • handheld
  • admin-master
  • contact-node

Radio

Hardware
ThinkNode M1 (nRF52840)
Firmware
2.7.26
Role
CLIENT
Region
US
Modem preset
MEDIUM_FAST
Frequency slot
Hop limit
5
TX power
30 dBm
Node ID
MQTT
off

Power

Source
battery
Solar
Battery
Chemistry
Notes
Tuned for responsiveness, not frugality — no aggressive sleep.

Site

Deployment
handheld
Area
Boca Raton, FL
Grid square
Elevation
Fixed position
no
Position precision
13 bits (fuzzed)

Remote admin

Master slot
M1 (admin master)
Public key
hytoF5RjxNLoFVmWDPu43kr185CKiwivBKfnuguf/Fs=

Other

GPS update interval
300 s
NodeInfo broadcast
10800 s (3 h)
Position flags
1003
Channels
0 public (prec 13) · 1 private · 2 Reach-Ed (text only)
Wi-Fi
none on this hardware

Note on COM ports: The COM## numbers in this guide are the author’s own, shown as examples — your port will differ. On Windows, open Device Manager → Ports (COM & LPT) with the node plugged in to find the COM number your device enumerated as, and use that in place of the example in every command. On macOS/Linux the equivalent is a /dev/tty.*, /dev/ttyUSB*, or /dev/ttyACM* path. Always confirm your own port before running these commands.

Purpose & Role

This node is different from the deploy-and-forget nodes (tracker, travel, base). It is the handheld you carry — always with you, always on, and it plays three roles at once:

  1. Everyday client — participates in the mesh, sends and receives messages, shares your position.
  2. Admin master (M1) — its keypair is one of the three fleet masters; it can remotely administer the other nodes. (See the Admin-Key ADR.)
  3. Contact node — it holds the public Reach-Ed channel, so it’s where members reach you.

Because it’s carried and used constantly, it is not tuned for maximum battery frugality the way the tracker is — it’s tuned to be responsive and present.


1. Configuration (verified)

Section Setting Value Purpose
Device role CLIENT Full participant; relays and is reachable
Device node_info_broadcast_secs 10800 NodeInfo every 3 h
Position gps_mode ENABLED Live GPS
Position gps_update_interval 300 Fix every 5 min
Position position_broadcast_smart_enabled true Sends position as you move
Position broadcast_smart_minimum_distance 50 Metres moved before a smart send
Position position_broadcast_secs 3600 Stationary heartbeat
Position position_flags 1003 Altitude, timestamp, heading, speed
LoRa region US
LoRa modem_preset MEDIUM_FAST Must match the rest of the mesh
LoRa hop_limit 5 Fleet standard (see hop-limit justification)
LoRa tx_power 30 Full legal power
Power (defaults) no aggressive sleep Kept responsive as an everyday device

Note on preset: the CLI may print modem_preset: 4 — on this firmware 4 is the enum value for MEDIUM_FAST. Confirm by name with --info | findstr /i modemPreset. This must match every other node or the handheld lands on a different frequency slot and can’t hear the mesh.


2. CLI Procedure (Windows CMD, serial)

Configure over USB serial (the M1 has no Wi-Fi — serial or Bluetooth only). Disconnect the phone app first. Every committed write reboots the node; wait 60–90 s. The COM## port is an example — check Device Manager.

Step 1 — core config (one transaction, one reboot):

meshtastic --port COM19 --begin-edit --set device.role CLIENT --set device.node_info_broadcast_secs 10800 --set position.gps_mode ENABLED --set position.gps_update_interval 300 --set position.position_broadcast_smart_enabled true --set position.broadcast_smart_minimum_distance 50 --set lora.region US --set lora.modem_preset MEDIUM_FAST --set lora.hop_limit 5 --commit-edit

Step 2 — public channel precision (approximate location):

meshtastic --port COM19 --begin-edit --ch-index 0 --ch-set module_settings.position_precision 13 --commit-edit

Step 3 — admin keys (this node is a master; it holds the other two — see the Admin Master section). Set one key per command, over serial.

Then verify (Section 5).

3. Channels

The handheld carries three channels:

Index Name Precision Purpose
0 (primary, default key) 13 (~4 km) Public channel; approximate location only
1 (private) 32 (full) Personal/private traffic — not published, kept off all public docs
2 Reach-Ed 0 (off) Public contact channel; text only, no location
  • Channel 0 uses the approximate-location precision (13) so your public position is coarse (~4 km), not exact.
  • Channel 1 is your private channel at full resolution — deliberately excluded from any shared documentation.
  • Channel 2 (Reach-Ed) is the shared contact channel, text-only (precision 0 = no location), uplink/downlink off. Shared to members by QR scan only — never the key.

4. Admin Master Role

KYKM (M1) is one of the three fleet admin masters. Under the “every node carries all three master keys except its own” rule, KYKM holds the other two masters’ public keys:

  • M2 / base: base64:7CDjTOmJVFaNrf+KNd1+eYZYQ7mIjMN43xtwDx8N3nY=
  • M5 / travel: base64:4VyAwe95ytDwLrWEUYaQDNeLbGg7QEOX5oO/g1NyqGg=

From this handheld you can remotely administer other nodes over RF, e.g.:

meshtastic --port COM19 --dest "!<target node id>" --get lora
meshtastic --port COM19 --dest "!<target node id>" --set lora.hop_limit 5

(Double quotes on the dest in Windows CMD. Remote --set reboots the target and RF round-trips are slow — allow a couple of minutes and re-read to confirm.)

Because this device holds admin power over the fleet, protect it: set a non-default Bluetooth PIN, and keep the handset locked. Possession of this node’s private key is what confers admin authority; the private key never leaves the device and is never written down.


5. Verification

meshtastic --port COM19 --get device --get position --get lora
meshtastic --port COM19 --info | findstr /i "role name precision hop modemPreset"

Expected:

  • role: CLIENT
  • gps_mode: 1 (ENABLED), gps_update_interval: 300, smart on
  • lora hop_limit: 5, region US, modemPreset MEDIUM_FAST
  • Channel 0 precision 13, Channel 1 precision 32, Channel 2 (Reach-Ed) precision 0
  • hwModel THINKNODE_M1, hasWifi false — confirms the right node (M1 has no Wi-Fi)

6. Operating Notes

  • This is a carried, always-on device — responsiveness over battery frugality.
  • It is an admin master: lock it, use a non-default BLE PIN.
  • Public position is coarse (channel 0 precision 13); exact position only on the private channel.
  • Reach-Ed is text-only; people contact you there, shared by QR.
  • No Wi-Fi on this hardware — administer and configure over serial (USB) or Bluetooth.