Other Parts Discussed in Thread: CC2500, CC2510, MSP430F2132
Scenario:
For the past few months I have been working on the communication between two devices with a custom PCB board I have created. Initially I used a chip antenna and encountered a few problems due to incorrect pi-matching and I was unable to resolve that as I did not have the correct equipment.
I have now changed to a PCB antenna and followed the 2510EM PCB antenna reference design very closely (also similar to the AN043 design note) so I can avoid doing this. I am however, using a CC2500 rather than the CC2510 controlled by a MSP430F2132. The location, sizing and components from the RF pins are exactly the same. Please refer to my attachment for the board layouts (1.6 x 43 x 58mm for the receiving board and 0.8 x 30.5 x 50mm for the transmitting board.
On the transmitting board I am sending 5 bytes of data (length, 2xdata, 2xstatus bytes). Both are setup for 250kbaud with CRC checking. This is sending 3 times a second using the MSP430’s timer (going into sleep mode between transmits). On the receiving side I am polling RXBYTES for data. I am however also keeping count of how many packets it actually receives with GDO0 set to 0x06. Please refer to my attached code for further detail in the program side of things, or ask what exactly you want to know so you are able to help.
Problem:
Simply put, the main problem I am getting is bad signal strength, poor transmit distance and high interference if there is objects (hands/bodies) in between the devices. This PCB antenna has been proven to transmit over 200m in LoS (as per AN043), but I am only able to transfer 5-7m before I start to encounter large packet loss. When I have the devices set up 4m apart in clear LoS the receiver receives 99% of the packets being set, and 98% of these pass the CRC check. When I stand in between the devices the amount of packets received will drop to roughly half of what is being sent.
It is also interesting to note that when the boards are in transmit mode, there is the main peak at the selected frequency, however there is noise almost on all channels from the device. Refer to my attachment>TX Mode Spectrum Graphs for the result of two different boards (both the 0.8mm thickness board).
Ideas tested:
- Tested RX/TX between two 0.8mm board -> thought the board thickness may play a factor, however almost same result between two 0.8mm board
- Tested in different locations to rule out signal interference, also tested in a 7m Square Hollow Tube. Allowed for slightly longer transmitting distance, but same result when two hands are placed in between the devices.
Still to Test:
- Different Power levels (Currently at 0dBm on both TX/RX) -> unlikely to work as 0dBm Is already one of the highest gain settings
- Different frequencies -> unlikely to work as the same problem occurred without signal interference
Help!
Any help with this would be greatly appreciated. I have been at this for months and progress is getting very slow! Ensure why I am getting such poor results with a setup that has been proven before.