Is there any documentation available for the PLL part of the firmware (MK3-PLL)? I have mostly figured it out by looking at the available code but the role of some variables (eg. memI_phase, errorPI_Phase, errorPI_Amp) is not clear to me. The current gxsm firmware is set to run at 75 kHz. Can the PLL functions be used at 150 kHz also?
I'd also like to know if the code for the PLL part is open source or not and whether it has been written by the gxsm team or by SoftDB? If it is the latter, does SoftDB divulge details of the API?
Thanks.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I have a detailed API documentation and I though it's coming with the software. The python script/support code for tuning reveals pretty much the full API.
have a look if you find this file on you PAC/PLL support code installation on windows:
PLL_API.zip
Thanks for the reply. I do not appear to have a PLL_API.zip file in my windows installation. I had already looked at all the other files you have mentioned and as I said before, most of the API is already figured out. However, some questions still remain and that is why I asked if there was any documentation available.
Some of the questions I had, for example are -
currently, PI_Phase_Out = round (CPN(29)2.pi*freq/150000.). This is valid for Analog810 operation at 75 kHz. Will this also hold for operation at 150 kHz?
Filter64Out follows the order excitation frequency, resonator phase, resonator amplitude and excitation amplitude. But ClipMin and ClipMax have a different order, namely excitation frequency, resonator phase, excitation amplitude and resonator amplitude. Is this change in order intentional or a bug in gxsm?
What is the role of ClipMin and ClipMax? From the windows program supplied by softdb, it appears that they are only necessary if one wants the signals on some other output (as a standalone PLL). But the PAC scope in gxsm also has a tab for the clip min/max range.
and so on. Since the PLL code itself is not under GPL, I had thought some sort of API documentation would exist.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Is there any documentation available for the PLL part of the firmware (MK3-PLL)? I have mostly figured it out by looking at the available code but the role of some variables (eg. memI_phase, errorPI_Phase, errorPI_Amp) is not clear to me. The current gxsm firmware is set to run at 75 kHz. Can the PLL functions be used at 150 kHz also?
I'd also like to know if the code for the PLL part is open source or not and whether it has been written by the gxsm team or by SoftDB? If it is the latter, does SoftDB divulge details of the API?
Thanks.
I have a detailed API documentation and I though it's coming with the software. The python script/support code for tuning reveals pretty much the full API.
have a look if you find this file on you PAC/PLL support code installation on windows:
PLL_API.zip
see also:
https://sourceforge.net/p/gxsm/svn/HEAD/tree/trunk/Gxsm-2.0/plug-ins/hard/MK3-A810_spmcontrol/PAC_pll.h
https://sourceforge.net/p/gxsm/svn/HEAD/tree/trunk/Gxsm-2.0/plug-ins/hard/MK3-A810_spmcontrol/python_scripts/mk3_spmcontol_class.py
http://www.softdb.com/_files/_dsp_division/SPM_PLL_UsersManual.pdf
I am finding out if it is public other wise as it's not my or GPL property.
Thanks for the reply. I do not appear to have a PLL_API.zip file in my windows installation. I had already looked at all the other files you have mentioned and as I said before, most of the API is already figured out. However, some questions still remain and that is why I asked if there was any documentation available.
Some of the questions I had, for example are -
currently, PI_Phase_Out = round (CPN(29)2.pi*freq/150000.). This is valid for Analog810 operation at 75 kHz. Will this also hold for operation at 150 kHz?
Filter64Out follows the order excitation frequency, resonator phase, resonator amplitude and excitation amplitude. But ClipMin and ClipMax have a different order, namely excitation frequency, resonator phase, excitation amplitude and resonator amplitude. Is this change in order intentional or a bug in gxsm?
What is the role of ClipMin and ClipMax? From the windows program supplied by softdb, it appears that they are only necessary if one wants the signals on some other output (as a standalone PLL). But the PAC scope in gxsm also has a tab for the clip min/max range.
and so on. Since the PLL code itself is not under GPL, I had thought some sort of API documentation would exist.
I just talked to SoftdB and they agreed that I publish the API documentation. I just added it to the SVN.
Should be here shortly:
https://sourceforge.net/p/gxsm/svn/HEAD/tree/trunk/Gxsm-2.0/plug-ins/hard/MK3-A810_spmcontrol/PLL-doc
That is very helpful. Thank you very much.