Wiring encoder to LinuxCNC + Mesa vs motor controller
- phino
- Away
- New Member
-
Less
More
- Posts: 18
- Thank you received: 0
13 Aug 2025 15:21 #333340
by phino
Wiring encoder to LinuxCNC + Mesa vs motor controller was created by phino
How should (linear optical scale, 0.1 micron resolution) encoders be wired to a system using a LinuxCNC + Mesa 7i95T and ODrive Pro motor controllers for each axis?
In the future it may be possible for the ODrive to pass through / re-output the encoder readings via GPIO pins. This would seem to be an interesting option, but it is not currently implemented and it's not clear if there could be potential latency issues.
What is the recommendation from the LinuxCNC + Mesa perspective, and are there any pitfalls to watch out for?
- Encoder wired in parallel to both Mesa and ODrive motor controller? (ground loop issues, etc?)
- Encoder wired only to Mesa with ODrive motor controller in open loop? (not recommended by ODrive)
- Encoder wired only to ODrive motor controller with LinuxCNC + Mesa in open loop? (loses the whole point of LinuxCNC and coordinated motion)
- Two encoders, one for each? (added cost and complexity)
- Something else?
In the future it may be possible for the ODrive to pass through / re-output the encoder readings via GPIO pins. This would seem to be an interesting option, but it is not currently implemented and it's not clear if there could be potential latency issues.
What is the recommendation from the LinuxCNC + Mesa perspective, and are there any pitfalls to watch out for?
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
Less
More
- Posts: 19042
- Thank you received: 5255
13 Aug 2025 15:48 #333343
by PCW
Replied by PCW on topic Wiring encoder to LinuxCNC + Mesa vs motor controller
In general I would not use a step/dir drive with encoder feedback to LinuxCNC unless
this is a dual feedback system, that is for example a step/dir drive with local rotary
encoder and a separate linear encoder fed back to LinuxCNC. This way the high bandwidth
motor control loop is run locally and the lower bandwidth but higher high accuracy control
loop is run in LinuxCNC.
There are also noise issues when feeding drive connected encoders to LinuxCNC as the ground
reference of those encoders is often the negative motor power line. (At least in small DC powered drives)
this is a dual feedback system, that is for example a step/dir drive with local rotary
encoder and a separate linear encoder fed back to LinuxCNC. This way the high bandwidth
motor control loop is run locally and the lower bandwidth but higher high accuracy control
loop is run in LinuxCNC.
There are also noise issues when feeding drive connected encoders to LinuxCNC as the ground
reference of those encoders is often the negative motor power line. (At least in small DC powered drives)
The following user(s) said Thank You: phino
Please Log in or Create an account to join the conversation.
- phino
- Away
- New Member
-
Less
More
- Posts: 18
- Thank you received: 0
13 Aug 2025 16:22 #333348
by phino
Replied by phino on topic Wiring encoder to LinuxCNC + Mesa vs motor controller
Do you mean you would not use step/dir drives with a single encoder at all with LinuxCNC, or that you do not recommend wiring a single encoder to both the motor control and LinuxCNC?
In this case, the drive is a linear forcer, so there is no rotary encoder and just one separate linear encoder. I am trying to decide how to wire it up.
In this case, the drive is a linear forcer, so there is no rotary encoder and just one separate linear encoder. I am trying to decide how to wire it up.
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
Less
More
- Posts: 19042
- Thank you received: 5255
13 Aug 2025 16:34 #333349
by PCW
Replied by PCW on topic Wiring encoder to LinuxCNC + Mesa vs motor controller
I do not recommend using the drives local rotary encoder as direct feedback to LinuxCNC.
It's possible but does not really confer any advantages.
A system with a step/dir servo drive and an independent linear scale does have some advantages
in improving accuracy.
It's possible but does not really confer any advantages.
A system with a step/dir servo drive and an independent linear scale does have some advantages
in improving accuracy.
Please Log in or Create an account to join the conversation.
- phino
- Away
- New Member
-
Less
More
- Posts: 18
- Thank you received: 0
13 Aug 2025 16:49 #333350
by phino
Replied by phino on topic Wiring encoder to LinuxCNC + Mesa vs motor controller
Ok, good to know about the recommendation on drives with local rotary encoders.
For linear forcers or brushless DC motors without local encoders, how should the independent linear encoder be wired, with respect to the motor controller and/or LinuxCNC+Mesa?
For linear forcers or brushless DC motors without local encoders, how should the independent linear encoder be wired, with respect to the motor controller and/or LinuxCNC+Mesa?
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
Less
More
- Posts: 19042
- Thank you received: 5255
13 Aug 2025 16:56 #333352
by PCW
Replied by PCW on topic Wiring encoder to LinuxCNC + Mesa vs motor controller
Unless the scale was absolute or had commutation signals it's unlikely to be supported by most drives
Please Log in or Create an account to join the conversation.
- phino
- Away
- New Member
-
Less
More
- Posts: 18
- Thank you received: 0
13 Aug 2025 17:26 #333353
by phino
Replied by phino on topic Wiring encoder to LinuxCNC + Mesa vs motor controller
The encoder (Ditron DC13), linear forcer (Parker ML18), and motor controller (ODrive Pro) were tested to work together for one axis.
The question is how to then integrate these components with LinuxCNC and Mesa 7i95T, specifically the wiring of the encoder?
The ODrive Pro drives the linear forcer and requires encoder feedback for proper control. The intention is to control the ODrive Pro with step/dir from the 7i95T. But it is unclear how to connect the encoder to satisfy the feedback requirements for both the ODrive Pro and the LinuxCNC coordinated motion and DRO.
The question is how to then integrate these components with LinuxCNC and Mesa 7i95T, specifically the wiring of the encoder?
The ODrive Pro drives the linear forcer and requires encoder feedback for proper control. The intention is to control the ODrive Pro with step/dir from the 7i95T. But it is unclear how to connect the encoder to satisfy the feedback requirements for both the ODrive Pro and the LinuxCNC coordinated motion and DRO.
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
Less
More
- Posts: 19042
- Thank you received: 5255
13 Aug 2025 17:33 #333354
by PCW
Replied by PCW on topic Wiring encoder to LinuxCNC + Mesa vs motor controller
In that case I would run it open loop from LinuxCNC
(local closed loop to the drive)
(local closed loop to the drive)
Please Log in or Create an account to join the conversation.
- phino
- Away
- New Member
-
Less
More
- Posts: 18
- Thank you received: 0
13 Aug 2025 18:06 #333355
by phino
Replied by phino on topic Wiring encoder to LinuxCNC + Mesa vs motor controller
Is there some way to also provide encoder feedback to LinuxCNC to have coordinated motion? This is an important functionality for the application.
The machine will have multiple axes: 4 linear (3 + 1 redundant for gantry), 2 rotary, and 2 for a galvo (XY2-100) for a laser.
The machine will have multiple axes: 4 linear (3 + 1 redundant for gantry), 2 rotary, and 2 for a galvo (XY2-100) for a laser.
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
Less
More
- Posts: 19042
- Thank you received: 5255
13 Aug 2025 18:09 #333356
by PCW
Replied by PCW on topic Wiring encoder to LinuxCNC + Mesa vs motor controller
You still have coordinated motion even without position feedback to LinuxCNC
Please Log in or Create an account to join the conversation.
Moderators: PCW, jmelson
Time to create page: 0.077 seconds