
Show HN: A new protocol for packet radio including ECDSA and compression - braxxox
https://github.com/brannondorsey/chattervox
======
ysleepy
Maybe messages should include a coarse timestamp to prevent replay of old
messages by some adversary.

Someone could resend a month old "yes" with your valid signature to a question
someone asks now.

Also it might be beneficial to include sequence numbers or message IDs and for
example echo the last 4 ids in following messages so recipients can detect
holes. - The chat could insert some placeholder to notify recipients of
missing previous messages.

~~~
jenkstom
This is a really great idea. Might be a good github issue to open?

~~~
boramalper
I've opened one lest it gets forgotten:
[https://github.com/brannondorsey/chattervox/issues/10](https://github.com/brannondorsey/chattervox/issues/10)

~~~
braxxox
I've opened an RFC for this issue and welcome comments here:
[https://github.com/brannondorsey/chattervox/issues/19](https://github.com/brannondorsey/chattervox/issues/19)

------
vvanders
Does this do any sort of FEC? One of the things that makes stuff like this
tricky(and APRS in general) is that one flipped bit throws off the whole
decode.

From what I've seen out there would be a 40% improvement[1] in just base APRS
if there was some form of basic FEC built into the protocol. Sadly most of
"state of the art" is stuck back in the 80s.

[1]
[http://eludium.stensat.org/mcguire/projects/FX-25/FX-25_perf...](http://eludium.stensat.org/mcguire/projects/FX-25/FX-25_performance.htm)

~~~
aidenn0
Does AFSK imply the use more than two frequencies? Using 4 or 8 frequencies
and trellis modulating should get significant gain (i.e. using 4 frequencies
and trellis modulating 1 bit per chip should be more robust than using just 2
frequencies).

~~~
someguydave
AFSK, as used in amateur radio modems today, uses the Bell 202 modem standard,
which is 2-ary FSK
[https://en.wikipedia.org/wiki/Bell_202_modem](https://en.wikipedia.org/wiki/Bell_202_modem)

Unfortunately, most folks on the VHF/UHF bands use FM radios with pre-emphasis
and de-emphasis circuitry, so you would need to design a waveform that deals
with those challenges.

~~~
Evidlo
Also known as binary frequency shift keying (BFSK).

------
hfdgiutdryg
_An AX.25 packet radio chat protocol with support for digital signatures and
binary compression. Like IRC over radio waves_

I just wanted to say thank you for such a concise, _clear_ summary. So many
projects get posted with cryptic descriptions full of insider terms.

~~~
braxxox
Thanks mate! I appreciate that. I was looking for a way to describe it that
seemed as down to earth as possible. Actually I was trying to go for that with
most of the documentation so far (and what will be coming). It's not always so
easy with stuff this technical but it's good to hear it's working for some
people.

------
Cyph0n
Cool project! I have always been interested in the amateur radio scene.

So encrypting amateur radio comms is illegal in the US? Is there a particular
reason for this?

~~~
emptybits
It's also illegal in Canada.

With amateur radio "dying" as an interesting hobby (my opinion, but widely
held) it is often speculated that if encryption was permitted in amateur radio
communications, there would be quite a resurgence in interest. I predict a new
generation would start to pick up the hobby and find untold uses (and abuses)
for it.

~~~
brians
There are more hams in the US, and more active hams, than ever before. That's
a funny sort of dying!

Joe Taylor's work on below-the-noise signal extraction has revitalized
shortwave:
[https://physics.princeton.edu/pulsar/k1jt/wsjtx.html](https://physics.princeton.edu/pulsar/k1jt/wsjtx.html)
, particularly at the nadir of the sunspot cycle. That's a funny sort of
dying!

Amateur satellites are accessible for $100 in parts:
[https://www.n2yo.com/satellites/?c=18](https://www.n2yo.com/satellites/?c=18)
; with the same parts and some practice and luck you can talk to the space
station. That's cool for anyone but especially cool for students; NASA will do
more amateur radio work in 2018 than in any previous year. That's a funny sort
of dying!

If encryption were permitted on amateur bands, I'd expect to see
commercialization right quick—along the same lines as the PACTOR modems
embraced by the long-duration recreational sailing community:
[https://www.cruisingworld.com/staying-connected-at-
sea](https://www.cruisingworld.com/staying-connected-at-sea)

~~~
trothamel
Is there a good description of what those $100 in parts for satellite work
are? Or better yet, something purchasable that's likely to work? I've been
wanting to get into it, but I've never found a really accessible guide to
getting started in satellite communication.

~~~
brians
Sure! To talk to a satellite you need an antenna, a receiver, a transmitter,
and maybe a computer—not for voice, but for text modes.

Arrow will sell you a great antenna:
[http://www.arrowantennas.com/arrowii/146-437.html](http://www.arrowantennas.com/arrowii/146-437.html)
, or you can google "tape measure yagi" and build an okay antenna.

Then you can get the transmitter and receiver together, in a package like the
regrettable BaoFeng UV-5R: [https://www.amazon.com/BaoFeng-UV-5R-Dual-Radio-
Black/dp/B00...](https://www.amazon.com/BaoFeng-UV-5R-Dual-Radio-
Black/dp/B007H4VT7A) . This is a terrible radio. Their quality control is so
bad that you sometimes commit a federal offense by pressing the transmit
button—and for $100, you can't afford the test equipment to tell! So maybe use
it as the receiver in a two-radio setup, and transmit with something like a
Wouxun KG-UV9D.

A Kenwood TH-D72A is an excellent choice to do the transmitter and receiver
jobs, but hundreds of dollars. A Yaesu FT-60 is a great choice too, but it
won't have full duplex—so you can't be sure your signal is getting out without
help.

To _listen_ to a satellite you need even less: a crappy antenna and an RTL2832
USB software-designed radio:
[https://www.adafruit.com/product/1497](https://www.adafruit.com/product/1497)

For all of these, you'll end up wanting miscellaneous coaxial cable and a
bunch of ends. Hams tend to build up a library of crimpers and spare ends and
such, so look to borrow from a friend or a club as you get started. The 75 Ω
cable that's ubiquitous for television signals will _totally work_ , but
you'll have much less loss and much much less stress on components if you buy
50 Ω cable.

Why not try the tutorial at [https://www.rtl-sdr.com/rtl-sdr-tutorial-
receiving-noaa-weat...](https://www.rtl-sdr.com/rtl-sdr-tutorial-receiving-
noaa-weather-satellite-images/) ? If that works, you can expand from there:
the tutorial teaches you a huge amount about aiming at satellites and the
physical work necessary to capture signals from space.

~~~
trothamel
Thank you! This really comprehensive. I'll probably start with the NOAA
weather tutorial, and go from there.

------
leetbulb
> With amateur packet radio anyone can pretend to be anyone else. With
> Chattervox, you can be sure you're chatting with the person you intend to.

This is a great idea, for both the community and as a hobby project. Has there
been any other attempts at similar protocols for amateur radio?

~~~
moftz
You can run just about anything over AX.25 since it's just the data link layer
in the OSI model. You could run HTTP on top of IP on top of AX.25 with TLS/SSL
message encryption turned off so you don't run afoul of FCC rules. The
authentication would still be there but everything would be in the clear. You
could also run IPsec with just the authentication field in the header, no
encryption. Even if you didn't want to get that deep into the layers, you can
always just pgp sign your messages on packet radio. Depending on the signature
length, it could take several extra seconds to send the pgp signature at the
typical 1.2Kb/s!

Decreasing the complexity of the stack is a good move forward. The speeds of
packet radio require a custom protocol that limits overhead but leaves options
for authentication and message signing. Some hams have been using packet radio
at wifi frequencies which basically creates a wireless WAN with much higher
data rates, making any of the authentication methods much quicker.

~~~
mmirate
Wouldn't they need to significantly decrease the transmission power in order
to use the ISM bands, making that application more LAN than WAN? And if the
result is both legal and technologically superior to existing WiFi hardware
then why hasn't the IEEE picked up on it?

~~~
moftz
Oh, it's not better than normal wifi. It's just better than 1200 baud over VHF
or even 300 baud over HF. It's just typical wifi hardware hooked up to high
power amps and high gain antennas to get greater distance. People are adjust
the frequencies to the ham band and then running mesh networks. Part 97 allows
you to modify part 15 (normal wifi hardware) to put up to 10W out. 10W
frequency hopping spread spectrum links can go pretty far at GHz frequencies.

~~~
mmirate
That merely transforms my previous question into a question of why WiFi
routers+adapters with discrete antennae, don't also ship with 10W output and a
suitably-beefy electrical system to match.

------
mycall
I would love to another version of this using gnuradio and lime sdr mini (or
similar)

~~~
kam
This looks like it implements the packet processing only, and suggests using
Direwolf as a software AX.25 modem. Direwolf can decode audio piped from
rtl_fm or gqrx, so using a SDR is likely already possible for receive; not
sure about transmit.

~~~
mycall
Maybe the Direwolf source code can work via the python calls from gnuradio
itself.

------
Cieplak
If you every want to listen to ham packet radio in the US, tune your radio to
144.390 MHZ and it sounds like a modem :)

------
ChuckMcM
This is pretty neat, and its nice that I already have all the pre-reqs :-).
Although I'm wondering if I have to use the analog cable for the radio as I've
got the USB one, that will be a bit of investigation.

~~~
braxxox
After a bit of prodding I caved and bought an aux cable, but I've wondered the
same about the audio -> USB cable. It think it's FTDI so I think a clever
person might be able to figure it out. If you get anywhere with this let me
know!

------
howard941
Pretty neat. I like the ECDSA for remote control.

