Dexarm cannot draw a perfect circle (prints squashed, etc)

Firmware 2.1.6.
Studio 0.1.6.

Dexarm draws an oval instead of circle.
Laser also produces oval and 3D prints are squished.

It’s about a -5% deviance in the Y axis.

My source is an SVG with a circle element, imported into Rotrics studio.

Hi. The wrong size is often related to the front-end module size setting.Is there a big difference between the diameter of the pen you use and the pen we provide.Please provide the photo of you using pen module.
You can also refer this link:

Many of your pages’ URLs contain a dot as the last character, but that is not contained when you give a link, this is missed out and leads to a “Page not found” error. Please fix this.



I get exactly the same deviance with 3D printing, laser and the pen module so the deviance can’t be related to the diameter of the pen.

I will try to recalibrate the arm to see if that makes a difference.

Here is a photo of the pen next to the pen the arm shipped with. They are very similar in size.

DexArm is different from Cartesian 3D printers. He needs to perform the inverse solution calculation, where the length of the front-end module is an important parameter.

We have developed a compensation calculation function, I will find it and send it to you next week

1 Like

I would need it too, same with me…

Me too please! :slight_smile: :slight_smile:

Why not just implement that function in the software, when everyone will need it sooner or later?

1 Like

Good Idea!

@duzhipeng Allow an option to set a custom effector length! (PS: still waiting for the compensation calculation function)

I would like that tool as well. I too see that X and Y are not perfect when drawing a circle.

Please keep working and making the product better and better!

I also see slight Z variation when moving X and Y using G code.

Must be a reverse kinematics issue of some sort.

1 Like

Hi - any news on this? I have a new laser module and need to set custom offsets as the geometry is off.

Hi,all @Cookieman @Master68 @Eldkatten @Phillip @alexsanf
This is the latest solution:
1.Find a plane as flat as possible
2.Update the latest firmware(2.1.10), clear the coefficient use M891 X0 Y0. Re_powerup Dexarm.
3.Move Dexarm to HOME Position by HOME button or M1112 Command.
4.Get the actual distance between G0 X75 Y300 & G0 X-75 Y300.You can use a pen to make a point on the paper.(Considering the deviation of the pen module, please do not draw a line, but use the vertical draw dot.)
5.Send M888 P5 Tn An by terminal of Rotrics studio. Tn is your target distance, An is your actual distance. Like me use M888 P5 T150 A148, 148 is my actual distance. Target distance must be greater than 100, 150 is suggested.
6.Then Re_powerup Dexarm,use as normal.
7.Please note that if M888 P0-4 is resend, the calibrated module_offset value will be overwritten to the original factory setting.

Hi, would be nice to implement thatin the next Studio Version :wink:

1 Like

Thanks for the instructions.

I’m still getting a deviance, but now in the X axis. About 2mm less than actual.
I’ve followed the instructions to the letter, multiple times and each time it is 2mm less than the drawing should be.

I have definitely restarted the arm at each “Re_power” step too.

If your gcode file contains M888 P0-4, the re-calibration module offset will be clear and be set to P0-4.

You need to replace M888 P0-4 with M888 P5 Tn An, or delete M888 P0-4.

Yep, I checked. The GCode generated with Rotrics Studio doesn’t contain M888 P0-4.

This is the GCode:

;----------- Start Gcode -----------
M2000;custom:line mode
M888 P0;custom:header is write&draw
G0 Z5
G0 F2000
G1 F2000
G0 X49.94 Y300.00
G1 Z0
G1 X49.92 Y298.71
G1 X49.79 Y296.16
G1 X49.54 Y293.64
G1 X49.16 Y291.16
G1 X48.66 Y288.72
G1 X48.05 Y286.33
G1 X47.32 Y283.98
G1 X46.48 Y281.69
G1 X45.53 Y279.45
G1 X44.48 Y277.26
G1 X43.32 Y275.14
G1 X42.07 Y273.08
G1 X40.73 Y271.09
G1 X39.29 Y269.17
G1 X37.76 Y267.32
G1 X36.15 Y265.54
G1 X34.46 Y263.85
G1 X32.68 Y262.24
G1 X30.83 Y260.71
G1 X28.91 Y259.27
G1 X26.92 Y257.93
G1 X24.86 Y256.68
G1 X22.74 Y255.52
G1 X20.55 Y254.47
G1 X18.31 Y253.52
G1 X16.02 Y252.68
G1 X13.67 Y251.95
G1 X11.28 Y251.34
G1 X8.84 Y250.84
G1 X6.36 Y250.46
G1 X3.84 Y250.21
G1 X1.29 Y250.08
G1 X0.00 Y250.06
G1 X-1.29 Y250.08
G1 X-3.84 Y250.21
G1 X-6.36 Y250.46
G1 X-8.84 Y250.84
G1 X-11.28 Y251.34
G1 X-13.67 Y251.95
G1 X-16.02 Y252.68
G1 X-18.31 Y253.52
G1 X-20.55 Y254.47
G1 X-22.74 Y255.52
G1 X-24.86 Y256.68
G1 X-26.92 Y257.93
G1 X-28.91 Y259.27
G1 X-30.83 Y260.71
G1 X-32.68 Y262.24
G1 X-34.46 Y263.85
G1 X-36.15 Y265.54
G1 X-37.76 Y267.32
G1 X-39.29 Y269.17
G1 X-40.73 Y271.09
G1 X-42.07 Y273.08
G1 X-43.32 Y275.14
G1 X-44.48 Y277.26
G1 X-45.53 Y279.45
G1 X-46.48 Y281.69
G1 X-47.32 Y283.98
G1 X-48.05 Y286.33
G1 X-48.66 Y288.72
G1 X-49.16 Y291.16
G1 X-49.54 Y293.64
G1 X-49.79 Y296.16
G1 X-49.92 Y298.71
G1 X-49.94 Y300.00
G1 X-49.92 Y301.29
G1 X-49.79 Y303.84
G1 X-49.54 Y306.36
G1 X-49.16 Y308.84
G1 X-48.66 Y311.28
G1 X-48.05 Y313.67
G1 X-47.32 Y316.02
G1 X-46.48 Y318.31
G1 X-45.53 Y320.55
G1 X-44.48 Y322.74
G1 X-43.32 Y324.86
G1 X-42.07 Y326.92
G1 X-40.73 Y328.91
G1 X-39.29 Y330.83
G1 X-37.76 Y332.68
G1 X-36.15 Y334.46
G1 X-34.46 Y336.15
G1 X-32.68 Y337.76
G1 X-30.83 Y339.29
G1 X-28.91 Y340.73
G1 X-26.92 Y342.07
G1 X-24.86 Y343.32
G1 X-22.74 Y344.48
G1 X-20.55 Y345.53
G1 X-18.31 Y346.48
G1 X-16.02 Y347.32
G1 X-13.67 Y348.05
G1 X-11.28 Y348.66
G1 X-8.84 Y349.16
G1 X-6.36 Y349.54
G1 X-3.84 Y349.79
G1 X-1.29 Y349.92
G1 X0.00 Y349.94
G1 X1.29 Y349.92
G1 X3.84 Y349.79
G1 X6.36 Y349.54
G1 X8.84 Y349.16
G1 X11.28 Y348.66
G1 X13.67 Y348.05
G1 X16.02 Y347.32
G1 X18.31 Y346.48
G1 X20.55 Y345.53
G1 X22.74 Y344.48
G1 X24.86 Y343.32
G1 X26.92 Y342.07
G1 X28.91 Y340.73
G1 X30.83 Y339.29
G1 X32.68 Y337.76
G1 X34.46 Y336.15
G1 X36.15 Y334.46
G1 X37.76 Y332.68
G1 X39.29 Y330.83
G1 X40.73 Y328.91
G1 X42.07 Y326.92
G1 X43.32 Y324.86
G1 X44.48 Y322.74
G1 X45.53 Y320.55
G1 X46.48 Y318.31
G1 X47.32 Y316.02
G1 X48.05 Y313.67
G1 X48.66 Y311.28
G1 X49.16 Y308.84
G1 X49.54 Y306.36
G1 X49.79 Y303.84
G1 X49.92 Y301.29
G1 X49.94 Y300.00
G0 Z5
G0 X0.10 Y352.00
G1 Z0
G1 X0.10 Y248.00
G0 Z5
G0 X52.00 Y299.90
G1 Z0
G1 X-52.00 Y299.90
G0 Z5
G0 X0.00 Y300.00
;----------- End Gcode -------------

I’m still getting about 2mm loss of width along the X Axis.

There is “M888 P0;custom:header is write&draw” in gcode file.
So you should remove or edit this line.
We will add recalibration custom module function into RotricsStudio later.

@duzhipeng is it possible to override the default values for P0-P4 modules? (I think Rotrics Studio is most likely setting up M888 when you switch between 3d print/laser/pen, also, your procedure describing how to use Cura slicer contains M888 P3 in the section for the G-Code send at the beginning -

Are you planning on making some more permanent fix for this issue?

Yes, we will add a function to override default values for P0-P4 modules later.
Like M888 P0 T150 A148, it will override the P0 offset.