Q: How do you troubleshoot communication problems with AX5043?
A: Try using a DVK as the TX and your device as the RX and vice versa, to determine whether it is an RX or a TX problem.
Can you see problems in a continuous BER test (with either 1010 or random data), or just in packet mode? With RX1010 data there is an easy way to look at bit errors without writing software; just set PINFUNCDATA = 0x07 and put a scope on the DATA pin. You can also enable DIFF to get one pulse for each bit error, rather than the 1010 data.
- The chip uses 3 different parameter sets (loop speed etc). Set 0 (AGCGAIN0, etc) is used until PA pattern is detected, then set 1 is used until the SYNC word is matched, then set 3 is used. RXPARAMSETS contains an indirection table (parameter set requested by radio controller -> parameter set actually used). It is set to 0xF4, so 0 -> 0, 1->1, 2->3, 3->3. You can change this for debugging.
- The set 0 values are aggressive for fast acq, they may be too aggressive for actual RX (some slips with 1010 data, trouble with random data). Set 1 is slower. Set 3 completely freezes the AGC and further slows down the freq tracking & time tracking. DRGAIN is irrelevant since DRMAXOFFSET is 0.
- TIMEGAIN: lower values = slower, see PM for exponential encoding.
- FREQGAIN: lower values = faster.
- AGCGAIN: lower values faster. Last nibble is attack, first nibble is decay. 1 step is a factor 2 in speed, so you cannot program the same speed for 48MHz and 16MHz TCXOs, as the ration is 3.