G-code transpiling

More
30 Apr 2024 02:20 #299370 by crazycasta
I'm building an FPGA based motion controller that will perform very simple actions (linear moves and arcs). I plan to have it implement a small set of G-code, likely something like G00, G01, G02, G03, G04, G20/G21 depending on the native units of the machine, G38.*, G90, M3, M4, M5, M7, M8, M9, F and S. I'm looking for some other application to do all the other work like cutter compensation, keeping track of tools, handling relative moves, etc. Is there a good layer to introduce this into LinuxCNC and take advantage of everything LinuxCNC has to offer? Does this functionality already exist, if not do I want to be making something at the driver level? I've looked around a bit, but don't know LinuxCNC that much so I could easily have missed something.

Please Log in or Create an account to join the conversation.

More
30 Apr 2024 04:35 #299372 by cornholio
Replied by cornholio on topic G-code transpiling
It's already there, I suggest you read the documentation to see what's available and what Linuxcnc actually does.
linuxcnc.org/docs/stable/html/
Linuxcnc does everything. An FPGA that interprets gcode is not what Linuxcnc works with, all the planning and interpretation is performed by Linuxcnc. Is is unlike the GRBL model where the PC is just used for sending gcode via serial (usb to serial)
What an FPGA or any external board is useful for is step\direction generation based on timing sent by Linuxcnc.

linuxcnc.org/docs/stable/html/

Please Log in or Create an account to join the conversation.

More
30 Apr 2024 15:24 #299405 by crazycasta
Replied by crazycasta on topic G-code transpiling
Yes, I know what LinuxCNC *can* do with directly driving things, but that's not at all what I want. You say "it's already there", but it's not. This is the exact opposite of what I want.

Please Log in or Create an account to join the conversation.

More
30 Apr 2024 16:55 #299409 by jmelson
Replied by jmelson on topic G-code transpiling
Well, we don't quite understand what you want. LinuxCNC can run machines with software-generated steps, but it can also run them with FPGA-assisted steps, analog velocity control or PWM servos. Mesa and Pico Systems (full disclosure, that's my products) supports all 3 ways to do it.
Properly doing the full G-code motion planning, timestep interpolation, cutter compenstion, etc. in an FPGA is going to be quite difficult.
Jon
The following user(s) said Thank You: cornholio

Please Log in or Create an account to join the conversation.

More
30 Apr 2024 17:14 #299410 by cornholio
Replied by cornholio on topic G-code transpiling
With how you want to do things, Linuxcnc is not appropriate.

What it appears what you want is a “gcode sender” with extra functionality.

A lot of work has gone into the trajectory planner, work that Tormach contributed to, and you want to not take advantage of that.

Whilst I think the idea of having an interpreter on a FPGA it’s not something that would integrate with Linuxcnc. In fact it would be in opposition of the core idea.

Basically what you propose is GRBL type support for Linuxcnc .

Please Log in or Create an account to join the conversation.

Moderators: PCWjmelson
Time to create page: 0.109 seconds
Powered by Kunena Forum