What closed loop steppers are you using on your Sheldon? Marcus On 28 Sep 2026, at 11:56, maurice e heskett
<[email protected]> wrote: On 9/27/26 23:53, Chris Albertson wrote: On Sep 27, 2026, at 2:43 PM, Peter
Wallace<[email protected]> wrote: On Sun, 27 Sep 2026, Chris Albertson wrote: I like the way Klipper solved
the communications jitter issue. Kiliiper is a lot like LCNC. There is a central Linux computer that reads the
G-code file, does planning and the math, and then the low-level stuff like generating wavforms to drive a stepper
motor or whatever is some on microcontrollers that can be truely ?hard? real time. What Klipper does is simple.
The microcontroller clocks are synchronized to the Linux system. Then the Linux host attaches a ?target time?
with each movement command. The microcontroller then buffers the command until the exact right time. This way,
millisecond-level RT jitter in Linux does not show up on the motors. This way, one can get 10-microsecond-level
timing without real-time Linux. The difference is that LinuxCNC is an unbuffered system at the motion level.
Buffering removes the real time requirement from the upper level controller but loses the ability for the upper
level controller and therefore motion to repond to real time inputs. The way Klipper works for a real-time event
like hitting a limit switch is that the microcontroller is interrupted. The controller captures the clock and
then invalidates the buffer and sends the captured clock value back to the Linux computer. What makes this work
so well is that, unlike Linux, a typical microcontroller can capture a clock or timer value on an interrupt
entirely in hardware, without needing software to manually read the timer. We can get nanosecond or microsecond
timing even in a buffered system. The other thing that makes this work is the Linux system continuously polls the
microcontroller’s clock and maintains a transformation equation that accounts for any difference in phase and
rate between the two clocks. I don’t think all real-time events have to clear the buffer. I’m not expert enough
on details like that. But because the clocks are tracked, the Linux machine can drive any reasonable number of
microcontrollers using CAN bus, serial, USB or whatever. Another advantage is that this system can be very low
cost. I can use a $4 rp2040 development board to drive a stepper at one million steps per second. Better
microcontrollers do better. No one will implement this. It is too much work. Is it? Let me propose a test
procedure: A bananapi-m5, driving a BTT octopus-pro V1.1 controller board. It can drive 8 motors in real time,
monitoring all 8 limit switches while maintaining 3 or more temperatures. Talk to Kevin about a fork of klipper
to drive our very extensive list of hdwe. Borrow our test suite, feed it to klipper and see what falls out. The
list for functions for a 3d printer is maybe 10% of what we are doing in LinuxCNC. How much work would it take to
fix each fallout? Then we would have a far better understanding of the work involved. Another of my fav subjects:
The advent of closed loop stepper/servo's has, at my place, been an eye opener in terms of the speed limits and
accuracy, taking an elderly Ender5 from 16mm/sec for y travel, to 200mm/sec or better. Actual limit is imposed by
the hot ends ability to deliver enough hot plastic from a 60 watt heater. The hot ends ability to deliver the
plastic is now that printers speed limit. The hot end needs more heat. Where that printer had layer shifts at
20mm/sec, now with 72 volts for the main motors, details in the print are much better defined now & a 3 day
job is now done in 9 hours. That heater is rated for 320C but has a short life, but it does a fine job with a
spool of polycarb loaded. I have a bed booster fitted, and a 36 volt, 800watt bed supply, can now hit 125C for
printing polycarb. My sheldon 11" x 56" now has 42 volt 3 phase closed loop motors, around 3x faster
& much quieter than the 24 volt regular steppers. Watching it run you'd swear Casper the ghost was turning
the cranks. My 4 axis 6040 gantry has 2 of these motors on Z & B axises. My G0704 has an A for its 4th. 500+
rpms, .1 degree accuracy. _______________________________________________ Emc-users mailing list
[email protected] https://lists.sourceforge.net/lists/listinfo/emc-users
_______________________________________________ Emc-users mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users