-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Terminating: GSD 'HIL_0B69.gsd': DPv1 User_Prm_Data is shorter than 3 bytes #11
Comments
Thanks for your report. |
File attached. |
Thanks. I checked this problem and what I found out is:
That is why the UserPrmData ends up with size 0 instead of size 5 as specified in your GSD. That's why I currently consider this a missing feature rather than a bug. The GSD parser isn't fully prepared to parse all details of your GSD file, yet. There are a couple of other ignored fields as well. These will be shown, if GSD parser debugging is enabled (set debug=True in the parser.py file) |
Please also note that you probably won't get your device working, if the UserPrmData from the GSD file is ignored by pyprofibus. That is unless you somehow hack the code and hardcode the required UserPrmData somewhere. |
I appreciate very much for spending the time to investigate the issue. Despite these missing features, I believe the pyprofibus will still be a very good application to help my Profibus application development. |
Re-opening the issue, to keep track of this feature, because it should be implemented at some point. I think it is fairly easy to work around this missing feature, by just hard coding the required UserPrmData in the user code that uses pyprofibus for a particular device. However the plan is to also have this GSD feature to be part of pyprofibus. If you have any enhancements to pyprofibus, that are of general use, please feel free to create pull requests. Your help is greatly appreciated. |
Currently I can get around the problem by setting "DPV1_Slave = 0" to remove DPV1 support. If I do need DPV1 support, I will consider come back and see if I can contribute to this issue. |
That will silence the error message, but the root of the problem will still persist. |
In my module configuration, I only have the following defined: |
Ok. Fair enough. So your device is not as picky about missing data as mine. :) |
Hi, |
I used a RS232 to RS485 dongle from HMS. It is a direct connection to one slave using a serial cable with no terminator. |
thank you!
Le jeu. 23 avr. 2020 à 20:26, derekyu56 <[email protected]> a écrit :
… I used a RS232 to RS485 dongle from HMS. It is a direct connection to one
slave using a serial cable with no terminator.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#11 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACH6NZQ3Z7YZYDANX2FST7TROCB45ANCNFSM4MIATC6Q>
.
|
I have a GSD file from Hilscher that has "DPV1_Slave = 1" indicates it support DPV1. Going through pyProfibus it generated the above error in getUserPrmData() in interp.py . Judging from the code, it seems there are relationship between DPV1 and "User_Prm_Data", "User_Prm_Data_Len", "Ext_User_Prm_Data_Const", and "Ext_Module_Prm_Data_Len". These parameters are not in the GSD file. I cannot find these requirements in the Profibus Specification.
It works fine after I changed "DPV1_Slave = 0".
The text was updated successfully, but these errors were encountered: