Maslow Home Maslow Community Garden Newsletter

Adding kinematicsType for XY machine


Hey guys…

Im messing with my maslow and am trying to turn it into a really cheap XY machine using as much original maslow gear as possible, but attempting to get the 1/64" accuracy we get in the middle, across the entire sheet.

I know this has been talked about before etc, and i dont wanna start a discussion about it here but wanna talk about the code.

I read through the whole lot last night, and as far as i can tell, to do what i want (and make it usable for others, as thats the open source idea) i should create a new kinematicsType for XY, add a new function to the kinimatics code to turn XY into chain lengths, and thats about it?

The triangularInverse function has some easy enough maths to follow for all the chain length compensation etc, so i can just copy all of that.

Are there any pit falls i should be aware of? i havent spent a lot of time looking at the code, and im staill building the frame so wont have any time to look at it until tomorrow i guess, after i (hopefully) finish the frame.

Just putting it out there, is there anyone who knows the code intensely well that feels like adding XY to it? it seems like it should be pretty easy for someone who knows whats actually going on :stuck_out_tongue: and would be cool to have it work once i finish the frame. No biggy if you cant, seems like it should be reasonably straight forward.

Frame wise, imagine a DIY panel saw that moves in X and Y with some motors and chains basically… Im hoping it gets rid of the had maths, and adds accuracy across the board for not much more money. ANd if it doesnt work, i’ll build a normal maslow and use the frame im making now as a panel saw :slight_smile:


I’m not certain, but I think that with these step-direction controllers to drive the gearmotors you could use LinuxCNC software to run the gcode. There really isn’t any need for the Maslow firmware or GroundControl in a machine that doesn’t use quadrilateral or triangular Kinematics.

Porting to faster hardware

From my understanding the maslow code interprids normal gcode and its the arduino that converts to funny angles, so should be able to use everything but have it not convert to funny angles and just drive it as a normal xy machine?


allof the triangular calculations would be meaningless if you are talking about
a traditional XY kinematics.

But if you are wanting to build a more traditional machine, instead of modifying
the Maslow firmware to support different kinematics, you would be far better off
modifying grbl to support motors/encoders instead of steppers.

grbl has a much more mature g-code parser, it’s got a good acceleration planner
(something maslow really needs), and it’s got a much larger community supporting

grbl also supports both traditional and corexy kinematics.

We have an ongoing desire to try and leverage/merge the maslow specific things
into grbl to take advantage of it’s features (and support in CAM software), so
work to support it advances the long-term goals of the Maslow project.

David Lang

1 Like

That sounds right to me! Having an option to choose regular XY kinematics from the settings drop down would be a few more steps, but is still pretty straight forwards.

Please make a PR when you get it running, I think it would be great to give people the option to play around with making different types of machines. As much as the Maslow hardware isn’t designed for an XY machine it could be a fun an easy way to play around with building one


Would be a way to upgrade - a flatbead machine with a bit more stability and not have to change the software system