MeshCore Room Servers What is a Room Server? What is a MeshCore Room Server? A Room Server is a store-and-forward bulletin board that runs directly on a LoRa node running MeshCore firmware. It acts as a shared message board for the mesh community - any node that can reach the room server can post and read messages without needing internet access or a central server. The whole point of a room server (versus an ordinary channel) is that it retains message history: roaming users who were out of range can come back later and pull the messages they missed, much like an email server. Key Characteristics Storage: The room server retains message history and pushes it to clients when they connect - a client receives the previous 32 unseen messages on login. (Persistence across a reboot/power cycle depends on your firmware and hardware; do not assume messages survive a power loss without verifying on your firmware version.) Access control: Two passwords - an admin password and a guest password - plus a per-companion ACL ( setperm , with levels Guest / Read-only / Read-write / Admin) and a separate set allow.read.only flag for unauthenticated read access. Repeater hybrid: A room server can also be configured as a repeater with set repeat on, but this is a trade-off - room servers benefit from an indoor location for USB/Bluetooth administration, whereas repeaters perform best with a high external antenna. Radio requirements: The room server's radio preset (frequency/bandwidth/spreading factor/coding rate) must match the rest of the network; otherwise its packets and adverts cannot be received by other nodes. Access Control MeshCore room servers use two passwords plus a per-companion ACL - not a single "three-tier" password ladder: Mechanism Default Permissions Admin password password Full control: manage permissions, delete messages, change all settings Guest password hello Read and write messages once authenticated as a guest Per-companion ACL ( setperm) per node Levels: Guest / Read-only / Read-write / Admin set allow.read.only flag off When enabled, allows unauthenticated read-only access; off by default (no automatic no-password read) Warning: Both default passwords must be changed immediately after first login. The default admin password password and guest password hello are publicly known. Why Room Servers Matter Room servers enable asynchronous community communication entirely over the mesh. A traveler passing through can read recent area messages, a neighborhood can coordinate during a power outage, or volunteers can leave notes for the next person who checks in - all without any internet connection or cellular infrastructure. Because the server stores and re-pushes missed messages, participants do not all need to be in range at the same time. Room Server Setup & Configuration Step 1 - Flash Room Server Firmware Use the MeshCore web flasher at flasher.meshcore.io. Select your hardware (e.g., Heltec V3) and choose the Room Server firmware variant. Step 2 - Connect via Serial or Bluetooth Connect via USB serial at 115200 baud using a terminal emulator (PuTTY, screen, minicom) or via Bluetooth using the MeshCore companion app. Step 3 - Immediate Security: Change Default Passwords Before anything else, change both default passwords. The defaults are publicly documented and must not remain in production: password yourSecureAdminPassword set guest.password yourSecureGuestPassword These are the two passwords a room server uses (admin and guest). For finer control you can also assign per-companion permissions with setperm (Guest / Read-only / Read-write / Admin), and enable unauthenticated read-only access with set allow.read.only on (default off). This is a two-password-plus-ACL model, not a single three-tier password ladder. Step 4 - Set Node Identity and Location set name MyRoomServer set lat 46.879682 set lon -96.789803 Accurate coordinates allow the room server to appear correctly on network maps and help users gauge how far they are from it. Step 5 - Verify Radio Preset The room server's radio settings must match the network. The MeshCore USA/Canada preset (as of 2026-06-08) for most North American MeshCore networks (NoDakMesh, RegionMesh, etc.) is: Frequency: 910.525 MHz Bandwidth: 62.5 kHz Spreading Factor: SF7 Coding Rate: CR5 Prefer applying the named USA/Canada preset from the firmware menu or companion app rather than hand-entering these values - that sets them automatically and avoids landing off the network if the preset has changed. Verify against the current MeshCore preset for your region before relying on the numbers above. Step 6 - Optional: Enable Repeat Mode If there is no separate repeater at this location, you can enable packet relay on the room server: set repeat on See Dual Deployment: Repeater + Room Server for why a dedicated repeater device is preferred over this option. Step 7 - Broadcast Presence Trigger an immediate advertisement so other nodes discover the room server without waiting for the next scheduled broadcast: advert Complete Configuration Reference set guest.password yourGuestPassword password yourAdminPassword set name MyRoomServer set lat 46.879682 set lon -96.789803 set repeat on # optional: also relay packets advert # broadcast presence immediately Dual Deployment: Repeater + Room Server Dual Deployment: Separate Repeater and Room Server The recommended best practice for any fixed site is to deploy two separate devices rather than enabling repeat mode on the room server. Why Two Devices? A repeater and a room server have conflicting placement requirements: Device Ideal Placement Why Repeater Outdoors, elevated, high external antenna Maximum RF range in all directions Room Server Indoors, near power and USB/BT access Easy administration, configuration, and monitoring Forcing one device to do both jobs means compromising on placement - either the repeater antenna is too low, or the room server is too hard to access for administration. Recommended Hardware Device 1 (Repeater): Heltec V3 flashed with Repeater firmware + high-gain external antenna (fiberglass omni or directional yagi) Device 2 (Room Server): Heltec V3 flashed with Room Server firmware + stock indoor antenna Cost Two Heltec V3 units cost approximately $54 total (roughly $27 each, as of 2026-06-08; pricing is volatile - verify current street price). This is a minimal investment for a significant capability improvement at a fixed site. When Single-Device is Acceptable If budget or space constraints make dual deployment impossible, enabling set repeat on on the room server is workable - it simply won't perform as well as a dedicated repeater at height. ( set repeat on is the documented MeshCore CLI command for the repeater-hybrid mode; confirm against your firmware's CLI help output.) In that case, do your best to place the device near a window or in an elevated location to improve the antenna's line of sight.