My question regards the CC1101 transceiver (but it shouldn't matter what transceiver you are using), specifically the AGCCTRL0 register. I want to set the AGC_FREEZE.
I would like to know how to set the register so I can search for a sync word and then once found freeze the gain control settings until I power down the CC1101.
I'm not sure if this is possible though. I have tried using settings 1 and 3 for the AGC_FREEZE, but I think that the gain settings are only frozen until a new packet is received.
However, I want the gain settings to be frozen for all new packets coming in.
When I manually freeze all gain settings the transceiver sets the gain to a not optimal level (always sets the RSSI output at -81dBm no matter how close to the signal source). If I'm close to the signal source then the packet should be found and a RSSI level should be -20dBm and then all the packets coming in should have a RSSI around -20dBm. However, If I move far from the signal source then the gain settings should be fixed and the RSSI shoud decrease to -40dBm and below. When I currently do this all I get at the RSSI is -81dBm.
I'd like to have the transciever run it's gain setting algorithm to search for a packet. Once a packet is found I want to freeze that gain setting until I power down the transceiver. I don't care how it happens. I can only think of using the AGCCTRL registers : a manual freeze or a AGC_FREEZE . I've tried both, but can get it working properly.
The gain setting to be frozen, but the RSSI shouldn't be frozen!!!
Please let me know if you can help. Thanks.