Go Down

Topic: RF module modulation methods TL;DR (Read 291 times) previous topic - next topic

Geek Emeritus

What this is not: This is not relevant to Bluetooth, LoRa, RFID or WiFi. Those devices have their own modulation methods, which we call modes. LoRa wil be a separate tutorial. This is about data transport modules. Some modules show multiple modes. Some have one. This tutorial is about matching their offerings to your needs. This is not a comparison of different modules. It is a general lesson, not a specific lesson.

I will not post images of the modules. This is to prevent little red Xs in the future. eBay will be delighted to show you current images.

Modulation: Radio waves begin their career as a sine wave. This sine wave is a steady radio frequency at a steady level. This is called the carrier. Some parameter of this sine wave must be modified by the data to be delivered at the transmitter end, and the changes imposed on the carrier must be decoded at the receiver and converted back to data. This process is called modulation at the transmitter, and demodulation at the receiver

The modes: This should clarify things completely:
Quote
RFM69 @ 433 MHz - basic packetized FSK/GFSK/MSK/GMSK/OOK radio at 433 MHz for use in Europe ITU 1 license-free ISM, or for amateur use with restrictions (check your local amateur regulations!)


You will also see ASK & UART modes
  • UART is Serial sent via FSK. It is not a modulation mode, but it is how you impress data on a link composed of two HC-12s.
  • ASK is amplitude shift keying. You send a continuous carrier, and shift the power output between a low and high state. ASK is amplitude modulation.
  • OOK is On / Off Keying. OOK is ASK, but instead of low carrier, high carrier, you send no carrier, high carrier.
  • FSK/GFSK is FM, and a slightly more efficient offspring of FM. FSK - Frequency Shift Keying - Shifts the Frequency between two states when Keyed high or low. GFSK - Gaussian FSK - does the same thing, but it has processing which smoothes the transition of the carrier when it switches between states. This reduces the bandwidth of the signal by a very small amount.
  • MSK/GMSK is Minimum Shift Keying. This is a refinement on FSK


The simplest RF modules are ASK modules. The receivers look like they are from the 80s. Many have the data pin marked ATAD because somebody got it wrong and others copied. They typically have a "superregenerative receiver", which is what your grandfather listened to before WWII. The problem is, you get the random frequency within a band that it generates on the transmitter side, and a receiver that receives anything in the whole band. If you need more than one radio link, skip ASK modules. One ASK module on eBay claims to have a superheterodyne receiver, which looks identical to all the other ASK superregenerative receivers and has nowhere near enough parts for a superheterodyne receiver.

OOK modulation is found in the same modules as FSK and its variants. These modules have a controller and memory and superheterodyne receivers. Both ends can be set to the same stable frequency. OOK transmits the carrier when the Raw Data pin is pulled high, and no carrier when the Raw Data is pulled low. The detection is simply: carrier present = 1, carrier absent = 0. These modules can be set to sleep in low power mode, wake on interrupt, transmit, and drop back to low power mode.

FSK and its offspring transmit a continuous carrier, and shift it between two frequencies. One benefit of this is that you can verify that the far station is transmitting. Absence of a carrier indicates the presence of a failure.

UART is used by HC-12 modules. An HC-12 module link can send only Serial data.

My current project is a perimeter monitor for large remote properties. This will provide me with opportunities to try different modulation schemes in the different alarm zones. Based on the information presented above:

HC-12s are of no use when what you have to send is one brief pulse when a sensor is triggered. You would have to convert that pulse to a message, send the message, decode the message. You need an Arduino at both ends.

ASK is incompatible with a dozen sensors

OOK does exactly what I need, but if it fails, I will not know. If low power consumption is of paramount importance, OOK is the plan. If verified function is a priority, OOK is out.

FSK and its offspring let you read the RSSI - Received Signal Strength Indication - and verify that the equipment package at the sensor end is operational. This is an industry standard for alarm systems. Power consumption is higher.

The best web site for the RFMxx radio modules. This is the first of a series, check out the later ones also

Adafruit RFM radio tutorial
All PMs will be deleted unopened due to arrogant argumentative pot stirring Malfoys.
 If you have not read "How to use this forum - please read", in particular: "7. If you are posting code or error messages, use "code" tags":  expect rude responses

DrAzzy

The simplest RF modules are ASK modules. The receivers look like they are from the 80s. Many have the data pin marked ATAD because somebody got it wrong and others copied. They typically have a "superregenerative receiver", which is what your grandfather listened to before WWII. The problem is, you get the random frequency within a band that it generates on the transmitter side, and a receiver that receives anything in the whole band. If you need more than one radio link, skip ASK modules. One ASK module on eBay claims to have a superheterodyne receiver, which looks identical to all the other ASK superregenerative receivers and has nowhere near enough parts for a superheterodyne receiver.
The cheap green transmitters and receivers are OOK - when the DATA/ATAD pin is low, the transmitters are OFF.

The ones with the ATAD pin are the transmitters (it's likely mirrored, not backwards - they look the same for the word DATA, and mirrored label is easy to do accidentally during PCB design)

Many superhet OOK receiver modules are available on ebay - several manufacturers have superhet receiver IC's (example: Synoxo SYN470), which just need a couple of external passives and a crystal to use as a reference oscillator (which is then used with a PLL to generate the high frequency).

A couple of years back for a client I tested a bunch of these. The superhet receivers absolutely buried the cheap green ones; the RXB12 was the standout performer, being both extremely cheap (under $2), and getting the best range (1300', which was the longest throw I had with line-of-sight) and best performance over a range of operating voltages (they work great at 3v, almost no loss of range; the green superregnerative ones basically don't work at 3v). The RXB-12s are pin compatible and a drop-in replacement for the cheap green superregenerative receivers. I highly recommend them if simple OOK messaging is acceptable for your application.

Interestingly enough, the cheap "ATAD" transmitter boards often paired with the lousy superregenerative receivers perform fine; it's just the receivers that suck.
ATtiny core for 841+1634+828 and x313/x4/x5/x61/x7/x8 series Board Manager:
http://drazzy.com/package_drazzy.com_index.json
ATtiny breakouts (some assembled), mosfets and awesome prototyping board in my store http://tindie.com/stores/DrAzzy

Go Up