Advanced Search

Search Results (Searched for: )

  • ewlsey
  • ewlsey
06 Apr 2026 15:17
Cubic Interpolator was created by ewlsey

Cubic Interpolator

Category: General LinuxCNC Questions

Can someone help me understand how the cubic interpolator works? There doesn't seem to be any documentation explaining what it does. The only things I can find are for the old exact stop trajectory planner. 

As far as I can tell control.c queries the trajectory planner, runs that data through the kinematics, then creates joint->coarse_pos data and adds it to cubic.c, which is the interpolator. It seems to repeat that until the interpolator is full. 

Then it runs cubicInterpolate() which I guess takes joint->coarse_pos and interpolates it into joint->pos_cmd. 

What are the course positions and where do they come from? Are they the beginning and end of a g code move or smaller segments created by the trajectory planner?

What is the interpolator doing? It seems to be trying to create a cubic spline, but what are the way points and were do they come from? How many points does it need? 

On that note, is there something I'm missing that runs faster than the 1ms servo loop that needs position and velocity data from an interpolator?

Hopefully someone knows. The control.c program is full of comments to the effect of "this is how I think it works". 
  • jetbadger
  • jetbadger
06 Apr 2026 14:50
Replied by jetbadger on topic Lathe C axis homing

Lathe C axis homing

Category: General LinuxCNC Questions

I was not able afterall to get the C axis to behave with the previous setup. It would home and reach setpoints very well, but after going into spindle mode and back into Caxis mode it hunts for home position in almost a comical way no matter how much I played around with the PID values for the orient thingy and I couldn't wrap my head around the multiple gains for it.

I will try your config, @spumco. Ended up pretty much copy/pasting your's and atleast on the bench it starts up so I'll see if I can figure it out on the actual machine. 

From what I gather, logic.s0free should be an AND device, so with personality=0x105? Maybe there are other essential things there? I assume SPIN0-xx  signals are distributed in another file?
 
  • ewlsey
  • ewlsey
06 Apr 2026 14:49
Replied by ewlsey on topic LinuxCNC S-Curve Accelerations

LinuxCNC S-Curve Accelerations

Category: General LinuxCNC Questions

Unless I'm not understanding some fundamental concept, isn't that how it already works?

You can't cheat the actual physics. Any corner 90 degrees or less will require a nearly full stop to achieve the P tolerance. The more acute the angle, the smaller the blend radius you can have to satisfy the P tolerance, and the closer to a full stop the machine has to come.

Put another way, centripetal acceleration, jerk, snap, crackle, etc depend only on velocity and radius. If you want to follow a constant radius at a constant velocity, the acceleration, jerk, etc will be constant. Only their direction changes, not their magnitude.

The only way to reduce jerk in a corner is to reduce the velocity or increase the radius.

An option, which has been discussed earlier, is an "egg" shaped corner radius where the jerk increases to a maximum at the middle. That might be preferable since at the midpoint the jerk force is shared by both axes. You could accomplish roughly the same thing by decelerating before the radius, accelerating toward the midpoint and decelerating again before the exit.

Another option would be to permit higher centripetal jerk than straight line jerk. This would be similar to input shaping used in 3D printers.

I don't see how much can be gained here. Fancy blending algorithms will be too slow to benefit the fast machines they are intended to benefit.
  • clayton2ndtry
  • clayton2ndtry
06 Apr 2026 14:22

LinuxCNC not working with new 64-bit desktop and parallel port

Category: General LinuxCNC Questions

Searching for guidance gave me only a sensation that the parallel port might have the wrong address. Supergrok saved the day. It helped me find that the built-in parallel poets are at 0x3F8. This rang a bell from when I wrote a terminate-and-stay-resident PC-DOS (stop laughing) program that intercepted data going to the parallel port and converted Epson control codes to Postscript. It was wonderfully elegant in how it allowed programs with no Postscript support to use Apple LaserWriters

Changing one of the LinuxCNC setup files to talk to the parallel printer at 0xC010 and problem is solved.
  • endian
  • endian's Avatar
06 Apr 2026 13:39
Replied by endian on topic LinuxCNC S-Curve Accelerations

LinuxCNC S-Curve Accelerations

Category: General LinuxCNC Questions

Jerk-Aware Full-Stop Fallback (The "G64.1" Proposal) - is possible solution but what if ...

Path Tolerance Splining (Point Compression): Instead of treating the corner as a "sharp" mathematical point, use the G64 P tolerance to convert the corner into a tiny, high-order polynomial curve (spline). This gives the "train" a physical radius to turn on, spreading the Jerk over several segments even at high speed?.... it should plan for the re-parameterized spline. By doing this, the "junction" disappears, and the Jerk limit is satisfied over a distance (the spline radius) rather than a single 1ms step. - but comp-power consuption will be high

or look-ahead Acceleration Pre-Smoothing...Use the look-ahead buffer to start the direction change "rotation" slightly before the actual vertex. By "bleeding" the X-axis velocity into the Y-axis earlier, you reduce the magnitude of the step-change at the corner. "Bell-shaped acceleration" or "Jerk-limited FIR filtering." - but not actual timing 

or second much faster thread which will handle just calculation to fine result .. as Taylor Series expansion to "fill in the gaps" between those 1ms updates: P(t) = P_0 + V_0 \Delta t + \frac{1}{2} A_0 \Delta t^2 ... This should ensure that the drive receives a perfectly smooth 4kHz or 8kHz stream, effectively making the Jerk "infinite" at the digital level but "finite" and smooth at the physical level ?
  • jschulze
  • jschulze
06 Apr 2026 11:49
Replied by jschulze on topic Pico Systems Servo Controller

Pico Systems Servo Controller

Category: User Exchange

Hi,
Sorry, just saw your reply. I'm happy to send it just for whatever it costs to ship. If you could get me an address I'll try to figure out a shipping cost.
  • andrax
  • andrax's Avatar
06 Apr 2026 10:32
Replied by andrax on topic Ethercat random jitter fix

Ethercat random jitter fix

Category: EtherCAT

I’ve been following this thread with interest all along. What surprises me, though, is that I haven’t experienced the jitter issues described so far. I’d be interested to know what hardware you’re using. Perhaps there’s a correlations 
  • andrax
  • andrax's Avatar
06 Apr 2026 10:24
Replied by andrax on topic Help with Lichuan drives

Help with Lichuan drives

Category: EtherCAT

First, show us what you’ve got and where you’re at. Your XML and ini files. If you’ve got any errors, include the dmesg output as well.I’m sure we can help you
  • Hakan
  • Hakan
06 Apr 2026 09:03
Replied by Hakan on topic Help with Lichuan drives

Help with Lichuan drives

Category: EtherCAT

Don't know where to start.
Here is an example of setup of a cia402 drive, your servo drive is a cia402 drive.
This is a starting point. Change vid and pid and this might work right away.

github.com/dbraun1981/hal-cia402/tree/main/example
  • HansU
  • HansU's Avatar
06 Apr 2026 08:05

LinuxCNC not working with new 64-bit desktop and parallel port

Category: General LinuxCNC Questions

You could first check if your parallel port is properly installed.

The command
lspci
should list a device with LPC Controller or LPT Controller or similar.
  • Sierevello
  • Sierevello
06 Apr 2026 02:49
Gibbscam Post Processor was created by Sierevello

Gibbscam Post Processor

Category: General LinuxCNC Questions

I am converting my machine to Linuxcnc and currently use Gibbscam. Does anyone else here use Gibbscam and is there a current post processer for Gibbscam for use with Linuxcnc.

Thank You,
Steve
  • Lcvette
  • Lcvette's Avatar
05 Apr 2026 23:15
Replied by Lcvette on topic Add Buttons in Probe Basic

Add Buttons in Probe Basic

Category: QtPyVCP

Happy to help, glad you got it sorted!!
  • Lcvette
  • Lcvette's Avatar
05 Apr 2026 23:14
  • Lcvette
  • Lcvette's Avatar
05 Apr 2026 23:13
Replied by Lcvette on topic probe basic m6 error

probe basic m6 error

Category: QtPyVCP

Good catch! Glad you figured it out!
  • clayton2ndtry
  • clayton2ndtry
05 Apr 2026 22:20

LinuxCNC not working with new 64-bit desktop and parallel port

Category: General LinuxCNC Questions

I wanted a more modern version than 2.7.15, mostly because the builrtn browser was so ancient that many websites refused to work with it. 2.9.8 needed a 64-bit processor. Someone gave me a 64-bit desktop. I only needed to put a PCIe parallel port in it. Okay, 2.9.8 installed in a system with gobs of RAM and SSD storage. Everything is connected as it was before but no axes move. When I run latency test, I get max jitter of 30,381 on Servo thread. 60,354 on Base Thread.

I wonder if the parallel port card is defective. How would I test that?
Displaying 121 - 135 out of 17380 results.
Time to create page: 0.298 seconds
Powered by Kunena Forum