Here is my home-built, cloth iron soldered, range extender for CC1101 (included onboard) RF transceiver chip from Texas Instruments. You could say that it is a CC1101+CC2591, but for 868/920MHz band. I used MAX2233 RF amplifier from Maxim-IC. It can deliver up to +24dBm (250mW) of RF amplification with +10dBm of input. You can download the project files at the bottom of this page by clicking on red "download" button. A few basics of CC1101 chip:
- data transfer speed: 1.2 to 500 kbps - frequency: 779-928 MHz - output power +10dBm, without PA - 2-FSK, GFSK, MSK, OOK and ASK modulation schemes - frequency hopping ready - automatic address match, package protocol, CRC check
After adding RF amplifier, original power of 10mW is boosted to almost 250mW or 1/4W. MAX2233 RF amp can deliver up to 250mW when powered by 3.6V, and since I used 3.3V LDO on my board, the output RF power is little less than that.
Even though all electronics on this modem work on 3.3V, everything is still compatible with 5V TTL levels which is done with a help of MAX3377 or MAX3378. The power is lowered from 5V to 3.3V by MAX8888 LDO and it can provide enough mA to supply CC1101, MAX3377/8 and the PA.
Testing For testing I used two modems and two antennas (it figures). At the transmitting side I used monopole antenna for GSM - 900MHz, and for the receiving side I used directional yagi also for GSM - 900MHz. Details of these antennas can be found here: monopole and yagi.
In this quick test I easily achieved over 1000 meters (or 3300 feet) of range and the test-location/terrain configuration can be seen on the map: Transmitter location, and receiver location. This was achieved even without the antenna on the receiver's side! Then it started to rain and I had to go back. Oh and, I used 1.2 kbps data transfer for maximum receiver sensitivity. The data package transfered was 1 byte address and 4 bytes of payload long. For testing I used ATmega16 and the source-code can be found in the RAR archive for download.
The parts All capacitors = eBay shop All resistors = eBay shop All inductors = Vishay samples Q1 26MHz = FOX crystals samples SMA connector = SparkFun CC1101 RF modem = Texas Instruments samples SN74LVC1G04 inverter = Texas Instruments samples MAX2233 RF PA = MAXIM-IC samples MAX8888 3v3 LDO = MAXIM-IC samples MAX3377/MAX3378 converter = MAXIM-IC samples HMC174MS8 = rfcandy PCB = BatchPCB. If you need a board for this modem just use my exported gerbers and upload to BatchPCB. Do double-check them out before ordering!
Soldering of components You would probably think that this board is impossible to solder at home. Well, I will just say that I didn't even touch my board with soldering iron or hot-air reflow iron. It was all soldered by using a solder paste and a home cloth iron. It seems that cloth iron can get hot enough (200 degrees of Celsius) to perfectly solder everything down! It sure was exhausting to place a solder-paste on every pad with a syringe needle. Instead of cloth iron you can use a hot-plate, so check this out and see how it's done.
I would love to help but this is an old project for me, and I completely forgot all fine
details about CC1101. Maybe you can try other firmware for testing purposes? IP: n/a
Hello,
I have used your firmware for a standalone module.
https://www.waveshare.com/wiki/CC1101_RF_Board.
The basic SPI connections are as per MEGA16.H. I hae left GDO2 unconnected, as you are using it
for power amplifier on your PCB.
Init code on both Transmitter and reciver is ok. Transmitter is transmitting, but receiver does
not seem to respond. In fact, there is no activity detected on receiver side on GDO0 (Connected
to PINB.3).
I would apprecicate any feedback.
Thanks,
Prashant. IP: 182.58.59.131
Perhaps it would be easier/faster with the
http://www.silabs.com/Support\%20Documents/TechnicalDocs/Si1000.pdf
As it comes with a openfirmware :
https://github.com/tridge/SiK
Cheers IP: 199.127.109.46
Wow ! so great !
Could you do a second version ?
Integrating the ATmega16 on the board (with JTAG pins), and add a setial ttl RX/TX pins, and a
sync buton (to sync two board in case frequency shifting/encryption is implemented later) and
Rx/Tx led pins, RSSI out pin, packet lost pin
That would be great, because I can't and that's what I'm looking for :)
It would then send all serial data seamlessly for other electronic projects. IP: 199.127.109.46
@william: Yes. It is required because when receiving data you can't get signal FROM the
amplifier. You can only send signal TO the amplifier (when transmitting). IP: n/a