```LINUXCNC - 2.8.0-pre1-4625-g8f279b835 Machine configuration directory is '/home/chris/dev/qtpyvcp/sim' Machine configuration file is 'xyz.ini' Starting LinuxCNC... Unrecognized line skipped: ;Tool Pocket X Offset Y Offset Z Offset Diameter Remark Found file(REL): ./hallib/core_sim_3.hal Note: Using POSIX realtime Found file(REL): ./hallib/spindle_sim.hal Found file(REL): ./hallib/simulated_home.hal /home/chris/dev/qtpyvcp/qtpyvcp/vcp_chooser/vcp_chooser.py:81: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details. vcp_data.update(yaml.load(''.join(clean)).get('vcp', {})) [qtpyvcp][INFO] Logging to /home/chris/dev/qtpyvcp/sim/sim.log (logger.py:101) [qtpyvcp.utilities.info][INFO] The machine has 3 axes and 3 joints (info.py:365) [qtpyvcp.utilities.info][INFO] The Axis/Joint mapping is: (info.py:366) [qtpyvcp.utilities.info][INFO] Axis X --> Joint 0 (info.py:374) [qtpyvcp.utilities.info][INFO] Axis Y --> Joint 1 (info.py:374) [qtpyvcp.utilities.info][INFO] Axis Z --> Joint 2 (info.py:374) [qtpyvcp.vcp_launcher][INFO] Loading VCP from YAML file: /home/chris/mill_touch/mill_touch/config.yml (vcp_launcher.py:134) QSocketNotifier: Can only be used with threads started with QThread QSocketNotifier: Can only be used with threads started with QThread [qtpyvcp][INFO] Loading QSS stylesheet file: /home/chris/mill_touch/mill_touch/ui/style.qss (application.py:172) [qtpyvcp.vcp_launcher][CRITICAL] Unhandled exception in qtpyvcp line 11 (vcp_launcher.py:36) Traceback (most recent call last): File "/home/chris/.local/bin/qtpyvcp", line 11, in load_entry_point('qtpyvcp', 'console_scripts', 'qtpyvcp')() File "/home/chris/dev/qtpyvcp/qtpyvcp/__init__.py", line 87, in main run_vcp(opts, None) File "/home/chris/dev/qtpyvcp/qtpyvcp/__init__.py", line 110, in run_vcp load_vcp(opts) File "/home/chris/dev/qtpyvcp/qtpyvcp/vcp_launcher.py", line 116, in load_vcp _load_vcp_from_yaml_file(vcp_path, opts) File "/home/chris/dev/qtpyvcp/qtpyvcp/vcp_launcher.py", line 141, in _load_vcp_from_yaml_file launch_application(opts, config) File "/home/chris/dev/qtpyvcp/qtpyvcp/vcp_launcher.py", line 74, in launch_application loadWindows(config['windows']) File "/home/chris/dev/qtpyvcp/qtpyvcp/vcp_launcher.py", line 200, in loadWindows window = _initialize_object_from_dict(window_dict) File "/home/chris/dev/qtpyvcp/qtpyvcp/vcp_launcher.py", line 194, in _initialize_object_from_dict return obj(*args, **kwargs) File "/home/chris/mill_touch/mill_touch/mainwindow.py", line 13, in __init__ super(MyMainWindow, self).__init__(*args, **kwargs) File "/home/chris/dev/qtpyvcp/qtpyvcp/widgets/form_widgets/main_window.py", line 44, in __init__ self.loadUi(ui_file) File "/home/chris/dev/qtpyvcp/qtpyvcp/widgets/form_widgets/main_window.py", line 103, in loadUi uic.loadUi(ui_file, self) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/__init__.py", line 226, in loadUi return DynamicUILoader(package).loadUi(uifile, baseinstance, resource_suffix) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/Loader/loader.py", line 72, in loadUi return self.parse(filename, resource_suffix, basedir) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 1000, in parse actor(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 807, in createUserInterface self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 262, in createWidget self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 482, in createLayout self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 525, in handleItem self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 262, in createWidget self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 482, in createLayout self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 525, in handleItem self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 262, in createWidget self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 482, in createLayout self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 525, in handleItem self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 262, in createWidget self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 262, in createWidget self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 482, in createLayout self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 525, in handleItem self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 262, in createWidget self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 262, in createWidget self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 482, in createLayout self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 525, in handleItem self.traverseWidgetTree(elem) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 785, in traverseWidgetTree handler(self, child) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 253, in createWidget self.stack.push(self.setupObject(widget_class, parent, elem)) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/uiparser.py", line 217, in setupObject obj = self.factory.createQObject(clsname, name, args, is_attribute) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/objcreator.py", line 106, in createQObject factory = self.findQObjectType(classname) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/objcreator.py", line 131, in findQObjectType w = module.search(classname) File "/usr/lib/python2.7/dist-packages/PyQt5/uic/Loader/qobjectcreator.py", line 115, in search module = __import__(mname, {}, {}, (cls,)) ImportError: No module named widget Shutting down and cleaning up LinuxCNC... task: 2655 cycles, min=0.000015, max=0.013361, avg=0.010005, 0 latency excursions (> 10x expected cycle time of 0.010000s) Note: Using POSIX realtime LinuxCNC terminated with an error. You can find more information in the log: /home/chris/linuxcnc_debug.txt and /home/chris/linuxcnc_print.txt as well as in the output of the shell command 'dmesg' and in the terminal ```