Should I consider Machinekit?

210 views
Skip to first unread message

Anthony Clay

unread,
Jun 27, 2020, 12:49:04 AM6/27/20
to Machinekit
Greetings,

I've been reading the documentation and browsing the repo for machinekit, and I'm trying to determine if machinekit is what I'm looking for. Here's my use case.

I'm building a "big" SMT pick and place machine.  I hope to use Mesa anything i/o for interfacing, big stepper drives, linear encoders, and a number of sensors and other actuators, along with a communications bus for feeders.  Instead of using 3d printer firmwares, I'd prefer a linuxcnc-like interface for the machine itself - with visual elements for sensors like pressure/vacuum sensors, etc.  Also, I'll have to have G/M codes for "all of the things".  For the jobs themselves, I plan to use openpnp.  This will require some kind of driver to pipe gcode commands in MDI from openpnp to the linuxcnc stack. (I know there's a few more steps 

My question is, should I be looking towards machinekit/machinetalk to accomplish this? Or should I just default to linuxcnc and python/nml?  (I'm hard-pressed to tell the difference between the two!) What is the difference? I'm seeing things that imply that machinekit can be used for machines that aren't specifically cutting machines, but very few examples.

Thanks!

justin White

unread,
Jun 27, 2020, 2:23:34 AM6/27/20
to Anthony Clay, Machinekit
What kind of host machine are you using? Machinekit has better support for Beaglebones and some other ARM boards but I believe LinuxCNC is probably better with RaspberryPi's specifically.

MK was forked from LinuxCNC long ago, hence the similarities.

LinuxCNC has better Mesa support, Machinekit is (or was as of a couple months ago at least) behind with Mesa support and I'm not sure that it was a priority  to bring up. Newer Mesa cards may not work. LinuxCNC has split the Joint's and Axis separately so there's probably a bit more you can do with multi-motor axes than MK. Machinekit went after alot of innovative features like remote UI's (though I've never gotten any going) and does alot of niche things that LinuxCNC never jumped into. LinuxCNC has a bigger community and tends to be more solidly planted on developement, MK just moves and doesn't look back. 3D printers are big in Machinekit.

I'm probably not doing MK much justice with the above explanation so someone else can maybe point out the things that may be helpful to your machine, I'm bipartisan but I actually use LinuxCNC alot more. Both MK and LCNC can do anything that has something to do with running motors, positioning, interpreting Gcode, reading sensors, etc. Both have the same abillity for you to create a custom GUI for and write a Python interface  or custom hal components for, the differences in those regards are semantic. You mentioned NML, I know MK has long had the goal of replacing it but I don't really know why. It's still there but I guess it's obfuscated with a Machinetalk wrapper or something.

LinuxCNC is popular for machine-tools, Machinekit is popular for smaller machines, though both could do either. When you're doing something custom you may as well throw it all out the window because they basically become a toolbox for you to do whatever you can manage. No idea what became of it but I've seen people talking of creating PNP machines on the LinuxCNC forum so you might want to look into it.

--
website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit
---
You received this message because you are subscribed to the Google Groups "Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to machinekit+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/machinekit/a106563b-dd58-44b5-a5ea-d48f7a38d3e6o%40googlegroups.com.

justin White

unread,
Jun 27, 2020, 2:48:59 AM6/27/20
to Anthony Clay, Machinekit

John Morris

unread,
Jun 28, 2020, 12:56:32 AM6/28/20
to machi...@googlegroups.com


On 6/27/20 12:49 PM, Anthony Clay wrote:
>
> I'm building a "big" SMT pick and place machine.  I hope to use Mesa
> anything i/o for interfacing, big stepper drives, linear encoders, and a
> number of sensors and other actuators, along with a communications bus
> for feeders.  Instead of using 3d printer firmwares, I'd prefer a
> linuxcnc-like interface for the machine itself - with visual elements
> for sensors like pressure/vacuum sensors, etc.  Also, I'll have to have
> G/M codes for "all of the things".  For the jobs themselves, I plan to
> use openpnp.  This will require some kind of driver to pipe gcode
> commands in MDI from openpnp to the linuxcnc stack. (I know there's a
> few more steps

Machinekit has the Machinetalk wrapper that provides an interface for
remote interaction, including a facility for sending remote MDI commands
and uploading and running .ngc files.

At the moment, however, this project is moving towards porting the
LinuxCNC EMC application to run on Machinekit HAL. While this appears
to be working, the Machinetalk wrapper hasn't yet been ported over, AFAIK.

Until that work is finished, I don't see an advantage to your using MK
in your application.

> My question is, should I be looking towards machinekit/machinetalk to
> accomplish this? Or should I just default to linuxcnc and python/nml?
> (I'm hard-pressed to tell the difference between the two!) What is the
> difference? I'm seeing things that imply that machinekit can be used for
> machines that aren't specifically cutting machines, but very few examples.

Neither Machinekit nor LinuxCNC have any built-in support for PNP
machines, AFAIK. This application is something you'll have to integrate
yourself. There are probably others who have done some of this in the
past; search the LCNC forums.

John

eaz...@eazycnc.com

unread,
Jul 2, 2020, 4:44:33 AM7/2/20
to machi...@googlegroups.com
Hi,


I have bought two WHB04B-4 pendants to interface with my own software
that is running on macOS. They sort of work, but not really,
and I would like to test them with "known good software" to eliminate
hardware problems. Or software problems for that matter.


I came across follwoing which I thought looks like exactly what I need.


http://www.machinekit.io/docs/drivers/xhc-whb04b-6/

I'm totally noobie when it comes to Machine kit, can anyone give me
pointers on how to proceed about getting this component to
compile and run with minimal effort?

I've put some hours into installing a few version of Linux
and trying to compile from scratch but I always seem to end up
in some dark allay and cannot find my way out.

wbr Kusti


Reply all
Reply to author
Forward
0 new messages