@jay_s_uk maybe you find some solution there: https://duet3d.dozuki.com/Wiki/Gcode#Section_M556_Axis_skew_compensation
Best posts made by Bipotronic
-
RE: Delta Frame Compensation
-
RE: Wrong Feedrate with Mukti Axis G-Code
@jay_s_uk i's not a 3D-Printer but a Duet controlled machine. I can't go int details.
The kinematic is configured as followed:
M669
Kinematics is Cartesian, no segmentation, matrix:
1.00 0 0 0
0 1.00 0 0
0 0 1.00 0
0 0 0 1.00 -
RE: External Trigger Error in RRF 3.5 and Later
@dc42 Thank you for your suggestions.
Indeed, the issue was caused by motor currents inducing some noise in the sensor cable.
I followed the procedure I described above and then simply sent an M18 command to disable the motor, and it worked fine. However, when I sent an M17 command to enable the motors again, the issue reoccurred.
I’ve since changed the wiring, and now everything works perfectly.
Thank you so much for your help!
Latest posts made by Bipotronic
-
RE: External Trigger Error in RRF 3.5 and Later
@dc42 Thank you for your suggestions.
Indeed, the issue was caused by motor currents inducing some noise in the sensor cable.
I followed the procedure I described above and then simply sent an M18 command to disable the motor, and it worked fine. However, when I sent an M17 command to enable the motors again, the issue reoccurred.
I’ve since changed the wiring, and now everything works perfectly.
Thank you so much for your help!
-
External Trigger Error in RRF 3.5 and Later
Hi all,
I'm experiencing strange issues with the external trigger. The trigger is configured with the following command: M581 T3 P1 S0 R0 in the config.g. The pin is configured using M950 J1 C"!1.io1.in" on a Duet3 Exp. 3HC. According to the configuration, I created a macro in the system file folder named trigger3.g.
trigger3.g file in the system folder contains:
echo "trigger3"
Now, when I power up the machine without homing, the trigger works as expected. If the input of Pin1 changes, the trigger is activated, and I get the following output in the console.
Trigger before homing:
So far so good!
But now it gets strange. When I home the machine, the trigger activates multiple times and doesn't shut off, regardless of whether the input at Pin1 changes or not. It’s as if the trigger is stuck in an infinite loop where it keeps getting activated.
Check the console output after the homing files are executed (pay attention to the timestamps):
The trigger activates randomly every second or two (sometimes multiple times per message) without any changes to the input of Pin1. The corresponding GPIO pin in the object model remains stable.I've already checked my homing files for the issue but couldn't find anything unusual; it's a pretty standard homing file.
homingall.g
M98 P"/sys/homex.g" M98 P"/sys/homez.g"
homigx.g
; home Y-Axis M98 P"/sys/homey.g" ; home X-Axis G91 G1 H2 Z10 F800 G1 H1 X-500 F2500 G1 X10 F6000 G1 H1 X-500 F360 G1 H2 Z-10 F800 G90 M400
homey.g
G91 G1 H2 Z10 F800 G1 H1 Y-500 F2500 G1 Y10 F6000 G1 H1 Y-500 F360 G1 H2 Z-10 F800 G90 M400
homez.g
M574 Z2 S1 P"!io3.in" ;Homing Z G1 H1 Z600 F2000 G91 G1 Z-10 F2000 G90 G1 H1 Z600 F800 G91 G1 Z-10 F800 G90 ; BL-Touch G1 X250 Y200 F10000 G1 Z20 F2000 G30 G1 Z150 F2000 M400
Here’s the troubleshooting I've already done:
-
Tried different RRF versions (works as expected in 3.4.6, but the problem occurs in 3.5 and later).
-
Tested a different sensor input, such as the X-axis endstop, to ensure a stable signal (same incorrect behavior).
-
Couldn't find any relevant notes in the changelog on GitHub.
Specs:
-
Duet 3 MB6HC 3.5.2
-
Duet 3 Expansion EXP3HC 3.5.2
-
Duet Web Control (DWC) 3.5.2
Does anyone have any ideas about what might be causing this? From my perspective, it seems to be related to RRF.
Thanks in advance!
-
-
RE: Combined Smart Effector and tool board for delta printers
I'd be interested in an Orbiter V2.0 or Bondtech LGX Lite or Revo Roto version.
-
RE: Error Message for "Controlled Arc Move" G2/G3
@dc42 is it possible to send you the config.g file via PN or Email because it's very sensetive to share on this platform.
-
Error Message for "Controlled Arc Move" G2/G3
Hello everyone,
I try to run an G-Code on my Printer which contains "Controlled Arc Moves" like G2 or G3.
If my G-Code has a coarse resolution it works fine. But if the segments are very small i get an error and the print get canceled!See G-Code example:
coares resolution:
G1 X224.550 Y107.950 F30000 G1 X224.550 Y167.050 E49.1068 F300 G2 X214.550 Y157.050 R10.000 G1 X165.450 Y157.050 E49.1068
fine resolution:
G1 X212.943 Y132.372 F30000 G1 X213.307 Y142.505 E0.1383 F300 G2 X212.777 Y142.510 R10.000 G1 X212.775 Y142.627 E0.1172 G2 X212.349 Y142.610 R10.000 G1 X212.342 Y142.727 E0.1171
Error message:
Now my suspicion is, that the Firmware calculates the G2 movment but at only one or two decimals of accurecy, so there will be a rounding issue and it will get Zero! Am i right?
What can i do to run this G-Code?
My Setup:
Board: Duet 3 MB6HC (MB6HC)
Firmware: RepRapFirmware for Duet 3 MB6HC 3.4.4 (2022-10-20) -
RE: Realtime Gcode Editing
@dc42 thank you for the answer. Make sense to approach it in SBC mode.
But also if i don't want to introduce additional hardware, is or will it be possible to do such changes in standalone mode too.
I'm thinking of timing the preheating process for toolchanger machines with tools in standbay mode. Or simular applications. -
Realtime Gcode Editing
Hi,
i'm just wondering, if it is already possible or intended to launch in the future to implement a realtime gcode editer into the RRF.
Right now, mostly an external post processor is used to change the gcode to the specific needs.
But would it be possible to let's say, impement a certain script which applies a modification to the gcode in future. So that the script is always about 200 lines ahead of the executed gcode and prepares it as to defined in the script.
This would eliminate the need of additional external software/postprocessors. Also it could take different actions for different tools without the need of the interaction of a user. All implemented in one Machine.
I would love to hear about wether if this feature would be useful or not?
-
RE: Wrong Feedrate with Mukti Axis G-Code
@T3P3Tony thanks for your reply. I will test it like you mentioned and report the result in a few days.
So i tested it with this configration, and now it works like it should:
M584 X0.0 E0.3:0.4 ; set drive mapping linear axes M584 A0.1 B0.2 C0.5 S1 ; set drive mapping rotational axes M350 X16 A16 B16 C16 E16:16 I1 ; configure microstepping with interpolation M92 X36.2 A28.5 B28.5 C15.0 E400.00:400.00 ; set steps per mm M566 X500.00 A500.00 B500.00 C500.00 E1200.00:1200.00 ; set maximum instantaneous speed changes (mm/min) M203 X20000.00 A20000.00 B20000.00 C20000.00 E1200.00:1200.00 ; set maximum speeds (mm/min) M201 X2000.00 A2000.00 B2000.00 C2000.00 E2500.00:2500.00 ; set accelerations (mm/s^2) M906 X1000 A1000 B1000 C1000 E800:800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout
My Gcode is "G91 G1 X500 A500 B500 C-500 F500" and the X-Axis moved 500mm in 1min.
@T3P3Tony Thank you very much for your help
-
RE: Wrong Feedrate with Mukti Axis G-Code
@T3P3Tony i've tried the following:
first, reassign the Axes X,Y,Z to A,B,C. I tried with and without the "R" and "S" Parameter.
Then sended : G91 G1 A500 B500 F500 -> movment took 1min24sec to finish.
config.g
M584 A0.0 B0.1 C0.2 R1 S1 ; set drive mapping rotational axes M584 U0.5 E0.3:0.4 ; set drive mapping linear axes M350 A16 B16 C16 U16 E16:16 I1 ; configure microstepping with interpolation M92 A36.2 B28.5 C28.5 U15.0 E400.00:400.00 ; set steps per mm M566 A500.00 B500.00 C500.00 U500.00 E1200.00:1200.00 ; set maximum instantaneous speed changes (mm/min) M203 A20000.00 B20000.00 C20000.00 U20000.00 E1200.00:1200.00 ; set maximum speeds (mm/min) M201 A2000.00 B2000.00 C2000.00 U2000.00 E2500.00:2500.00 ; set accelerations (mm/s^2) M906 A1000 B1000 C1000 U1000 E800:800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout
and i tried to set the X,Y,Z axes as rotational axes also with the "R" and "S" Parameter.
Then sended : G91 G1 X500 Y500 F500 -> movment took also1min24sec to finish.
M584 X0.0 Y0.1 Z0.2 R1 S1 ; set drive mapping rotational axes M584 U0.5 E0.3:0.4 ; set drive mapping M350 X16 Y16 Z16 U16 E16:16 I1 ; configure microstepping with interpolation M92 X36.2 Y28.5 Z28.5 U15.0 E400.00:400.00 ; set steps per mm M566 X500.00 Y500.00 Z500.00 U500.00 E1200.00:1200.00 ; set maximum instantaneous speed changes (mm/min) M203 X20000.00 Y20000.00 Z20000.00 U20000.00 E1200.00:1200.00 ; set maximum speeds (mm/min) M201 X2000.00 Y2000.00 Z2000.00 U2000.00 E2500.00:2500.00 ; set accelerations (mm/s^2) M906 X1000 Y1000 Z1000 U1000 E800:800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout
Maybe i configured it wrong?
-
RE: Wrong Feedrate with Mukti Axis G-Code
@T3P3Tony Ok, let's say the machine has two tasks to do. One is to move the X-Axis to 500mm with F500 mm/min. The second task is an interaction between the remaining axes.
So the effector movment is completly constrained on the X-Axis and is linear.I want to input the G-Code "G91 G1 X500 Y500 Z500 U-500 F500". The result should be, that X-Axis moves 500mm per minute. And the remaining axes do their movements independently.
The importand thing is, that the movements of all axes should be done simultainiously and consistent.