When testing the double_iq_pid_vco example (on redpitaya14), we seem to get only positive frequency deviations, and when the output of the PI-servo is a negative number the DDS output disappears (or the tuning-word is completely wrong)
This video shows the output-DDS when the input-signal is close (<1Hz) to the demodulation-DDS frequency. The positive frequency-deviations seem ok, but the signal disappears (or jumps very far) when the PI-servo output changes sign.
https://youtu.be/UNrcE8mEVow?feature=shared
some guessing on what the issue could be:
-
the 'unsigned' keyword is used here https://github.com/oscimp/app/blob/b3d592c92f03a6798bbccbb023f46f92720c75b4/redpitaya/double_iq_pid_vco/design/double_iq_pid_vco.tcl#L124
could this cause some problems when the PI-output is negative?
-
is there documentation on how the 'sign' variable works for https://github.com/oscimp/fpga_ip/tree/master/pidv3_axi ?