machinekit / EMCApplication

Machinekit Featured Application for Enhanced Motion Controller from LinuxCNC
GNU General Public License v2.0
14 stars 12 forks source link

Running the EMCApplication atop the Machinekit-HAL backend #1

Open cerna opened 4 years ago

cerna commented 4 years ago

This is preview/beta version

This repository is (somewhat working) culmination of long-standing discussions and struggles to get the Enhanced Motion Controller from LinuxCNC to run with Machinekit-HAL backend. (Most recently discussed in issue machinekit/machinekit-hal#267.)

Given the fact that most work in Machinekit went to the portion which then became the Machinekit-HAL and the CNC portion which consists of the Machinekit-CNC package started to rot away, porting the actively developed EMC was termed as the best option in the short run.

(This doesn't mean that the Machinekit-CNC project is dead. It is very much alive for anybody willing to spend the time and do some development. This is just another option to the myriad of others which can run atop the Machinekit-HAL.)

Current status can be previewed in Docker container with the following commands:

docker run --rm -it -e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v /dev/dri:/dev/dri debian:buster
apt update
apt install sudo curl
echo "ALL ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers
adduser mk
su mk
curl -1sLf \
  'https://dl.cloudsmith.io/public/machinekit/machinekit/cfg/setup/bash.deb.sh' \
  | sudo -E bash
curl -1sLf \
  'https://dl.cloudsmith.io/public/machinekit/machinekit-hal/cfg/setup/bash.deb.sh' \
  | sudo -E bash
curl -1sLf \
  'https://dl.cloudsmith.io/public/machinekit/emcapplication/cfg/setup/bash.deb.sh' \
  | sudo -E bash
sudo apt install emcapplication
sudo -i
echo -e 'ANNOUNCE_IPV4=0\nANNOUNCE_IPV6=0' >> /etc/machinekit/machinekit.ini
exit
linuxcnc
cerna commented 4 years ago

Done

Not done yet

jallwine commented 4 years ago

Thank you for all your efforts on getting EMCApplication working! Do you have a sense of how ready it is to use? One issue I've seen is the discrepancy between EMCApplication python modules being built for Python 2, whereas MachineKit-HAL is now Python 3. I recognize that this should be fixed in LinuxCNC, so I'll try to ask about this there. Are there any other known outstanding issues?