Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

Trying to understand Program Events for robot machining project

Hello everyone,

I am trying to understand the Program Events in the robot machining project window for a 3D printing project and I have a few questions regarding this matter. Any help is highly appreciated.

1) What is the program call parameter syntax when making a program call? For example, we have a default program named "Extruder(%1)" that we can implement in the post processor. I get that it catches the E value of a G-code instruction and send it to the post processor, but I don't understand the "%1" value. What do the "%" and "1" stand for? Any documentation available?

2) Can we catch more than one value via the "Call M code" event? If I have a G-code instructions that looks like "M104 S200 T0", I would like to be able to call a program as follow : "M_RunCode(104,200,0)". Is that possible? If not, can it be worked around?

3) Is it possible to customize the events such that it would be possible to make some calls to other existing G-code instructions?

Thank you very much for you help.

Hi Jean-François,

The Extruder(%1) call is added by RoboDK by default when the E value is present on a movement instruction. Most slicers output this value by default to drive the extruder hardware.

How are you generating your G-code for 3D printing?
You can intercept M codes and customize the output. If you place your mouse cursor over the text you'll see a message with some tips to customize the result:

Another option (if you can customize the G-code output) is to have one of the following lines in your G-code program. For example:

G02 X100 Y200 Y300
CALL ProgramCall(parameters,...)
CODE CodeInsert

This is not G-code standard but RoboDK will take it as a program call or a raw line in your program.

Another option is to customize output using the post processor. This requires some coding in Python but gives you more flexibility if you need to do specific calculations.
Hello Albert,

Thank you for you reply. I am generating my G-code using Simplify3D. I have a lot of flexibility for outputing my code, but I notice that RoboDK is using Slic3r. Do you see any advantages of using Slic3r via RoboDK instead of slicing in S3D and then importing the toolpath?

Also, I don't have the tooltips that you are refering to (see attached screenshot). Is it possible that I have an older version of RoboDK?



Hi JF,

You can always download the latest version of RoboDK on our website. Your license will be transferred automatically.
You should see this tip box by holding your pointer over the "Call M code" input box.

Have a good day.

Thanks, it worked indeed. Have a good day as well.

Hello all,

I am revisiting this thread to avoid creating a new one. 

Regarding the Program Event that sets the Extruder Feed, I was wondering if there was a way to include more than 3 decimals. Curently, I am slicing my parts with Simplify3D and importing the Gcode into RoboDK. Now, with S3D, all of the Extrusion values contain 4 decimals and I would like to keep those decimals without RoboDK to round these values.


Do you guys know if there is a way to do that?

Thank you for all your support.

Hi JF,

We'll improve this with our next version of RoboDK. Probably next week the latest. It will use the number of decimal places defined as position in the menu:


Thank you. I'm looking forward to the update.

Hello Albert,

Any ideas about when the udate will be available?

Hi JF,

I think it's already done, take a look at the last point from Nov 21st update.


Users browsing this thread:
2 Guest(s)