HamShield: LoRa Edition Manual

Overview of HamShield: LoRa Edition

HamShield: LoRa Edition is a 440MHz digital wide band radio transceiver. It transmits at a full 1 watt (30dBm) power output across a wide range of frequencies. It supports the extremely popular IoT LoRa mode (Chirp Spread Spectrum), along with all major traditional modes such as FSK, GFSK, MSK, GMSK and OOK modulations from 1.2kbps to 300kbps. These modes are great for working satellites!

It features levelshifting for 5 volt Arduino as well as an interface for all Raspberry Pi models.

The transmitter is a Semtech SX1276 based LoRa transceiver coupled to a 30dBm amplifier. Both of the transceiver and amplifier are RF shielded inside a metal can module, thermally coupled to the PCB. The power amplifier can also be controlled in software.

Most importantly, the module is ran through a custom designed low pass filter, in order to meet and exceed FCC Part 94 regulations on harmonic and spurious emissions. Without this filter, it would not meet regulatory standards.

Since we meet and exceed FCC Part 94, this means we also meet and exceed CE and nearly every other regulatory requirements in the world.

This device is useful on the extremely popular 70cm / 440MHz amateur radio band, as well as the SRD433 unlicensed band. Keep in mind SRD433 has duty cycle requirements and emission limits that are lower than the amateur radio band (Typically 100mW).

Is LoRa Worth the Hype?

In our testing, it is well deserved. Using a modest bit rate such as approximately 3000 bits per second, and 1 watt in the 440MHz band, we have seen signal strengths as low as -130 dBm -- well below the noise floor. We can hit the mid -140 to -150 dBm's if we lower the bit rate a little bit more. This is absolutely insane, and allows for all sorts of wacky operations. This means extremely long range balloon telemetry, low power troposcatter and metorscatter experiments, ground level communication through miles of forest using rubber duck antennas (harder than it sounds!), future satellite communications, drone and mountain top digipeters, and more.

We are excited to see what you come up with! And help us all if someone puts a amplifier on one of these things!

What About LoRaWAN?

LoRaWAN is a lightweight, low bandwidth stack that uses the LoRa physical layer for IoT transactions. While Arduino and Raspberry Pi libraries and software can use HamShield: LoRa Edition hardware, we will be taking a slightly different approach to LoRa in order to accommodate the amateur radio community.

Warnings

⚠️ Operate only on frequencies you are licensed to use

⚠️ Always connect an antenna before powering HamShield: LoRa Edition

⚠️ Make sure the antenna is correct for the band you are operating on. Avoid bad SWR and poorly matched antennas

Connecting and Powering HamShield: LoRa Edition

You now have two options for getting connected:

Arduino Uno

Raspberry Pi

Arduino

Since the HamShield: LoRa Edition is SX1276 based, it is compatible with any LoRa radio library for the Arduino and Raspberry Pi. This being said, we have also forked a special version that targets the hardware directly (and related amplifier), provides sorely needed bug fixes for expert users, as well as adding amateur radio compliant features. And last, but not least, the extremely important digipeter functionality for APRS-like operations. The release date will be late January 2019.

In the meantime, there are a couple alternatives to our library that you can explore. Both have pros and cons. We highly recommend the LoRa or LoRaLib library until our library beta is in general release.

Radiohead is an extensive library that works with a large number of digital radio modules. It has a built in header and addressing system. While it is extremely functional, it has the following limitations to be aware of:

It only supports the LoRa mode of the SX1276 (and no FSK or OOK modes), and only hardcoded LoRa modes

It has a built in packet address system that some people find annoying

The channel available (CAD) function does not work properly

Not available in Arduino Library Manager, must be installed manually

The LoRa library, however, is available within the Arduino Library Manager, and was developed for the SX1276 directly:

Supports full configuration of the LoRa parameters

Transceives raw packets

Lacks amateur radio functionality

Available in Arduino library manager

With LoRaLib, in addition to the standard LoRa modes, and all the related configuration options, you also gain access to FSK modes.

Supports full configuration of the LoRa parameters

Supports full configuration of the FSK modes

Does not support OOK modes

Available in Arduino library manager

Important Note: You will need to make use of this reset code BEFORE you initialize your LoRa library. Insert this right above the RadioHead init:

Soldering HamShield: LoRa Edition Headers

While the HamShield: LoRa Edition supports both Raspberry Pi and Arduino, you will want to pick which option before you solder in headers. While the Raspberry Pi Zero and Zero W will fit with both styles of headers soldered up, you will have problems fitting the Arduino Uno with Raspberry Pi headers soldered.

A tutorial is in progress to provide instructions on this soldering process.

Soldering HamShield: LoRa Edition SMA Connector

You will need to also solder the SMA connector on this kit. We have a great tutorial on this for HamShield if you need help. It is actually quite easy.

Powering HamShield: LoRa Edition

While it is recommended that an external DC power supply be connected for Arduino operation, we have found that low duty cycle transmissions work just fine with the built in power supply. If you experience power resets during high powered transmissions, you will need an external power supply.

The Raspberry Pi should also have a proper power supply connected that can supply enough power to run the Raspberry Pi along with HamShield: LoRa Edition

Accessing Additional GPIO on Semtech SX1276

We have broken out D0-D5 on HamShield: LoRa Edition. While we have the basics wired up for normal operation, you can jump these to access additional special functions for more advanced users.