RFM12B FIFO µSD Atmega328 AVR ARM PIC 433MHZ RF Wireless Transceiver RFM12B
|Product||Freq||Power supply||Data-rate(kbps)||Output Power(MAX)||Sensitivity||Tx Current(MAX)||Work Current||stand by current|
|HYRM12B||433MHz||2.2-3.8V||115.2||5dBm at 433MHz||-105dBm at 433MHz||22mA at 433MHz||11mA at 433MHz||≤0.3µA|
HYRM12B features a completely integrated PLL for easy RF design, and its rapid settling time allows for fast frequency-hopping, bypassing multipath fading and interference to achieve robust wireless links. The PLL’s high resolution allo ws the usage of multiple channels in any of the bands. The receiver baseband bandwidth (BW) is programmable to accommodate various deviation, data rate and crystal tolerance requirements. The transceiver employs the Zero-IF approach with I/Q demodulation. Consequently, no external components (except crystal and decoupling) are needed in most applications. HYRM12B dramatically reduces the load on the microcontroller with the integrated digital data processi ng features: data filtering, clock recovery, data pattern recognition, integrated FIFO and TX data register. The automatic frequency control (AFC) feature allows the use of a low accuracy (low cost) crystal. To minimize the system cost,HYRM12B can provide a clock signal for the microcontroller, avoiding the need for two crystals. For low power applications, HYRM12B supports low duty cycle operation based on the internal wake-up timer Introduction
HYRM12B tranceiver module has become quite popular recently due to its low price comparing to other modules on the market. But many people find it hard to make these tranceivers work (mainly because of buggy programming guide provided by manufacturer, I guess...). This short article contains compact and simple code that can be used just to get these modules running for the first time. It is based on manufacturer's examle code with slight (but crucial) changes.
To interface HYRM12B modules I used Atmel's ATtiny2313. Recommended power supply for the module is 3.8V so I decided to power both the processor and the module from 3.3V. It can be a problem with the Mega family as you will need "L" version then. Some people claim that they run those modules from 5V and everything's fine. The other solution is splitted power supply (5V for processor and 3.3V for HYRM12B ) but resistors are needed on IO pins (5kohm or so) in this case. Implementing SPI interface doesn't require strict time delays or clock stability so processor is running on the 8MHz internal RC oscillator.
433 1/4 wave = 164.7mm
433 1/2 wave = 329.4mm
433 full wave = 692.7mm
Arduino Uno Connections