Supply Drop BBS — User Guide
Welcome to Supply Drop BBS. This guide covers everything from creating your account to sending mail, navigating rooms, and (for operators) managing the system.
Table of contents
- What is Supply Drop BBS?
- Connecting
- Creating an account
- Logging in and out
- Your account status
- Getting help
- Rooms
- Reading messages
- Writing messages
- Mail (private messages)
- Who's online
- Your profile
- Blocking users
- System administration
- Password recovery
- Quick-reference card
1. What is Supply Drop BBS?
Supply Drop BBS is a text-based bulletin board system designed for digital radio networks (LoRa mesh, Meshtastic, APRS) as well as conventional internet connections. The same BBS can accept users from multiple radio transports simultaneously — a MeshCore user and a Meshtastic user can be in the same room and send each other direct messages.
Because radio frames are small, commands are kept short: single letters where possible. Every command that works on radio also works over a network connection.
2. Connecting
How you connect depends on how the BBS operator has set things up.
| Method | What you type / do |
|---|---|
| MeshCore radio | Send a direct message to the BBS node |
| Meshtastic radio | Send a DM to the BBS node |
| Unix socket / CLI | nc -U /var/run/supply-drop-bbs/cli.sock |
| SSH / Telnet | Address and port provided by your operator |
Once connected you'll see a short welcome banner and the anonymous help menu:
REGISTER <user> create an account
LOGIN <user> log in to your account
Q quit
H help3. Creating an account
Type REGISTER followed by your desired username:
REGISTER aliceUsername rules
- Letters, digits, hyphens, and underscores only
- 3–32 characters
- Case-insensitive at login (stored exactly as typed)
The BBS will walk you through three prompts:
Choose a display name (or press Enter to use your username):
> Alice Wonderland
Choose a password (min 8 characters):
> ••••••••
Confirm your password:
> ••••••••Display name is optional. It is the name shown alongside your messages. Press Enter with nothing to use your username as-is. You can change it later with PROFILE.
Password must be at least 8 characters. It is stored as a hashed value — the BBS never stores your password in plain text.
After confirmation you are immediately logged in:
Welcome, alice. Type 'H' for commands.First user is automatically sysop
The very first account created on a fresh BBS is automatically given Sysop (full administrator) permission. Every subsequent account starts as Unvalidated and must be approved by an Aide or Sysop before it can post messages or read rooms.
4. Logging in and out
Logging in
LOGIN aliceYou'll be prompted for your password (input is hidden on supporting clients):
Enter your password:
> ••••••••After three wrong attempts the login workflow is cancelled and you must type LOGIN <username> again to retry.
Logging out
Qor
LOGOUTYour session ends immediately. Any active workflow (composing a message, etc.) is discarded.
Cancelling a workflow mid-way
If you're in the middle of a prompt sequence and want to back out without logging out:
CANCELor
STOPThis works at any point in any workflow.
5. Your account status
Checking who you are
WHOAMIOutput:
Logged in as alice (user). Current room: LobbyAccount levels
| Level | What you can do |
|---|---|
| Unvalidated | Log in, check WHOAMI, read help, log out. Cannot post or read rooms. |
| User | Full access to rooms, messages, and mail |
| Aide | Everything a User can do, plus: approve/reject new users, ban accounts, edit rooms |
| Sysop | Everything an Aide can do, plus: unban accounts, create/delete rooms |
Unvalidated accounts
After registration you'll see this message if you try a room command:
Your account is pending validation by an aide.
Type H for help, WHOAMI to see your status, or Q to log out.This is normal. A sysop or aide has been notified automatically. Once they approve your account you can start using the BBS without logging out — your session is upgraded in place.
6. Getting help
HShows the quick command list for your current access level.
Help topics
H mail — private messaging
H reading — reading messages in a room
H posting — writing and deleting messages
H nav — navigating between rooms
H acct — your profile and password
H aide — moderation commands (Aide+)
H sysop — administration commands (Sysop+)Help on a specific command
H N — explain the N (read new) command
H M — explain the M (mail) command
H BAN — explain the BAN command7. Rooms
Rooms are the public spaces of the BBS. Think of them like channels or bulletin boards — everyone who can access a room sees the same messages.
List rooms
KOutput shows each room with an unread-message indicator:
Rooms:
* General (3 new) [here]
Announcements
* Tech Talk (1 new)
Off Topic*means there are unread messages[here]marks your current room(3 new)shows the unread count
Change room
C Generalor by room number:
C 3Room names are case-insensitive.
Jump to next room with unread messages
GMoves you to the next room (in list order) that has messages you haven't read. Wraps around. Useful for quickly working through activity across all rooms.
Skip past unread messages without reading them
.FFFast-forward: marks everything in the current room as read without actually reading the messages. Useful when you've been away and just want a clean slate in a busy room.
Go to Mail
MSwitches you into your private Mail room. See section 10.
8. Reading messages
All reading commands work in whichever room you are currently in. Switch rooms with C first, then read.
Read new messages
NShows the messages you haven't read yet, oldest first, up to five at a time. Type N again to continue to the next batch.
[General — new messages]
#12 alice: Has anyone tried the new firmware?
#13 bob: Yes! Much better range on the 915 MHz band.
#14 carol: Same here, went from 2 km to almost 4 km.
(more — type N again or F 14 to continue)Read forward (oldest first)
FReads from the very beginning of the room. To start from a specific message:
F 42Reads messages with IDs higher than 42.
Read newest first
RShows the five most recent messages, newest at the top. Good for catching up quickly.
Scan message headers
SShows a one-line summary for each recent message — ID, sender, and the first 40 characters of the message. No body text is shown.
[General — scan]
#12 alice: Has anyone tried the new firmware?
#13 bob: Yes! Much better range on the 915 MHz ba…
#14 carol: Same here, went from 2 km to almost 4 …
(more — type F <id> to read from a message)Use F <id> to jump to a specific message after scanning.
Message format
Each message shows:
#<id> <sender>: <body>For direct mail (when you're in the Mail room):
#<id> [DM→<recipient>] <sender>: <body>9. Writing messages
Write a message to the current room
Inline (recommended on radio links):
E Has anyone tried the new firmware?The BBS echoes your draft and waits for confirmation:
Has anyone tried the new firmware?
Type . to sendSend a lone . to post it:
.
Message posted.If the confirmation prompt is lost in transit, just send . again — the draft is preserved and will not be double-posted.
Prompt flow (alternative):
EEnter your message for General:
> Has anyone tried the new firmware?
Message posted.The inline form is preferred on LoRa and other lossy links because the confirmation step makes the send idempotent: if "Message posted." never arrives, sending . safely retries without creating a duplicate.
Delete a message
D <id>Example:
D 14- You can delete your own messages in any room
- Aides and Sysops can delete anyone's messages
10. Mail (private messages)
Mail is the BBS private-message system. Messages go directly to one recipient and are only visible to the sender and recipient.
Go to Mail
MThis switches your current room to your Mail inbox. All the reading commands (N, F, R, S) now operate on your mail.
Write a new mail
Inline (recommended on radio links):
E bob Hi Bob, did you get the antenna parts?You can also prefix the username with @:
E @bob Hi Bob, did you get the antenna parts?The BBS echoes the draft for confirmation:
To bob: Hi Bob, did you get the antenna parts?
Type . to sendSend . to post. If the confirmation prompt is lost in transit, sending . again is safe — the draft is preserved and will not be double-posted.
Prompt flow (alternative):
EEnter recipient username:
> bob
Enter your message:
> Hi Bob, did you get the antenna parts?
Message posted.The recipient does not have to be online. They'll see it the next time they check their mail.
Read new mail
NShows mail you haven't read yet.
Browse all your mail
F — forward (oldest first)
R — reverse (newest first)
S — scan headersDelete a mail message
D <id>Either the sender or the recipient can delete a mail message.
Mail notifications
When you log in and have unread mail, the BBS will notify you. On radio transports you may receive an unsolicited push notification:
You have 2 unread messages. Reply 'mail' to read.11. Who's online
WLists everyone currently connected and their permission level:
Online (3 users):
alice [sysop]
bob [user]
carol [user]
(+1 unauthenticated)The (+n unauthenticated) line shows sessions that have connected but not yet logged in or registered.
12. Your profile
Change your display name
PROFILEYour display name is shown next to your messages. It can be anything up to the system limit. To remove your display name and show only your username:
Enter your new display name (or '-' to clear, Enter to cancel):
> -Change your password
PASSWDThe BBS will walk you through three steps:
Current password:
> ••••••••
New password (min 8 characters):
> ••••••••
Confirm new password:
> ••••••••
Password changed successfully.- You have three attempts to enter your current password correctly. After three failures the workflow is cancelled for security.
- The new password must be at least 8 characters.
- If the confirmation doesn't match, you are asked to enter the new password again (not starting over from the current-password check).
13. Blocking users
If another user's messages are unwelcome, you can block them. Blocked users' messages are hidden from your view — they do not know they are blocked, and their messages still appear to everyone else.
Toggle block (block if not blocked, unblock if blocked)
B <username>Force block
B +<username>Force unblock
B -<username>Blocking is per-session-and-database — it persists across logins.
14. System administration
These commands are available to Aides and Sysops only. Use H aide or H sysop from within a session to see the current list.
Viewing pending registrations
New users start as Unvalidated. The BBS automatically sends you a direct mail message when someone registers, so you know to check.
To list all accounts waiting for approval:
PENDINGOutput:
Pending validation (2):
newuser1 (joined 2026-05-09)
newuser2 (joined 2026-05-09)
Use V <username> to validate, B <username> to ban.You can also check from the command line (without starting the BBS):
supply-drop-bbs user list --pendingValidating (approving) a user
V <username>The account is immediately promoted to User level. If they are currently logged in, their session is upgraded without requiring a re-login.
From the command line:
supply-drop-bbs user verify aliceListing all users (CLI)
supply-drop-bbs user listOutput:
username level status created
--------------------------------------------------------
alice sysop active 2026-05-01
bob user active 2026-05-03
newuser1 unvalidated active 2026-05-09Banning a user (Aide+)
BAN <username>Sets the account to Banned status. The user is immediately disconnected from all active sessions. They cannot log in again until unbanned.
'newuser2' has been banned.Notes:
- An Aide cannot ban another Aide or a Sysop
- Banning is logged in the audit trail
Unbanning a user (Sysop only)
UNBAN <username>Restores the account to Active status. The user can log in again.
Creating a room (Sysop only)
From within a session:
.C Ham RadioFrom the command line:
supply-drop-bbs room create "Ham Radio"
supply-drop-bbs room create "Net Control" --description "Weekly net check-ins"Deleting a room (Sysop only)
.DR Ham RadioSystem rooms (Lobby, Mail, and the Aides room) cannot be deleted.
Web admin panel
If the web admin is enabled, sysops can manage users, rooms, messages, and view audit logs through a browser interface. The URL is set by the operator (typically http://<bbs-host>:8080).
From the Users page you can:
- Filter to "pending verification" to see only unvalidated accounts
- Click verify to approve an account
- Click ban / unban to manage banned users
An orange "N pending" badge appears in the page header whenever there are accounts waiting for approval.
15. Password recovery
Supply Drop BBS is a radio-first system. There is no email-based password reset. Recovery requires a sysop or physical access to the server.
Option 1 — Contact the sysop
Tell the sysop your username. They can reset your password from the command line on the server:
# The sysop runs this on the Pi / server:
supply-drop-bbs user create <username> --sysop # if creating freshFor an existing account, the sysop can also:
- Log into the web admin panel → Users → find your account → reset password (if password-reset UI is implemented in your version)
- Or use the CLI to demote/re-promote the account
Option 2 — Delete and re-register
If you have no messages or content worth keeping, the sysop can delete your account and you can re-register with the same username.
Protecting yourself
- Use a memorable passphrase rather than a complex random password — you may be typing on a phone keyboard
- Note your password somewhere secure before you need it
- If your password may have been compromised, use
PASSWDto change it immediately
16. Quick-reference card
Anyone (before login)
| Command | Action |
|---|---|
REGISTER <user> | Create an account |
LOGIN <user> | Log in |
H | Help |
Q | Quit |
Logged in — navigation
| Command | Action |
|---|---|
K | List rooms |
C <name> | Change to room by name (case-insensitive) |
C <number> | Change to room by number |
G | Jump to next room with unread messages |
M | Go to Mail (private messages) |
.FF | Fast-forward past unread (mark all read) |
Logged in — reading
| Command | Action |
|---|---|
N | Read new messages (5 at a time) |
F | Forward read from the beginning |
F <id> | Forward read starting after message #id |
R | Reverse read (newest first) |
S | Scan message headers |
Logged in — writing
| Command | Action |
|---|---|
E | Write a message (prompt flow) |
E <text> | Stage inline message — send . to confirm |
E <user> <text> | Stage inline mail — send . to confirm (when in Mail) |
. | Confirm and post a staged draft |
D <id> | Delete message #id |
Logged in — account
| Command | Action |
|---|---|
WHOAMI | Show your username and level |
W | Who's online |
PROFILE | Edit your display name |
PASSWD | Change your password |
B <user> | Block / unblock a user (toggle) |
B +<user> | Force block |
B -<user> | Force unblock |
CANCEL | Cancel the current workflow |
Q | Log out |
Help topics
| Command | Shows |
|---|---|
H | Quick command list |
H mail | Mail / private message commands |
H reading | All reading commands |
H posting | Writing and deleting |
H nav | Room navigation |
H acct | Profile and password |
H <cmd> | Detail on one command (e.g. H N) |
Aide commands
| Command | Action |
|---|---|
PENDING | List unvalidated accounts |
V <user> | Validate (approve) an account |
BAN <user> | Ban a user |
Sysop commands
| Command | Action |
|---|---|
UNBAN <user> | Lift a ban |
.C <name> | Create a new room |
.DR <name> | Delete a room |
Supply Drop BBS is an open-source project by Mesh America.