My TAPR DCC 2018 Paper/Presentation

Since it’s not yet up on TAPR’s site, I’ll post it here as well. When they’re put up on TAPR’s site, I’ll post the links there as well. Also, there should eventually a video of the talks.


Semtech’s LoRa transceiver products, based off Chirp Spread Spectrum (CSS) modulation, provide high receive sensitivity for low-power, Internet-of-Things (IoT) devices. While Semtech’s LoRa transceivers are designed to provide Line-of-Sight (LoS) ranges of several miles with modest radio hardware (i.e., small duck antennas, and 25-100mW Tx power levels), the high receive sensitivity (up to -138dBm or more) of a LoRa transceiver allows for leveraging common VHF+ DX techniques to achieve ranges beyond radio line-of-sight. By using higher power levels (5W/37dBm or more), high gain antennas (14.8dBi base station Yagi, 12.4dBi mobile Yagi), and horizontal polarization, it is possible to achieve Beyond Line-of-Sight (BLoS) packet radio communications using LoRa on the 70cm band. This paper will discuss digital communications using the LoRa waveform, how BLoS communication is achieved at VHF+ frequencies, the experimental setup used in this paper, and the real-world test results. To the best of the author’s knowledge, the 218km LoRa ground-based LoRa communications distance discussed in this paper is the longest ground-based (ground station-to-ground station) LoRa communication on record.

Link to presentation: TAPR 2018 — Dan Fay KG5VBY

Link to paper: Dan Fay — LoRa BLoS TAPR DCC 2018



HopeRF Breakout Board

So I decided to try my hand at making a simple PCB, with the goal of eventually developing some more complicated boards. For my board, I decided to modify this Adafruit design. The original Adafruit design is a breakout board that contains a HopeRF 69/95/98 RF module, along with a 5V->3.3V regulator and 5V->3.3V level shifters. Since the LoRa design I am currently working on operates at 3.3V, I decided to modify the design to remove the level shifters and regulator so that the board is simply a “breakout board”. Having this breakout board allows me to attach header pins to the board so that I can plug it into a breadboard.

Designing (actually modifying) the Board

So…to start, I downloaded the Eagle files provided by Adafruit, and imported them into KiCAD. The project imported without issue. I removed the regulator and level shifter from the schematic to get the simplified schematic below.

Breakout SchematicIt winds up being a pretty simple schematic, which is great for me just trying to understand the process of getting a PCB made. To get the final layout, I had to simplify/redo the traces, and wound up with the below layout (the left image is the top of the board and the right image is bottom of the board).

And just for fun, KiCAD provides a 3D rendering of your board. There’s a “regular” rendering:

Non-Raytraced Rendering

and nicer-but slower ray-traced rendering:

Raytraced Rendering

Getting the Board Made

What now? PCB houses take a series of plotter files, typically called “Gerber” files, to describe the board. These plotter files describe different components of the board, such as the copper layers, the silkscreen (i.e., the printed letters and graphics), and the soldermask (where the top and bottom of the board shouldn’t have the final insulating epoxy coating). There’s also a drill file, which describes where and what size to drill the different holes in the PCB.

I decided to have PCBWay do the fabrication. The main deciding factors were cost (a run of 10 simple boards can be fabricated for $11 including shipping and payment processing fees), a site that appeared friendly to Makers/DIY/amateurs, and decent reviews for them on the Internet. Getting the board fabricated from them was fairly straightforward: I uploaded a zip file containing the Gerbers and the drill file and put in my shipping address and payment information. They claimed to do some verification of the design to make sure it met their design rules, and once that was done, they began fabricating the board.

Roughly two weeks later (I paid an extra dollar for ePacket shipping, bringing my total up to $12), I received my boards.

Looking more closely at an individual board, the results look pretty good. The traces and silkscreening are clean, and the pads/vias are well-defined. Note that, however, the pads are somewhat uneven. While this isn’t an issue for what I’m doing, it might cause issues with other designs.


Final Assembly

Now it’s time to make it into a usable breakout board! Step one: solder header pins. I find it easier to get the pins straight if I put them in a solderless breadboard first.


Step two: solder the HopeRF module to the PCB.


All done! While my castellated-hole soldering game could use some work, the connections tested out good. Now, it’s time to integrate it into my LoRa mesh network node prototype:



Below are links to the KiCAD project and the final Gerbers sent to PCBWay.

KiCAD Files

Gerbers, as sent to PCBWay

PCB Design Fun with KiCAD

So…I’ve been working on a LoRa-based mesh network using a synchronized flooded mesh protocol (I’ll go into more details about it in a future post). This is a board design I’ve been working on to implement. It’s a two-sided board that’s exactly 100mm x 100mm (this is the largest size that PCBWay will do for $5 for 10 boards). KiCAD, BTW, is a FOSS PCB design tool. So far I’ve been pretty happy with it for designing at least simple PCBs.

Key Components:

  1. STM32 “Blue Pill” board (two rows of horizontal pins) — the brains of this operation.
  2. 16×2 LCD Display — provides a basic text output while the thing’s running.
  3. 6 LEDs — Most likely will be used to provide live activity like packet Rx/Tx, and hop count.
  4. HopeRF 98W (vertical rows of pads on center-right) — the LoRa module. Only provides a maximum power output of 20dBm, but that should be adequate for mesh node testing.
  5. Linear voltage regulator (lower left) — converts 5V to 3.3V for most of the electronics.
  6. I2C EEPROM (Upper right 8-pin DIP) — nonvolatile storage of settings and statistics.

Renderings of the Board in KiCAD

A 3D rendering of the what the board would look like:


Another BLoS LoRa Test

In preparation for presenting at ARRL/TAPR’s DCC in two weeks, I did another Socorro-area run today to get some test results using the 25w transmit power and the double-stacked halo antenna. The results aren’t particularly surprising: the added link budget enabled by the higher transmit power allows for receiving from more locations.

Below are some pictures from the test run. The first picture is of my helpers:


A picture of the horizon where I believe there’s troposcatter-based propagation:


A picture of the double-stack halo antenna that was used to get the mobile results:


Is LoRa Well-Suited for Flooded Mesh Networking?

Check out this paper, because it suggests that the answer is “yes”:

Multi-Hop LoRa Networks Enabled by Concurrent Transmission

I’ve been starting to explore the idea of developing a LoRa-based synchronized, flooded mesh network. What makes a synchronized, flooded network appealing over other types of mesh networks?

  1. Flooded mesh network nodes can be “dumb” in the sense that each node needs only to re-transmit a frame it sees. There’s no need for building routing tables or even having any comprehension whatsoever of what nodes are around you. All you do is, if you hear a packet, you re-transmit it. As a result, it’s easy for stations to quickly join and leave the mesh network.
  2. Synchronized, flooded networks should be well-suited for real-time traffic, like voice. Combined with a low datarate vocoder like Codec2 (Codec2 supports bit rates as low as 700bps), a synchronized, flooded, LoRa-based mesh network using Codec2 should be possible.

If you combine #1 and #2, you can see how this might serve as a good replacement for analog VHF/UHF FM voice in amateur radio. A simple, easy-to-join/leave mesh network that’s well-suited for voice-quality audio can provide the simplicity of analog FM voice with the improved coverage that a mesh network provides. Repeaters are simpler, too: instead of needing two separated antennas or a costly, bulky cavity duplexer, the repeater can just be another ordinary radio with perhaps a better antenna and/or more transmit power.

A known problem with flooded mesh networks are collisions: when a set of “flooded” nodes re-transmits, the nodes all collide with each other and can interfere. A synchronized flooded mesh attempts to mitigate this issue by having all nodes re-transmit at exactly the same time. If synchronized precisely enough, the combined transmits look like multi-path waves. While multi-path often results in fading, in some cases techniques such as antenna diversity and advanced signal processing can use multi-path advantageously.

The above paper is exciting because it shows that LoRa is resistant to many of the issues facing synchronized flooded mesh networks. The paper shows that in general, the capture effect enjoyed by frequency-modulated signals occurs with LoRa, where the receiver naturally locks onto the strongest signal it hears. Another finding of the paper is that the re-transmitting nodes need not be closely synchronized; in fact, performance improves if the nodes do not re-transmit at exactly the same time. This fact makes implementation a lot easier, as timing inaccuracies are actually a Good Thing(TM).


Review of the BTech AMP-U25D Amplifier


The BTech AMP-U25D is an affordable amplifier for increasing the power output of both lower-power analog and digital communications. It offers good performance and reasonable efficiency (40-50%). A surprising and exciting result is that the amplifier outputs 25w with a 1w input, which enables the amplifier to amplify common 1w packet radio modules.


Starting this spring (roughly March 2018), BTech (a US company that’s a major importer of Baofeng radios) began shipping a power amplifier for 2m, 1.25m, and 70cm Handheld Transceivers (HT’s). The ostensible purpose of this amplifier is to allow an HT to function as a substitute for a mobile rig. To this effect, the amplifier provides features making it behave like a mobile rig, such as providing a microphone port and having a 4W speaker on the unit. The overall product line purports to take a 2-6w signal from an HT and amplify it to 30-40w. All of the amplifiers are designed for constant-envelope modulation schemes like analog FM and digital FSK.
There are five different variants of the BTech AMP series. Different models support different key frequency bands — 2m, 1.25m, and 70cm. Moreover, the 2m and 70cm amplifiers come in two versions, one version designed for non-TDMA frequency-based modulation standards, and another amplifier designed to support Time Division Multiple Access (TDMA)-based standards like DMR. The TDMA-friendly amplifiers are designed to rapidly switch on and off in response to the fast on/off cycling inherent to TDMA.
While these amplifiers are marketed to boost the transmit power of HT’s and make them work like a mobile rig, they also have a lot of potential for boosting the power of different IoT-oriented packet radio devices. Generally, low bitrate packet radio devices operating in the 70cm band use some sort of frequency-modulated, constant-envelope scheme like FSK or LoRa. As a result, they should be well-suited for amplification with these amplifiers. IoT packet radio systems also need to be able to switch quickly from transmitting a packet to receiving packets. As a result, the TDMA-friendly amplifier is likely the best choice for amplifying these transceivers.
Reviewed in this post is one model of the BTech AMP series, the AMP-U25D. The AMP-U25D is the 70cm model that supports TDMA. This particular model was chosen because I intend to use this amplifier to boost the transmit power of a LoRa transceiver running at 433MHz.


First, let’s start with the unboxing! First, I tried ordering it from Amazon. The first time, they sent me the 2m version, and then, when I tried to reorder the amplifier, the page no longer existed. After that, I successfully ordered it off of BTech’s website for $104.89.
There’s definitely some ambiguity as to what the actual power output of this amplifier is, as the different unboxing photos show. Besides that, the materials supplied are fairly straightforward. There’s the amplifier, at push-to-talk speaker/microphone, and some cables.

Measuring Power Output

Next, I attempt to measure the output power of the amplifier. With the medium power setting of the Baofeng F8HP HT, it’s apparently outputting around 35w.


At the F8HP’s low output (roughly 1W), the amplifier outputs approximately 25w. This is actually a really exciting result, as there are many packet radio modules made by companies such as HopeRF that can output at a maximum of 1w. As a result, this amplifier can be used by 1w RF modules to boost their output to 25w.

Power Consumption

Next, it’s time to measure the power consumption of the amplifier. For all of these tests, the amplifier is being fed 13.8V. For the low power result (roughly 1w in, roughly 25w out), the amplifier pulls 4.45A of current, or 61.41w. For the medium power result (roughly 4w in, roughly 35w out), the amplifier consumes 5.31A, or 73.28w. Efficiency-wise, the amplifier is approximately 41% efficient when 1w is fed into it, and approximately 48% efficient when 4w is fed into it. This result suggests that sub-2w inputs take the amplifier out of saturation and into a more linear region. Potentially-interesting future work would be to study this amplifier’s output when fed with sub-1w inputs, and also to characterize the amplifier’s linearity when sub-2w inputs are fed into it.

Using the AMP-U25D with Packet Radio

Fed with a 1w input, the AMP-U25D was used to set the ground-based LoRa distance record, with the AMP-U25D being used to amplify the base station’s power output. The photo on the left shows the amplifier setup inside the case. The photo on the right shows the skin temperature after a full day of transmitting while sitting on the top of the roof of the patio of my house during an Albuquerque, NM summer afternoon/evening.





Long Distance LoRa: What I’m Trying to Do


Around 2013-2014, Semtech released a line of RF transceivers that supported a new type of modulation: LoRa, short for “Long Range”. Based on a type myof spread spectrum called Chirp Spread Spectrum (CSS), this modulation technique promises much higher receive sensitivity than other transceivers that use various types of Frequency Shift Keying (FSK, GFSK, MSK, etc.). While LoRa is primarily designed to allow ranges of several miles using small, battery-powered devices, one can easily imagine pushing the range further with more capable equipment, such as higher power levels, higher antenna gain, etc.

Trying to Set a World Record

I’m trying to break the world record for ground-based LoRa communications, i.e., where both the transmitter are on the ground. I’m trying to do this by applying various techniques used by amateur radio operators to achieve long distance, Beyond Line-of-Sight (BLoS) communications. By increasing the power level, using high gain antennas, and possibly even using a better receive amplifier, I hope to be able to break the ground-based LoRa distance record.

LoRa Distance Records

Below are the three LoRa distance records that I’ve been able to find.

  1. Andreas Spiess — Spiess set the current ground-based LoRa record of 201km. He achieved this by hiking to the top of a large mountain in the Alps and contacted a Things Network gateway on top of another mountain.
  2. High Altitude Balloon — A Things Network station received a LoRaWAN packet from a high altitude balloon 702km away.
  3. Geosynchronous satellite communication — A group is employing the LoRa waveform to provide satellite-based IoT communications in the Ku band via a geosynchronous satellite.


The current ground-based LoRa record was a Line-of-Sight (LoS) communications that involved communicating between two mountaintops. Normally, at VHF and higher frequencies (the recordholder used LoRa communications) at 868MHz, RF communication is limited to Line-of-Sight with perhaps an additional 33% range due to the radio waves curving around the Earth somewhat.
While it is normally the case that LoS is the limitation, there are two propagation methods that can overcome this limitation: diffraction and troposcatter. Diffraction involves radio waves diffracting around terrain features like hills, while troposcatter involves small amounts of radio waves scattering off of irregularities in the composition of the upper troposphere. Generally, shorter distances (roughly 20-50mi) involve mainly diffraction, while longer distances involve troposcatter.
There’s a catch, however: both of these propagation methods experience large path losses, so they’re generally not very useful when using typical VHF+ radio equipment. Typically, to communicate using these propagation methods, one needs a combination of high power, high antenna gain, and a modulation technique that does not require a high signal-to-noise ratio (SNR), such as SSB, CW, one of the WSJT-X weak signal digital modes, etc. Generally, the path losses are at least 150-170dB.
With LoRa at 433MHz and at a bitrate of 300bps, the receive sensitivity is supposed to be -138dBm. With a transmit antenna gain of ~15dB, a receive antenna gain of ~10dB, and a transmit power of ~44dBm, the total link budget becomes ~207dB. A link budget like that should make troposcatter communications possible, with some margin to spare for different losses and flaws in the radio system. These losses include features like trees and obstructions like hills and mesas blocking a good view of the horizon, antenna flaws, mismatch losses, and feedline losses.

And that’s mostly it. So far, some early results show that diffraction and troposcatter do work with LoRa on the 70cm amateur radio band. Future experiments, with improved, refined equipment, should hopefully be able to break the ground-based LoRa world record.

Other things/potential future work

Demonstrating the ability to implement packet radio communications over fairly long distances (as in tens of miles) opens up some interesting possibilities. One potential use that I find interesting is the potential for creating a wide-area mesh network. Since LoRa links can communicate over fairly long distances, it should be possible to have relatively sparse mesh networks with nodes spread far apart. Such sparse networks would make it fairly easy to stand up a citywide (or even statewide) mesh network with a few interested makers/hams. Similarly, LoRa could be used to provide long-distance backbone communications between APRS digipeaters.

Another potentially interesting product is that Semtech released roughly a 2.4GHz LoRa transceiver line roughly a year ago. The maximum receive sensitivity appears to be -132dBm, at a datarate of roughly 600bps. Amplifiers for 2.4 GHz are fairly easy to find, and there exist very high gain dish antennas (24dBi+) that could provide sufficient link budget for diffraction/troposcatter.