-
Notifications
You must be signed in to change notification settings - Fork 12
Description
The whole premise in this thread is to see:
A Is it possible to get the qtquickvcp gui's running by adding the missing preview.so lib ?
Edit: Answer: allmost
B.Find out what else is missing.
Edit Answer at bottom
Based on this suggestion
I compiled Emcapp with full python 3 support using this method:
git clone https://github.com/machinekit/emcapplication.git
cd emcapplication
sudo apt install build-essential fakeroot devscripts equivs python3 python3-tk lsb-release apt-cudf
debian/configure machinekit-hal=0.4.21003-1.git39389db84~$(lsb_release -cs) no-docs
mk-build-deps -irs sudo -t 'apt-cudf-get --solver aspcud -o Debug::pkgProblemResolver=0 -o APT::Install-Recommends=0'
cd src
./autogen.sh
./configure --with-hal=machinekit-hal --with-python=python3 --with-boost-python=boost_python-py35
time make -j$(nproc)
sudo make install
source ~/emcapplication/scripts/rip-environment
linuxcnc
Then tested the axis sim config: ran without any problems execpt this message:
1: unspecified exception detail=0x55c7de3db8 ts=0x7facd0b164
Mkwrapper:
I used the newest package from machinekit-hal on purpose.
I used this hal config updated for linuxcnc 2.9 (and the newest added soc)
I have a similar version that is tested to work with the compiled in axis gui.
Here is the result of a python3 ./run.py run:
machinekit@mksocfpga-fz3-soc:~/Hm2-soc_FDM/Cramps/HAL/FZ3$ ./run.py
starting mklauncher... done
starting configserver... done
starting linuxcnc... LINUXCNC - 2.9.0~pre0
Machine configuration directory is '/home/machinekit/Hm2-soc_FDM/Cramps/HAL/FZ3'
Machine configuration file is 'ox.ini'
Starting LinuxCNC...
rtapi_msgd command: /usr/libexec/machinekit/rtapi_msgd --instance=0 --rtmsglevel=1 --usrmsglevel=1 --debug=1 --halsize=524288
rtapi_app command: /usr/libexec/machinekit/rtapi_app --instance=0 --debug=1
3::3910:rt INFO: Picked default flavor 'posix' automatically
done
Found file(REL): ./ox.hal
emcTrajSetJoints(3) returned 0
emcTrajSetSpindles(1) returned 0
emcTrajSetAxes(3, 7)
emcTrajSetUnits(1.0000, 1.0000)
emcTrajSetVelocity(0.0000, 20.0000) returned 0
emcTrajSetMaxVelocity(200.0000) returned 0
emcTrajSetAcceleration(999999999999999967336168804116691273849533185806555472917961779471295845921727862608739868455469056.0000) returned 0
emcTrajSetMaxAcceleration(999999999999999967336168804116691273849533185806555472917961779471295845921727862608739868455469056.0000)
emcTrajSetHome(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000) returned 0
emcJointSetType(0, 1)
emcJointSetUnits(0, 1.0000)
emcJointSetBacklash(0, 0.0600) returned 0
emcJointSetMinPositionLimit(0, -0.5000) returned 0
emcJointSetMaxPositionLimit(0, 320.0000) returned 0
emcJointSetFerror(0, 800.0000) returned 0
emcJointSetMinFerror(0, 200.0000) returned 0
emcJointSetHomingParams(0, 0.0000, 0.0000, -1.0000, -10.0000, 1.0000, 0, 1, 0, 1, 0) returned 0
emcJointSetMaxVelocity(0, 50.0000) returned 0
emcJointSetMaxAcceleration(0, 80.0000) returned 0
emcJointActivate(0) returned 0
emcJointSetType(1, 1)
emcJointSetUnits(1, 1.0000)
emcJointSetBacklash(1, 0.0800) returned 0
emcJointSetMinPositionLimit(1, -1.0000) returned 0
emcJointSetMaxPositionLimit(1, 500.1000) returned 0
emcJointSetFerror(1, 800.0000) returned 0
emcJointSetMinFerror(1, 200.0000) returned 0
emcJointSetHomingParams(1, 0.0000, 0.0000, -1.0000, -20.0000, 1.0000, 0, 1, 0, 1, 0) returned 0
emcJointSetMaxVelocity(1, 50.0000) returned 0
emcJointSetMaxAcceleration(1, 80.0000) returned 0
emcJointActivate(1) returned 0
emcJointSetType(2, 1)
emcJointSetUnits(2, 1.0000)
emcJointSetBacklash(2, 0.0200) returned 0
emcJointSetMinPositionLimit(2, -40.2000) returned 0
emcJointSetMaxPositionLimit(2, 0.2000) returned 0
emcJointSetFerror(2, 800.0000) returned 0
emcJointSetMinFerror(2, 200.0000) returned 0
emcJointSetHomingParams(2, 0.0000, 0.2000, -1.0000, 8.0000, -1.0000, 0, 1, 0, 0, 0) returned 0
emcJointSetMaxVelocity(2, 10.0000) returned 0
emcJointSetMaxAcceleration(2, 20.0000) returned 0
emcJointActivate(2) returned 0
emcAxisSetMinPositionLimit(0, -0.5000) returned 0
emcAxisSetMaxPositionLimit(0, 320.0000) returned 0
emcAxisSetMaxVelocity(0, 50.0000) returned 0
emcAxisSetMaxAcceleration(0, 80.0000) returned 0
emcAxisSetLockingJoint(0, -1) returned 0
emcAxisSetMinPositionLimit(1, -1.0000) returned 0
emcAxisSetMaxPositionLimit(1, 500.1000) returned 0
emcAxisSetMaxVelocity(1, 50.0000) returned 0
emcAxisSetMaxAcceleration(1, 90.0000) returned 0
emcAxisSetLockingJoint(1, -1) returned 0
emcAxisSetMinPositionLimit(2, -40.0000) returned 0
emcAxisSetMaxPositionLimit(2, 0.2000) returned 0
emcAxisSetMaxVelocity(2, 10.0000) returned 0
emcAxisSetMaxAcceleration(2, 20.0000) returned 0
emcAxisSetLockingJoint(2, -1) returned 0
hm2: loading Mesa HostMot2 driver version 0.15
hm2_soc_ol: loading Mesa AnyIO HostMot2 socfpga overlay driver version 0.9
hm2/hm2_fz3_.0: Low Level init 0.15
hm2/hm2_fz3_.0: 36 I/O Pins used:
hm2/hm2_fz3_.0: IO Pin 000 (GPIO0.P0-01): IOPort
hm2/hm2_fz3_.0: IO Pin 001 (GPIO0.P0-02): IOPort
hm2/hm2_fz3_.0: IO Pin 002 (GPIO0.P0-03): IOPort
hm2/hm2_fz3_.0: IO Pin 003 (GPIO0.P0-04): IOPort
hm2/hm2_fz3_.0: IO Pin 004 (GPIO0.P0-05): StepGen #0, pin Direction (Output)
hm2/hm2_fz3_.0: IO Pin 005 (GPIO0.P0-06): StepGen #0, pin Step (Output)
hm2/hm2_fz3_.0: IO Pin 006 (GPIO0.P0-07): StepGen #1, pin Direction (Output)
hm2/hm2_fz3_.0: IO Pin 007 (GPIO0.P0-08): StepGen #1, pin Step (Output)
hm2/hm2_fz3_.0: IO Pin 008 (GPIO0.P0-09): StepGen #2, pin Direction (Output)
hm2/hm2_fz3_.0: IO Pin 009 (GPIO0.P0-10): StepGen #2, pin Step (Output)
hm2/hm2_fz3_.0: IO Pin 010 (GPIO0.P0-11): StepGen #3, pin Direction (Output)
hm2/hm2_fz3_.0: IO Pin 011 (GPIO0.P0-12): StepGen #3, pin Step (Output)
hm2/hm2_fz3_.0: IO Pin 012 (GPIO0.P0-13): Hostmot2 DPLL #0, pin Ref Out Pin (Output)
hm2/hm2_fz3_.0: IO Pin 013 (GPIO0.P0-14): Encoder #0, pin A (Input)
hm2/hm2_fz3_.0: IO Pin 014 (GPIO0.P0-15): Encoder #0, pin B (Input)
hm2/hm2_fz3_.0: IO Pin 015 (GPIO0.P0-16): Encoder #0, pin Index (Input)
hm2/hm2_fz3_.0: IO Pin 016 (GPIO0.P0-17): IOPort
hm2/hm2_fz3_.0: IO Pin 017 (GPIO0.P0-18): PWMGen #0, pin Out0 (PWM or Up) (Output)
hm2/hm2_fz3_.0: IO Pin 018 (GPIO0.P1-19): IOPort
hm2/hm2_fz3_.0: IO Pin 019 (GPIO0.P1-20): IOPort
hm2/hm2_fz3_.0: IO Pin 020 (GPIO0.P1-21): IOPort
/usr/lib/python3/dist-packages/pyftpdlib/authorizers.py:244: RuntimeWarning: write permissions assigned to anonymous user.
RuntimeWarning)
Process Process-1:
Traceback (most recent call last):
File "/usr/lib/python3.7/multiprocessing/process.py", line 297, in _bootstrap
self.run()
File "/usr/lib/python3.7/multiprocessing/process.py", line 99, in run
self._target(*self._args, **self._kwargs)
File "/usr/bin/mkwrapper", line 322, in run
import preview # must be imported in new process to work properly
ModuleNotFoundError: No module named 'preview'
send_pbcontainer: type: MT_PING
send_pbcontainer: type: MT_PING
task: main loop took 5.014869 seconds
send_pbcontainer: type: MT_PING
send_pbcontainer: type: MT_PING
send_pbcontainer: type: MT_PING
^Cstopping mklauncher... done
stopping configserver... done
stopping linuxcnc... done
machinekit@mksocfpga-fz3-soc:~/Hm2-soc_FDM/Cramps/HAL/FZ3$ task: main loop took 5.003195 seconds
task: 27 cycles, min=0.000181, max=5.014869, avg=0.375194, 2 latency excursions (> 10x expected cycle time of 0.010000s)
Seems like config is parsed ok however mkwrapper cannot fínd the module preview.
Traceback (most recent call last):
File "/usr/lib/python3.7/multiprocessing/process.py", line 297, in _bootstrap
self.run()
File "/usr/lib/python3.7/multiprocessing/process.py", line 99, in run
self._target(*self._args, **self._kwargs)
File "/usr/bin/mkwrapper", line 322, in run
import preview # must be imported in new process to work properly
ModuleNotFoundError: No module named 'preview'
I wonder where this python preview module requested here is supposed to come from.
BTW
With these changes to the linuxcnc script
Im able to run a similar python based hal config
however the end result is the same error traceback