NBEMS/FLSuite – Another way to send Text (and Images) over radio

The Narrow Band Emergency Messaging System is probably one of the easier digital systems to implement. In its simplest form, all you need is your radio and an Android device running AndFLmsg. Simply type your message in the app, hold your radio up to the phone speaker and press the PTT button while the encoded message plays over the speaker. This method is called “audio coupling”.

The downside of audio coupling is that it makes a lot of audible noise in your local environment. The sound is pretty annoying, too. It’s also possible for environmental noise to interfere with a good copy, although some of the modes used with NBEMS are fairly robust against noisy environments.

There are a few ways to solve this, but they all involve either more equipment, more capable radios, or both.

If you’re using a Baofeng UV-5R or similar HT, you could use an audio interface cable such as the BTECH APRS-K1. This cable is usually used for APRS, but it does work for AndFLmsg. One end plugs into the Kenwood connector socket on the radio, and the other connects into your phone with a 3.5mm TRRS connector. If your phone does not have a 3.5mm audio jack, it may be possible to use a USB-C to 3.5mm adapter, but it seems like a lot of people have trouble with this. Besides, that’s a lot of cables and connectors at that point.

Speaking of a lot of cables, you could also use a sound card interface such as the Digirig Mobile, the Wolphi Link, or possibly the EasyDigi if you want a more DIY option. It’s similar to the APRS cable, except that it’s more modular and can be used between various devices and radios, provided you have the right cables to go between them.

The downside to the BTECH APRS K-1 cable is that you either still have to manually push the PTT button, or you have to put the radio into VOX mode. This means that the PTT is triggered by audio rather than by pressing the button. This can cause the beginnings of messages to be cut off, or (in my experience) cause the radio to overheat and kill the battery, or it may completely fail to trigger the PTT at all. The other issue – and Baofeng radios are notorious for this – is that the VOX circuit may be quite laggy, which might cause the first part of a message to be cut off. To overcome this, it may be a good idea to start a message with some junk data, such as a bunch of zeros or just jumbled letters, in order to give the VOX circuit the split second it needs to activate the PTT.

Audio interfaces such as the Digirig shouldn’t give you this problem, as they are able to send the RTS signal to the radio, which activates the PTT much like a radio with built-in CAT control would be able to do.

As of this writing, it seems that the Mobilinkd TNC3 does not work with AndFLmsg.

AndFLmsg is based on a more feature rich suite of free and open source programs called FLdigi. AndFLmsg basically consists of FLmsg and FLwrap. The full desktop version can be a little more complicated to set up, but FLmsg and AndFLmsg are capable of talking to each other.

Sending text

The first thing AndFlmsg shows you is a simple screen that looks like a chat interface. A mostly empty screen with a text field at the bottom where you type the message to be sent. For quick, informal messages that need to be sent from one person to another, this is perfectly acceptable.

However, AndFlmsg also supports forms. These are pre-formatted XML files, often made for particular organizational purposes. The most common form is the ICS-213 “General Message” form. (It is also possible to create custom forms, but that’s beyond the scope of this post.)

It takes about 3 minutes to send the text of John Brown’s last speech using a mode called MT63-2000L. With the BPSK31 mode, it takes almost 11 minutes to send the same text. AndFlmsg supports dozens of different modes that have varying levels of robustness, and transmit at various speeds. You’ll want to research the different modes and decide which is most appropriate for your group in any given situation. Take into consideration the length of the messages you’re likely to be sending back and forth, how long you can sit in one place waiting for a message to be transmitted, as well as both audible and RF interference in your local environment that you’ll have to deal with.

Sending images

To send and image in AndFlmsg, go to the Compose View and scroll down to select the “picture.html” form. Fill out the form, and attach your picture. Tap “save to outbox” and it will take you to the Outbox view. Select your message, and then tap “TX OVER RADIO”. The encoded message will begin to transmit.

When sending images which contain text using AndFlmsg, we have observed that rotating the image 90° so that the text is vertical makes the decoded transmission 100% more legible. However, sending images with text should probably not be your primary purpose for using this system. It could be useful to send images of injuries, an area affected by flood or fire, the face of a missing person, maps, or aerial photographs for instance – in other words, things which can only be effectively expressed through images. It took more than 3 minutes to send the black and white images above.

Sending text is bound to be faster, more efficient, and less prone to error than sending images, at least in most cases we can think of.



Send text messages via email – over ham radio

SMS messages via Winlink email

You ever email someone about something really important? Why? You know they’re not going to read that, right? The signal to noise ratio of email is so unbelievably low that the vast majority of people rarely if ever check their inbox. Text messaging is how you generally get a hold of someone quickly.

But if you’re in a situation in which, as we’ve proposed before, your local area is cut off from cell phone and internet access – and worse yet, you are out of range of an APRS digipeater, meaning SMSGTE is inaccessible- there is yet another way for you to send an SMS text message using ham radio, this time using HF and Winlink.

It’s possible that you have stumbled across a feature provided by your cell carrier accidentally. Your phone number has an email address associated with it.

Most likely it’s something like 555012345@tmomail.com or whatever domain your carrier uses. Here’s an incomplete list.

It may go without saying that you need to know the recipient’s cell carrier ahead of time in order for the message to be sent. It is necessary to plan ahead a little.

When you send an email to an address like this, the email shows up as an SMS message for the recipient. The recipient can then reply to the message as if it was a normal SMS text message.

But there may be a hitch. When you *receive* a message from a phone number, it may not be a plaintext message. Some cell providers format the messages with HTML and attach a few images and logos just to be jerks. When you’re using a 1200 Baud connection over VHF, or even 300 Baud over HF, it is difficult to overstate how LONG it takes to download these unnecessary attachments, not to mention the poorly formatted HTML message. It can take so long to receive these messages that the connection to the RMS gateway being used may time out to relieve congestion. This system is for emergency use, after all.

For this reason, it would be best to primarily use this as a one-way communication technique, e.g. to notify your loved ones, affinity groups, journalists or lawyers of what’s happening.

It would be a good idea to append such a message with something like “Due to low bandwidth conditions, please do not reply via SMS. Send an email from [known, accepted email address] instead.”

The email address must be in the “accept” list.

To add an email address to your Winlink “accept” list, send an email message to that address via Winlink ahead of time, or send your message to the contact’s known email address at the same time. Keep in mind that it may take several minutes to send an email. Sending the same email to 2 addresses doubles that time because you’re sending the same message twice.

If you need to send a message to several people, it may be possible to set up an email list. This saves your radio from sending the same message several times over at 300 or 1200 Baud. Riseup.net runs a good email listserv. You do not need a riseup.net account to use it.

APRS idea for protests

We know that police and the State can shut down cell towers at any time, basically by asking the telecom companies nicely to “pretty please turn the tower off because there’s an emergency”. We also know that not every protest takes place in an urban setting with cell and Internet service on every block. At pipeline protests, railway blockades, and forest occupations, cell service can be anywhere from spotty to non-existent.

Burning cell tower

With ham radio and APRS, it is possible to get a message out to people who need to know what’s happening when you’re in the digital dark. The best part about this technique is that the people you contact basically don’t need to know *anything* about ham radio.

You need:

1. a valid call sign (sorry pirates, sometimes that’s just how it goes.) (UPDATE: I actually tried setting up APRSdroid with a fake call sign, and NOT entering an APRS-IS password, and it seems to have worked fine. I did not transmit over RF. Tired old reminder that illegal things are illegal, own risk, etc.)

2. a device with Internet access, and a device capable of sending and receiving SMS text messages.

3. Important phone numbers. National Lawyers Guild, outside support team, a friendly reporter, your mom, etc. You’ll be adding these as “aliases” later on.

4. a VHF radio with APRS capability. This can be:

-A Baofeng or other basic HT, an Android phone or tablet with APRSdroid installed, and an APRS cable.

-A Baofeng or other basic HT, Android phone with APRSdroid installed, and a Modem/TNC such as the Mobilinkd. (There are options for iOS, but I don’t know what they are)

-A VHF transceiver with APRS built in, such as the Yaesu FT-3DR, the Yaesu FTM-400, or the Radioddity GD-AT10G.

How to get set up

1. Get APRS working. You can start with APRSdroid using the APRS-IS service in order to avoid transmitting your phone number on the air for no reason, and for the sake of using a stable Internet connection rather than RF. It’s up to you. However, once this process is all done, MAKE SURE you can actually send and receive packets VIA YOUR RADIO (not the Internet. [I made this mistake.])

2. Send a message (any message) to the “SMS gateway” service by entering in the callsign SMSGTE. The message format should be “@5551611312 some message”. Use your phone number, or a number you don’t mind being associated with you for a while. You have to do this at least once.

(Note that you can actually stop here and use the SMSGTE service without registering, but the following steps will add a little tiny bit of privacy, at least against anyone within RF range listening to APRS traffic, or watching a site like https://aprs.fi. And by itself, this is still useful. If a comrade really needs to get a message to their partner or family member for example, you could let them borrow your device, type in the phone number and message and hit ‘send’. They do have to know the number, or be able to find it in their contacts.)

3. Go to https://SMSGTE.org and create an account. Follow their instructions, as part of the registration process involves sending at least one APRS message.

4. At the top of the page, go to ‘User Tools’ and ‘Alias Manager’. You should see an empty list with “Name, Number, SSID” at the top. SSID isn’t necessary, but will make it easier to manage multiple conversations in your chosen APRS interface.

Example entries:

Alias Number SSID
NLG 5551611312 LG
MyCrew 6667654321 MC
Mom 5551234567 MA
TeenVogue 1234567890 TV

Doing all this allows you to save contacts and conversations as distinct message threads. So when you want to send a message to the NLG phone number, you can send it in one of two ways:

With just the Alias,

Callsign: SMSGTE
Message: @NLG My name is X, we're at Y, some of my friends have been arrested. Please send help.

or with the SSID

Callsign: SMSGTE-LG
Message: My name is X, we're at Y, some of my friends have been arrested. Please send help.
Receiving SMS messages via APRS.

When someone receives a text message from the SMSGTE service, it will look like

@[CALLSIGN-7] message

If the person you sent the message to wants to reply, they *must* begin the message with your callsign and SSID such as “@[CALLSIGN-7]” otherwise it will just go straight to the SMSGTE number and never be transmitted back to you.

@[CALLSIGN-7] reply
Pros and Cons

1. APRS is basically GPS. Even though the “P” stands for “Packet”, it’s often referred to as the “Automated Position Reporting System”. As such, most APRS devices periodically beacon out your GPS location while it’s running. This includes APRSdroid. Radios with APRS built in may be set up differently and have different options. To mitigate privacy concerns, APRSdroid has a GPS ambiguity setting, which in my experience has abstracted my position by as much as 34 miles from my actual location. so that’s…something.

2. APRS would be good for coordinating logistics that are legal, like water, food, first aid, legal observers, and media. It is extremely important to understand that these messages are sent in the clear, and over the airwaves, AND over the Internet, AND through unencrypted SMS messages. So this is very much a technique to use when the grid is down and you have an emergency.

3. APRS being useful is still reliant on beacons that are run by volunteers. There is no guarantee that wherever you go, there will be an APRS Igate that’s running and within RF range. Remember that getting your antenna as high up as possible will help you get out farther. Raise your radio up over your head, stand on top of a car, climb a tree. Do whatever you have to to get the signal out.

4. If you are within RF range of an APRS beacon, it’s possible that you will be able to *send* SMS messages, but not receive them. Unfortunately some Igates only *receive* and do not transmit.

5. while SMSGTE is automated, it is also a *service* that is run by *human* *volunteers* who can forget to pay the phone, server, or electric bill, or trip over a power cord, or get struck by lightning or any number of other things, just like anybody else. This service is correspondingly vulnerable. It’s pretty robust, but it’s not bulletproof. Hardly anything is. https://SMSGTE.org has a donation link near the top of the page.

Videos about SMSGTE:

Videos abot APRS more generally

NVIS propagation to circumvent jamming and direction finding

Before the bombs started dropping on Ukraine, I was trying to write something about the ban on ham radio there.  Now I’ll do the same thing, but not try to be clever or funny about it. I don’t know that this information will be particularly useful to the people of Ukraine *right now*, but it might come in handy for any of us later on.  
There are essentially two ways a ban on ham radio can be enforced.  

1. Jamming: basically, jamming is the deliberate interference of a radio signal by transmitting on the same frequency as the target signal, usually at a higher power. So, if you are transmitting at 5 watts, a 6 watt signal on the same frequency would drown you out. Or even a 1 watt transmitter if it is very close to the receiver. This is especially easy on FM due to a phenomenon called the “capture effect”.  

We saw the use of jamming a few months ago when the Cuban government used powerful transmitters to block signals on the 40 meter band which is used for long distance communication.  


2. RF direction finding: in movies and TV shows they often call this “triangulation” and it’s a real thing. If you’re on VHF/UHF your antenna most likely transmits in an omnidirectional radiation pattern, meaning your signal travels roughly the same distance in any direction. The signal is strongest at the source – near the antenna – and gets weaker as you get farther away. An attacker can find the source of your signal by the use of one or more *directional* antennas. These are antennas that have a more focused RF radiation pattern for both transmission and *reception*. Two common types of directional antennas are the Yagi-Uda antenna (featuring a large pole with a handful of smaller perpendicular bars) and the more well known satellite dish. The attacker would sweep an area, swinging the antenna in different directions to find out where the signal is strongest.   

An attacker can, of course, jam a signal using these directional antennas. However, they may be just as likely to send someone over to find the source of the transmission and shut it down themselves.  
If an attacker is jamming these line-of-sight radio frequencies, you are probably a bit stuck.  
Assuming the jammer is only working on a narrow portion of the spectrum, you can try switching to a different frequency. Coordinate with your affinity group beforehand to select contingency frequencies.  
If the attacker is jamming on a huge chunk of frequency space, your only options are to switch to higher power, or switch to a different band.  
It might be possible to get a signal out using different modes of operation such as CW (Morse Code) or weak signal digital modes such as JS8Call. The narrow-banded nature and other properties of CW make it easy for human ears to pick out of the noise and decipher. Weak signal digital modes like JS8Call can be decoded deep into the noise floor. 
Neither of these options are *guaranteed* to be immune to jamming. It’ll depend on the situation. The only way to try is by experimentation.  
Near Vertical Incidence Skywave propagation is a technique for HF radio comms that involves *lowering* your antenna, generally to between 1/4 and 1/10 of a wavelength off the ground.  


Diagram comparing NVIS propagation to “DX” or normal skywave propagation.
To clarify: under normal circumstances, the ideal height of an HF antenna should be 1/2 wavelength above the ground. So if you’re on the 40 meter band (~7MHz), set it 20 meters up. 20 meter band (~14MHz), 10 meters up, etc. Antenna science is complicated, and there are many exceptions to this, but it’s a general rule of thumb. This allows your signal to radiate *outward* toward the horizon as much as possible, where it can reflect off the ionosphere once again beyond the horizon.  
If you’re doing NVIS on 40 meters, you would want a *horizontal* dipole between 4 meters and 10 meters off the ground. For 20 meter NVIS, you would want your antenna to be between 2 meters and 5 meters off the ground.  
By setting your antenna *lower* to the ground, you do the opposite. You are trying to make sure that as much energy as possible is directed skyward. Hence “Near Vertical Incidence Skywave”. This technique gets your signal
 out farther than line-of-sight (VHF/UHF), but for shorter distances than normal HF propagation. It can also be used to get a signal over mountainous, or possibly militarized, terrain.  
Direction finding is also more difficult with NVIS because in a way, you are using the earth as part of a directional antenna, which means an attacker’s *directional* antenna is going to have a tough time figuring out which direction a signal is coming from, as you no longer have an omnidirectional signal.
NVIS antenna videos

Ham radio for Anarchists