Skip to content
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

LDD driver initialization err #29

Open
mliang2002 opened this issue Jun 5, 2024 · 4 comments
Open

LDD driver initialization err #29

mliang2002 opened this issue Jun 5, 2024 · 4 comments

Comments

@mliang2002
Copy link

ldd parameter device address is incorrect in commands, i think it should be 2051 instead of 3040
also example code does not mention how to initialize multiple ldd objects with different addresses (which may cause errors)

@jscman
Copy link

jscman commented Jun 6, 2024

No, for TEC controller it is 2051. For laser driver boards (LDD family) it is 3040.
I checked this, 3040 is accepted by LDD and changes also show up in manufacturer's software.
When using 2051 on LDDs, "Parameter is not available" is raised.

What addresses do you refere to? Multiple hosts can be addressed by multiple instances and do NOT require unique settings for the parameter id 3040 (or 2051) e.g.:
device1 = mecom.MeCom('COM1', metype='LDD')
device2 = mecom.MeCom('COM2', metype='LDD')
device3 = mecom.MeCom('COM3', metype='LDD')

If your boards are connected via RS485 they need unique settings for parameter id 3040 (or 2051). You connect to a single host and add the address to the communication, e.g.:
devices = mecom.MeCom('COM1', metype='LDD')
devices.get_parameter(parameter_id=3040, address=1)
devices.get_parameter(parameter_id=3040, address=2)
devices.get_parameter(parameter_id=3040, address=3)

@mliang2002
Copy link
Author

@jscman thx for the response! That what I tried from the example code given, but it does not execute properly on the ldd1301. I even used the command tool and sent serial to the device and I got a parameter not available response:

https://www.meerstetter.ch/customer-center/downloads/category/76-ldd-130x-communication-protocols?download=631:ldd-130x-communication-protocol-5260d

Let me know if there is something I'm missing here.

@jscman
Copy link

jscman commented Jun 10, 2024

Ah, I see. It looks like this is related to some of the newer meerstetter boards having different commands. There was a similar issue with the (LDD-1321) which was solved by a metype = "LDD-1321".
I dont know if the whole LDD-13xx family is identical, but in your case I suggest to check the commandy.py and try to use the LDD-1321 type. But you would have to add the commands you need to the command.py (e.g. device address).

@samirceka
Copy link
Contributor

The example code is specific to the LDD-112x family. I have renamed the example from example_LDD.py to example_LDD_112x.py to make this clearer. There should also be a 'LDD-130x' metype now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants