I have an issue with adding a custom plugin package based on Python code:
When I just build my code with tap “python build --build-package” it works fine. I can successfully directly add my new created instrument with the + sign in the bench settings.
However, when I install the generated TapPackage and add an instrument in the same way the instrument is not added. I get next message:
11:55:55.631 Wrapper bij Python.Runtime.PyObject.GetAttr(String name) bij Keysight.Plugins.Python.PythonModule.CreateInstance(String typename, IPythonWrapper wrapper) bij Keysight.Plugins.Python.PythonWrapperExtensions.<>c__DisplayClass6_0.b__0() 11:55:55.631 Settings Error during the creation of ‘Python.DPM8600.Dpm8600Connection’
Does anyone has a hint about what might be wrong? It seems that also only the DLL file is put in the /package/python/DPM8600 folder. I was expecting also the .py files
I’am making use of Python 3.8 in combination with Opentap 9.19.0
Thanks in advance,
@e.huijben someone can probably help you get this working with the Python Plugin 2.x version, but I’d recommend upgrading to the 3.0.0-rc3 version as it eliminates the steps you are having issues with:
You can find help, including a migration guide, here:
As I understand, the 3.0.0 version is not compatible with 2.4.0
Since I have multiple plugin based on 2.40 I like to stick to this version for the moment.
Also I’am using existing python plugins like PSLab which rely on 2.4.0
But it seems that 3.0.0 has a lot of improvements, so I will plan upgrading the plugins in the future.
If someone has any idea to fix this issue for the 2.4.0 python version, please let me know.
You are right, 2.x is not compatible with plugins created with 3.y, so you’d have to migrate all your plugins. It should be relatively straight forward.
Anyway, staying with 2.4, I don’t know what is going wrong here. There is no other log messages hinting at the issue? Sometimes those are hidden in the ‘debug’ messages.
Do you have other instrument plugins which works?
The debug logging is not giving more logging then already mentioned.
It seems that in the packages\python\DPM8600 directory, only the DLL is placed by the package manager, while a correcly installed package also is putting all .py files like connection.py and instrument.py into this directory.
I will further invest what is going wrong. I don’t have any issues with other python instruments.