I have designed differerent types of RF boards Based on the CC1101. I have laid out the circuitry exactly, (or as close to), as is indicated by the gerber files supplied by TI. The boards work quite well and was happy with the results. The boards vary, some with just reciever, others with addressing dip switches and others with pic on for control and measurement. All of the boards have eaxctly the same layout on the RF side.
However, I have the boards communicating well at 500kbs and 250kbs and 100kbs, using gfsk or 2-fsk, with the values exported from rf studio.
My problem is that i need a longer range and to do so i need to drop the baus rate, the bandwidth and so on. i.e. make the reciever more sensitive etc. I have the software all writen to indicate when a packet has been sucessfully recieved with CRC OK and packet recieved and Carrier Sense on the GDO pins, changed at will. This all works lovely at the higher data rates. But not at the lower ones.
I have spent 2 weeks, trying to get it to work and changed every possible value with Smart RF Studio and checked the values 1000 times, as the baudrates get lower, the CRC checksum fails, and the distance gets shorter and shorter. This also applies to Carrier Sense as well. I.e. The lower the baud rate, the narrower the Rx Filter bandwith and the lower the Deviation, "the less sensitive the reciever seems to be".
If i ignore the CRC and transmitt the data direct, the lower the baud rates, the more the data is being corrupted from the end of transmission backwards. I.e. If the baudrate is 38k, the checksum is corrupt, but the data is ok, at 10k, the checksum and the last few bytes of transmission are corrupt, and so we go worse, backwards.
I am able to get the sysem to work at 38k datarate, with the antennas touching. As i increase the data rate, rc filter bandwidth and deviation, the longer the range.
I have no solution to this. I have checked the outputs, the power output, the deviation, the fillter bandwidth etc on a spectrum analiser and all is 100 %, it seems to be a problem on the reciever side.
If there is someone out there, with a similar hassel, please advise me as to why this is happening and what i can do to make this work correctly at lower baud rates.