LatheEasyStep – experimental QtVCP macro for step-by-step lathe programming
- Becksvill
- Offline
- Elite Member
-
Less
More
- Posts: 206
- Thank you received: 103
05 Feb 2026 21:38 #342516
by Becksvill
Replied by Becksvill on topic LatheEasyStep – experimental QtVCP macro for step-by-step lathe programming
this looks awesome
and yes i agree its massively missing in linuxcnc
i have been trying for ages to get native cam running and can't
i find on semiens and fagor controls i use the contour cycle about 90 percent of the time
everything else like facing and shamfers etc i don't use as i can just do it in the contour cycle.
and of course threading is usefull
though the built in threading cycles are not too bad for that
cheers
Andrew
and yes i agree its massively missing in linuxcnc
i have been trying for ages to get native cam running and can't
i find on semiens and fagor controls i use the contour cycle about 90 percent of the time
everything else like facing and shamfers etc i don't use as i can just do it in the contour cycle.
and of course threading is usefull
though the built in threading cycles are not too bad for that
cheers
Andrew
Please Log in or Create an account to join the conversation.
- aDm1N
-
Topic Author
- Offline
- Senior Member
-
Less
More
- Posts: 51
- Thank you received: 20
01 Mar 2026 18:20 #343694
by aDm1N
Replied by aDm1N on topic LatheEasyStep – experimental QtVCP macro for step-by-step lathe programming
Hi all,
here is a short update on the latest changes in LatheEasyStep:
Step list loading issue fixed
In some embedded QtVCP scenarios, the operation list stayed empty after loading a single step or a full program. The operation list binding is now more robust.
Safer retract/free-travel logic (lathe-specific)
Retracts are now context-aware per operation:
simultaneous X/Z where safe
groove/keyway: retract X out of material first, then Z
drilling/threading: retract Z clear first, then X
Current tool position relative to stock/chuck is now considered.
Extended chuck / no-go safety model
The program header now supports chuck-related parameters (size, workpiece type, clamping mode, profile) with automatic no-go zone calculation.
New machine/workshop profiles
Quick presets apply typical parameter combinations automatically (e.g. chuck + clamping mode + profile).
Preview improvements
The chuck safety area is now shown in the preview as a dedicated colored zone, including a legend entry.
Save/load extended
New header fields (chuck/profile/no-go/machine profile) are now properly persisted and restored.
here is a short update on the latest changes in LatheEasyStep:
Step list loading issue fixed
In some embedded QtVCP scenarios, the operation list stayed empty after loading a single step or a full program. The operation list binding is now more robust.
Safer retract/free-travel logic (lathe-specific)
Retracts are now context-aware per operation:
simultaneous X/Z where safe
groove/keyway: retract X out of material first, then Z
drilling/threading: retract Z clear first, then X
Current tool position relative to stock/chuck is now considered.
Extended chuck / no-go safety model
The program header now supports chuck-related parameters (size, workpiece type, clamping mode, profile) with automatic no-go zone calculation.
New machine/workshop profiles
Quick presets apply typical parameter combinations automatically (e.g. chuck + clamping mode + profile).
Preview improvements
The chuck safety area is now shown in the preview as a dedicated colored zone, including a legend entry.
Save/load extended
New header fields (chuck/profile/no-go/machine profile) are now properly persisted and restored.
The following user(s) said Thank You: Surmetall
Please Log in or Create an account to join the conversation.
- aDm1N
-
Topic Author
- Offline
- Senior Member
-
Less
More
- Posts: 51
- Thank you received: 20
01 Mar 2026 20:02 - 01 Mar 2026 20:04 #343695
by aDm1N
Replied by aDm1N on topic LatheEasyStep – experimental QtVCP macro for step-by-step lathe programming
As a bit of background on the chuck/no-go safety model:At work I requested a machine with a control that includes an integrated safety zone around the chuck (something I had seen on Heidenhain controls).
In the end, I was assigned a lathe with a Siemens control, and I’ve been very satisfied with it — it works well in practice and I can program effectively on it.However, the concept of having the chuck geometry considered in the motion/safety logic stayed in the back of my mind.
Since that idea seemed useful for safe at-the-machine programming, it eventually found its way into LatheEasyStep’s design.
In the end, I was assigned a lathe with a Siemens control, and I’ve been very satisfied with it — it works well in practice and I can program effectively on it.However, the concept of having the chuck geometry considered in the motion/safety logic stayed in the back of my mind.
Since that idea seemed useful for safe at-the-machine programming, it eventually found its way into LatheEasyStep’s design.
Last edit: 01 Mar 2026 20:04 by aDm1N.
The following user(s) said Thank You: tommylight, Surmetall
Please Log in or Create an account to join the conversation.
- aDm1N
-
Topic Author
- Offline
- Senior Member
-
Less
More
- Posts: 51
- Thank you received: 20
05 Jul 2026 12:35 #347529
by aDm1N
Replied by aDm1N on topic LatheEasyStep – experimental QtVCP macro for step-by-step lathe programming
Hi all,
another short update on LatheEasyStep:
I continued working on the embedded QtVCP startup behavior and focused on the panel initialization path.
On my machine, the startup time with the panel embedded in LinuxCNC was reduced from about 49 seconds down to about 11 seconds.
The main work was cleaning up the widget lookup/initialization path, removing expensive startup overhead, and limiting panel-related searches strictly to the panel itself instead of doing broader lookups.
The panel is now usable again immediately after startup on my system, which is a big improvement compared to the previous state.
I will continue cleaning up the code step by step, but this was an important milestone because the panel is now much more practical to use in everyday work.
Regards
another short update on LatheEasyStep:
I continued working on the embedded QtVCP startup behavior and focused on the panel initialization path.
On my machine, the startup time with the panel embedded in LinuxCNC was reduced from about 49 seconds down to about 11 seconds.
The main work was cleaning up the widget lookup/initialization path, removing expensive startup overhead, and limiting panel-related searches strictly to the panel itself instead of doing broader lookups.
The panel is now usable again immediately after startup on my system, which is a big improvement compared to the previous state.
I will continue cleaning up the code step by step, but this was an important milestone because the panel is now much more practical to use in everyday work.
Regards
The following user(s) said Thank You: Surmetall
Please Log in or Create an account to join the conversation.
- Surmetall
-
- Online
- Senior Member
-
Less
More
- Posts: 53
- Thank you received: 35
05 Jul 2026 13:18 #347530
by Surmetall
Replied by Surmetall on topic LatheEasyStep – experimental QtVCP macro for step-by-step lathe programming
Thanks for the update! We'd love to see how things are looking now. Maybe you could share a short video or a screen recording someday.
all the best
tom
all the best
tom
Please Log in or Create an account to join the conversation.
- aDm1N
-
Topic Author
- Offline
- Senior Member
-
Less
More
- Posts: 51
- Thank you received: 20
09 Jul 2026 04:34 #347621
by aDm1N
Replied by aDm1N on topic LatheEasyStep – experimental QtVCP macro for step-by-step lathe programming
Hello everyone,I wanted to give a small update on the current state of Lathe EasyStep.A lot has changed internally since my last post. While the panel may look similar at first glance, a large part of the project has been refactored and modularized. The original large Python files have been split into many smaller modules (G-code generation, preview, contour handling, persistence, tool logic, UI, etc.), making the codebase much easier to maintain and extend.At this point I consider the project to be at Version 0.7.0.Development is still ongoing, but over the last weeks the focus has been less on adding new features and more on improving the internal architecture, modularizing the code and refining the overall workflow. The goal was to build a solid foundation that will make future development easier and improve long-term maintainability.General workflowThe user interface is intentionally based on the workflow of conversational turning systems. Anyone who has worked with ShopTurn or similar conversational programming systems should feel familiar with the basic workflow.The Program tab is where all global settings are defined, for example:
- stock dimensions
- safety distances
- retract positions
- tool change and safety settings
- other program-wide parameters
- the individual Step files,
- the complete program,
- and any previously generated G-code.
- Facing (roughing, finishing or both)
- Roughing using user-defined contours
- Thread cutting
- Grooving / Parting
- Drilling with different drilling strategies
- Keyway shaping (currently experimental)
The following user(s) said Thank You: MikkelRS
Please Log in or Create an account to join the conversation.
Moderators: cmorley
Time to create page: 0.100 seconds