Learning about 433 MHz radios – how?

turboscrew
Thu Mar 16, 2017 12:09 am
I’d like to fool around with a couple of blue pills with 433 MHz radio modules, but to make some sense
out of the radio module data sheets, I guess I should learn some radio basics first, but how?

I’ve been trying to search the net for tutorials or something, but I don’t really even know what that sort of
technology is really called. What I think I need is the basic theory and terminology, like ‘noise figure’ or
‘fading margin’.

The point is to learn about the radios, not to get away with it by just downloading a ready-made application
or library. (I did, however, download this: https://github.com/LowPowerLab/RFM69 for reading.)

So does anyone know good links or even googling phrases?


zmemw16
Thu Mar 16, 2017 12:26 am
‘arduino 433mhz instructable’
not exactly that difficult :!:

first item

you will probably need to add correct lengths of wire as aerials to improve range, maybe not for 2-3ft( :?: :?: :?: )
after that essentially its connecting arduino uart to tx, rx to another arduino’s uart

stephen


turboscrew
Thu Mar 16, 2017 10:28 am
zmemw16 wrote:‘arduino 433mhz instructable’
not exactly that difficult :!:

first item

you will probably need to add correct lengths of wire as aerials to improve range, maybe not for 2-3ft( :?: :?: :?: )
after that essentially its connecting arduino uart to tx, rx to another arduino’s uart

stephen


zoomx
Thu Mar 16, 2017 10:38 am
zmemw16 wrote:
after that essentially its connecting arduino uart to tx, rx to another arduino’s uart

turboscrew
Thu Mar 16, 2017 11:15 am
I also think that the virtual wire will not be enough.
I’m planning to make a small (maybe 3 – 6 nodes) network.

And usually the processor interface for those cheap modules seems to be SPI.
But for dongles it’s UART (USB-UART).


turboscrew
Thu Mar 16, 2017 1:51 pm
BTW, does anyone know why the limitation (RFM69)? (What does this mean?)
FDA + BRF/2 =< 500kHz

FDA = frequency deviation, FSK
BRF = bit rate, FSK
And BRF max = 300kbps.


zoomx
Thu Mar 16, 2017 2:12 pm
I am not sure but it seems that these cheap modules (less than 2$) work with OOK modulation, so the pin turn on and off the carrier. They are very simple modules.

There are some other modules that works better.

If you need a network maybe you can consider NRF24 based modules.


turboscrew
Thu Mar 16, 2017 5:35 pm
RFM69 knows FSK and GFSK too (€ 3,17 / piece). And it has 66-byte FIFO.
“FSK, GFSK, MSK, GMSK and OOK modulations”
“Packet engine with CRC-16, AES-128, 66-byte FIFO Built-in temperature sensor”
http://www.hoperf.com/rf_transceiver/mo … M69HW.html

I also ordered CC1101-based modules, but they have not arrived yet ( € 3,32 / piece, US $3.50 / piece).
“The maximum rate of 500kbps, support 2-FSK, GFSK and MSK modulation.”
“Built-in hardware CRC error detection, and address control”
“Separate 64-byte RX and TX data FIFO “
https://www.aliexpress.com/item/2-pcs-C … 0.0.dXdbgJ

And this is the dongle I mentioned earlier. (Not very good idea – it can’t be used for sending binary data.)
https://www.aliexpress.com/item/433Mhz- … 42842.html

Not quite that simple even if cheap.
Oh, and both modules use SPI as the processor interface.


RogerClark
Thu Mar 16, 2017 9:06 pm
nRF905 is another option

but I had to hack an AVR library to use it, and the result was not pretty;-)

I like nRf905 as it us multi-band, not just 433MHz, but I think it can only transfer 32 bytes at a time, as its intended to communicate with other nRF905 devices using its own protocol.

Ps. They are less than $5 on aliexpress.


turboscrew
Fri Mar 17, 2017 8:51 pm
I already have 4 RFM96s, and two CC1101s are on their way…
I guess RFM96 is enough for now even if, with the on-chip AES, the message can be only 48 bytes
(if address filtering is used – and I intend to use it at some point).
It can also deal with unlimited length messages, but some features are not available then.

Anyway, I seem to be learning a bit by reading the manual over and over, but I guess I’d still
benefit from some theory/practical info.


Squonk42
Fri Mar 17, 2017 11:07 pm
Search for the ARRL (American Radio Relay League) Handbook in PDF.

Another good source for understanding modern RF transceivers can be found in some Semtech RF chip datasheets, such as the SX1232 (http://www.semtech.com/images/datasheet … df#page=18, look at section 3).


turboscrew
Sat Mar 18, 2017 12:31 pm
THANKS!

turboscrew
Sun Mar 19, 2017 1:19 am
SX1232 looks quite similar to the RFM69.

Squonk42
Sun Mar 19, 2017 3:58 pm
It looks like RFM69s are just (legal?) repackaged SX1231H chips:
https://lowpowerlab.com/forum/rf-range- … es-or-not/

They copied a large part of Semtech’s datasheet, that’s why it looks very similar.

But the section 3 in the Semtech datasheet is really nice to understand how a modern RF transceiver really works by following the data path.


turboscrew
Mon Mar 20, 2017 6:50 pm
There are some differencies in the chips too.
Like SX1231H has restriction Fdev + (BR/2) <= 250 kHz, but for RFM69 it must be less than 500kHz
Also for SX1231H:
Note
no constraint applies to the modulation index of the transmitter, but the frequency deviation must be set between
600 Hz and 200 kHz

and for RFM69 the frequency deviation must exceed 600 Hz.

But the SX1231H data sheet seems to have descriptions that are not there in RFM69 data sheet. :)


Squonk42
Mon Mar 20, 2017 9:34 pm
turboscrew wrote:There are some differencies in the chips too.
Like SX1231H has restriction Fdev + (BR/2) <= 250 kHz, but for RFM69 it must be less than 500kHz
Also for SX1231H:
Note
no constraint applies to the modulation index of the transmitter, but the frequency deviation must be set between
600 Hz and 200 kHz

and for RFM69 the frequency deviation must exceed 600 Hz.

But the SX1231H data sheet seems to have descriptions that are not there in RFM69 data sheet. :)


turboscrew
Tue Mar 21, 2017 12:11 am
Squonk42 wrote:turboscrew wrote:There are some differencies in the chips too.
Like SX1231H has restriction Fdev + (BR/2) <= 250 kHz, but for RFM69 it must be less than 500kHz
Also for SX1231H:
Note
no constraint applies to the modulation index of the transmitter, but the frequency deviation must be set between
600 Hz and 200 kHz

and for RFM69 the frequency deviation must exceed 600 Hz.

But the SX1231H data sheet seems to have descriptions that are not there in RFM69 data sheet. :)


Squonk42
Tue Mar 21, 2017 5:51 am
Ok, sorry for the confusion, the SX1232 is the one I am most familiar with, and the original intend was not’to compare it to the RFM69 in particular.

BTW, it looks like other RFM chips are also re-packaged Semtech chips, but those seems to be “accepted” copies, as Semtech is listing Hoperf (RFM69 manufacturer) as one of their FSK parners:
http://www.semtech.com/wireless-rf/wireless-solutions/


turboscrew
Tue Mar 21, 2017 9:31 am
Squonk42 wrote:Ok, sorry for the confusion, the SX1232 is the one I am most familiar with, and the original intend was not’to compare it to the RFM69 in particular.

turboscrew
Tue Mar 21, 2017 9:45 am
BTW, if someone else is interested, just found this:
http://edge.rit.edu/edge/P09141/public/FSK.pdf

And another one – especially for RFM69 (and maybe for SX1231H too):
https://lowpowerlab.com/forum/rf-range- … ith-rfm69/


zoomx
Wed Mar 22, 2017 4:29 pm
Squonk42 wrote:It looks like RFM69s are just (legal?) repackaged SX1231H chips:
https://lowpowerlab.com/forum/rf-range- … es-or-not/

stevestrong
Wed Jun 28, 2017 2:44 pm
[RogerClark – Thu Mar 16, 2017 9:06 pm] –
nRF905 is another option

but I had to hack an AVR library to use it, and the result was not pretty;-)

Hi Roger,
can you share the hacked nRF905 code (even if it is not pretty)? I am interested to test it, I have a project to control my home ventilation system which uses a protocol based on this chip.


RogerClark
Wed Jun 28, 2017 9:42 pm
LOL.

I replied to the GitHub issue before I saw this.

I will find the code and email it to you ( as admin I can find the email address you registered with)

But I apologise for the quality of the code, as it was just a quick hack to get it to work.
And, as I said on GitHub, that “library” is not really a library, it’s just a collection of functions, so I think I just extracted the functions I needed and put modified versions of them into my own file


turboscrew
Fri Jul 28, 2017 5:45 pm
Hmm. RSSI is till somewhat unclear – especially comparison between two bands of different widths…

But if someone else is in the situation I was when I started this thread, the probably most important things are these:

  • 0.5 <= 2*Fdev/BR <= 10 // modulation depth
  • Bitrate < 2*RXBW // oversampling rule
  • BW = 2*FDEV + BR <==> RXBW >= FDEV + (BR/2) // Carson’s rule

Fdev is the (G)FSK frequency deviaton
BR is the air bit rate
BW is the bandwidth used (actually about 98% of the energy is within BW)
RXBW is the receive filter bandwidth

Note that Fdev and RXBW are one-sided.
In (G)FSK, “1”s and “0”s are sent using different frequency. The other is Fcarrier – Fdev, the other is Fcarrier + Fdev.
Also the RXBW is one-sided. The whole receive band is from Fcarrier – RXBW to Fcarrier + RXBW.
To receive well the BW needs to fit inside the Fcarrier +/- RXBW.


Leave a Reply

Your email address will not be published. Required fields are marked *