mill@mill:~$ linuxcnc LINUXCNC - 2.10.0~pre0 Machine configuration directory is '/home/mill/linuxcnc/configs/sim.qtpyvcp' Machine configuration file is 'xyz.ini' Starting LinuxCNC... linuxcnc TPMOD=tpmod HOMEMOD=homemod EMCMOT=motmod Note: Using POSIX realtime Found file(REL): ./hallib/core_sim_3.hal Found file(REL): ./hallib/spindle_sim.hal Found file(REL): ./hallib/simulated_home.hal [qtpyvcp][INFO] Logging to /home/mill/linuxcnc/configs/sim.qtpyvcp/sim.log (logger.py:97) [qtpyvcp][INFO] QtPyVCP Version: python3_master+325.gb39d40a8 (opt_parser.py:207) [qtpyvcp][DEBUG] Qt Version: 5.15.2 (opt_parser.py:211) [qtpyvcp][DEBUG] Qt API: QT_API (opt_parser.py:212) [qtpyvcp][DEBUG] QtPy Version: 1.9.0 (opt_parser.py:213) [qtpyvcp][DEBUG] Command line options: { "chooser": false, "command_line_args": null, "config_file": "/home/mill/linuxcnc/configs/sim.qtpyvcp/custom_config.yml", "confirm_exit": false, "develop": false, "fullscreen": null, "help": false, "hide_cursor": false, "hide_menu_bar": false, "hide_status_bar": false, "info": false, "ini": "/home/mill/linuxcnc/configs/sim.qtpyvcp/xyz.ini", "log_file": "/home/mill/linuxcnc/configs/sim.qtpyvcp/sim.log", "log_level": "DEBUG", "maximize": null, "perfmon": false, "position": null, "qt_api": null, "size": null, "stylesheet": null, "theme": null, "vcp": "brender", "version": false } (opt_parser.py:216) [qtpyvcp.utilities.info][INFO] The machine has 3 axes and 3 joints (info.py:414) [qtpyvcp.utilities.info][INFO] The Axis/Joint mapping is: (info.py:415) [qtpyvcp.utilities.info][INFO] Axis X --> Joint 0 (info.py:423) [qtpyvcp.utilities.info][INFO] Axis Y --> Joint 1 (info.py:423) [qtpyvcp.utilities.info][INFO] Axis Z --> Joint 2 (info.py:423) [qtpyvcp.app.launcher][DEBUG] Time: 0.000 (+0.000) - in script (launcher.py:52) [qtpyvcp][INFO] QtPyVCP Version: python3_master+325.gb39d40a8 (opt_parser.py:207) [qtpyvcp][DEBUG] Qt Version: 5.15.2 (opt_parser.py:211) [qtpyvcp][DEBUG] Qt API: QT_API (opt_parser.py:212) [qtpyvcp][DEBUG] QtPy Version: 1.9.0 (opt_parser.py:213) [qtpyvcp][DEBUG] Command line options: { "chooser": false, "command_line_args": null, "config_file": "/home/mill/linuxcnc/configs/sim.qtpyvcp/custom_config.yml", "confirm_exit": false, "develop": false, "fullscreen": null, "help": false, "hide_cursor": false, "hide_menu_bar": false, "hide_status_bar": false, "info": false, "ini": "/home/mill/linuxcnc/configs/sim.qtpyvcp/xyz.ini", "log_file": "/home/mill/linuxcnc/configs/sim.qtpyvcp/sim.log", "log_level": "DEBUG", "maximize": null, "perfmon": false, "position": null, "qt_api": null, "size": null, "stylesheet": null, "theme": null, "vcp": "brender", "version": false } (opt_parser.py:216) [qtpyvcp.utilities.config_loader][DEBUG] Loading config files: ['/home/mill/linuxcnc/configs/sim.qtpyvcp/custom_config.yml', '/home/mill/dev/qtpyvcp/examples/brender/brender.yml', '/home/mill/dev/qtpyvcp/qtpyvcp/yaml_lib/default_config.yml'] (config_loader.py:36) [qtpyvcp.utilities.config_loader][DEBUG] Merged YAML config: default_menubar: &id001 - title: File items: - title: '&Open ...' action: win.openFile shortcut: ctrl+o - title: '&Recent Files' provider: qtpyvcp.widgets.recent_files_menu:RecentFilesMenu - title: '&Reload' action: program.reload - title: '&Close' action: program.clear - title: Save &As action: null - separator - title: Edit ToolTable action: win.showDialog args: - tool_edit - separator - title: Exit action: app.exit shortcut: ctrl+q - title: Machine items: - title: Toggle E-Stop action: machine.estop.toggle shortcut: F1 - title: Toggle Power action: machine.power.toggle shortcut: F2 - separator - title: Run Program action: program.run shortcut: R - title: Step action: program.step shortcut: T - title: Pause action: program.pause shortcut: P - title: Resume action: program.resume shortcut: R - title: Abort action: program.abort shortcut: esc - title: Optional Stop action: program.optional_stop.toggle - title: Optional Skip action: program.optional_skip.toggle - separator - title: Homing provider: qtpyvcp.widgets.menus.homing_menu:HomingMenu - title: Cooling items: - title: Flood action: coolant.flood.toggle shortcut: F7 - title: Mist action: coolant.mist.toggle shortcut: F8 - title: Set Work Offsets action: win.showDialog args: - set_work_offsets - separator - title: Override Limits action: machine.override_limits - title: Settings items: - title: Show On-screen Keyboard action: settings.virtual-input.enable - title: View items: - title: Show Gridlines action: settings.backplot.show-grid - separator - title: Show Machine Bounds action: settings.backplot.show-machine-bounds - title: Show Machine Labels action: settings.backplot.show-machine-labels - title: Show Machine Ticks action: settings.backplot.show-machine-ticks - separator - title: Show Program Bounds action: settings.backplot.show-program-bounds - title: Use Colors for Motion type action: settings.backplot.multitool-colors - separator - title: Perspective View action: settings.backplot.perspective-view - title: View Angle action: settings.backplot.view - title: Tools items: - title: HAL Meter action: tool.halmeter - title: HAL Scope action: tool.halscope - title: HAL Show action: tool.halshow - title: LCNC Status action: tool.status - title: Calibration action: tool.calibration - title: Classicladder PLC action: tool.classicladder - title: Simulated Probe action: tool.simulate_probe - title: About items: - title: About QtPyVCP action: win.showDialog args: - about_qtpyvcp - title: About Qt action: app.aboutQt vcp: name: Brender version: v0.0.1 author: Kurt Jacobson description: 'Brender is minimal example VCP mostly used for development and testing purposes. Design and colors influenced by Brenda EM''s LinuxCNC GUI proposal.' windows: mainwindow: provider: brender:MainWindow kwargs: menu: *id001 ui_file: /home/mill/dev/qtpyvcp/examples/brender/ui/brender.ui stylesheet: /home/mill/dev/qtpyvcp/examples/brender/resources/brender.qss title: Brender v0.0.1)))) confirm_exit: false data_plugins: status: provider: qtpyvcp.plugins.status:Status kwargs: cycle_time: 75 persistent_data_manager: provider: qtpyvcp.plugins.persistent_data_manager:PersistentDataManager kwargs: serialization_method: pickle settings: provider: qtpyvcp.plugins.settings:Settings position: provider: qtpyvcp.plugins.positions:Position kwargs: report_actual_pos: true use_program_units: true tooltable: provider: qtpyvcp.plugins.tool_table:ToolTable offsettable: provider: qtpyvcp.plugins.offset_table:OffsetTable notifications: provider: qtpyvcp.plugins.notifications:Notifications kwargs: enabled: true mode: native max_messages: 5 persistent: true file_locations: provider: qtpyvcp.plugins.file_locations:FileLocations log_level: debug kwargs: default_location: NC Files local_locations: Home: ~/ Desktop: ~/Desktop NC Files: ~/linuxcnc/nc_files network_locations: null exportedhal: provider: qtpyvcp.plugins.exported_hal:ExportedHal virtual_input: provider: qtpyvcp.plugins.virtual_input_manager:VirtualInputManager dialogs: open_file: provider: qtpyvcp.widgets.dialogs.open_file_dialog:OpenFileDialog set_work_offsets: provider: qtpyvcp.widgets.dialogs.offsets_dialog:OffsetsDialog tool_edit: provider: qtpyvcp.widgets.dialogs.tool_edit_dialog:ToolEditDialog probe_sim: provider: qtpyvcp.widgets.dialogs.probesim_dialog:ProbeSim about_qtpyvcp: provider: qtpyvcp.widgets.dialogs.about_dialog:AboutDialog virtual_input_providers: number: provider: qtpyvcp.widgets.virtual_input.virtual_input:VirtualInput kwargs: ui_file: /home/mill/dev/qtpyvcp/qtpyvcp/yaml_lib/../widgets/virtual_input/numpad.ui text: provider: qtpyvcp.widgets.virtual_input.virtual_input:VirtualInput kwargs: ui_file: /home/mill/dev/qtpyvcp/qtpyvcp/yaml_lib/../widgets/virtual_input/keyboard.ui application: provider: qtpyvcp.app.application:VCPApplication kwargs: stylesheet: /home/mill/dev/qtpyvcp/examples/brender/resources/brender.qss settings: touch-probe.diameter-offset: default_value: 0.123123 persistent: true min_value: 0 max_value: 1 dro.display-units: default_value: 0 options: - Auto - Inch - Metric dro.lathe-radius-mode: default_value: 0 options: - Auto - Radius - Diameter dro.inch-format: default_value: '%9.4f' value_type: str dro.millimeter-format: default_value: '%9.3f' value_type: str dro.degree-format: default_value: '%9.2f' backplot.show-grid: default_value: false backplot.show-program-bounds: default_value: false backplot.show-machine-bounds: default_value: false backplot.show-machine-labels: default_value: false backplot.show-machine-ticks: default_value: false backplot.perspective-view: default_value: true backplot.view: default_value: 0 options: - 'X: Front View' - 'XZ: Lathe View' - 'XZ2: Lathe View' - 'Y: Front View' - 'Z: Top View' - 'Z2: Bottom View' - 'P: Isometric' backplot.multitool-colors: default_value: true qtdesigner: ui_file: /home/mill/dev/qtpyvcp/examples/brender/ui/brender.ui qss_file: /home/mill/dev/qtpyvcp/examples/brender/resources/brender.qss (config_loader.py:53) [qtpyvcp.app.launcher][DEBUG] Loading data plugings (launcher.py:65) [qtpyvcp.plugins][DEBUG] Loading plugin 'status' from 'qtpyvcp.plugins.status:Status' (__init__.py:66) [qtpyvcp.plugins.status][DEBUG] ---------set mdi_history: None, [] (status.py:171) [qtpyvcp.plugins][DEBUG] Loading plugin 'persistent_data_manager' from 'qtpyvcp.plugins.persistent_data_manager:PersistentDataManager' (__init__.py:66) [qtpyvcp.plugins][DEBUG] Loading plugin 'settings' from 'qtpyvcp.plugins.settings:Settings' (__init__.py:66) [qtpyvcp.plugins][DEBUG] Loading plugin 'position' from 'qtpyvcp.plugins.positions:Position' (__init__.py:66) [qtpyvcp.plugins][DEBUG] Loading plugin 'tooltable' from 'qtpyvcp.plugins.tool_table:ToolTable' (__init__.py:66) [qtpyvcp.plugins][DEBUG] Loading plugin 'offsettable' from 'qtpyvcp.plugins.offset_table:OffsetTable' (__init__.py:66) [qtpyvcp.plugins][DEBUG] Loading plugin 'notifications' from 'qtpyvcp.plugins.notifications:Notifications' (__init__.py:66) [qtpyvcp.plugins][DEBUG] Loading plugin 'file_locations' from 'qtpyvcp.plugins.file_locations:FileLocations' (__init__.py:66) [qtpyvcp.plugins][DEBUG] Loading plugin 'virtual_input' from 'qtpyvcp.plugins.virtual_input_manager:VirtualInputManager' (__init__.py:66) [qtpyvcp.app.launcher][DEBUG] Time: 0.220 (+0.220) - done loading data plugins (launcher.py:52) [qtpyvcp.app.launcher][DEBUG] Initializing app (launcher.py:69) [qtpyvcp.plugins][DEBUG] Initializing 'status' plugin (__init__.py:116) [qtpyvcp.plugins.status][DEBUG] Starting periodic updates with 75ms cycle time (status.py:713) [qtpyvcp.plugins][DEBUG] Initializing 'persistent_data_manager' plugin (__init__.py:116) [qtpyvcp.plugins][DEBUG] Initializing 'settings' plugin (__init__.py:116) [qtpyvcp.plugins][DEBUG] Initializing 'position' plugin (__init__.py:116) [qtpyvcp.plugins][DEBUG] Initializing 'tooltable' plugin (__init__.py:116) [qtpyvcp.plugins][DEBUG] Initializing 'offsettable' plugin (__init__.py:116) [qtpyvcp.plugins][DEBUG] Initializing 'notifications' plugin (__init__.py:116) [qtpyvcp.plugins][DEBUG] Initializing 'file_locations' plugin (__init__.py:116) [qtpyvcp.plugins][DEBUG] Initializing 'virtual_input' plugin (__init__.py:116) [qtpyvcp][INFO] Loading global stylesheet: /home/mill/dev/qtpyvcp/examples/brender/resources/brender.qss (application.py:186) [qtpyvcp.app.launcher][DEBUG] Time: 0.274 (+0.054) - done initializing app (launcher.py:52) [qtpyvcp.app.launcher][DEBUG] Loading dialogs (launcher.py:73) [qtpyvcp.app.launcher][DEBUG] Time: 0.590 (+0.315) - done loading dialogs (launcher.py:52) [qtpyvcp.app.launcher][DEBUG] Loading windows (launcher.py:77) [qtpyvcp.widgets.display_widgets.vtk_backplot.vtk_backplot][DEBUG] ---------using refactored vtk code (vtk_backplot.py:56) [qtpyvcp.widgets.display_widgets.vtk_backplot.linuxcnc_datasource][DEBUG] self._status.stat.g5x_offset: (linuxcnc_datasource.py:156) [qtpyvcp.widgets.display_widgets.vtk_backplot.linuxcnc_datasource][DEBUG] -----current_wcs index: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] (linuxcnc_datasource.py:165) [qtpyvcp.widgets.display_widgets.vtk_backplot.vtk_backplot][DEBUG] ---------active_wcs_index 0 (vtk_backplot.py:97) [qtpyvcp.widgets.display_widgets.vtk_backplot.vtk_backplot][DEBUG] ---------active_wcs_offset (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) (vtk_backplot.py:98) [qtpyvcp.widgets.display_widgets.vtk_backplot.vtk_backplot][DEBUG] ---------wcs_offsets {0: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 1: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 2: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 3: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 4: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 5: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 6: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 7: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 8: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]} (vtk_backplot.py:99) [qtpyvcp.widgets.display_widgets.vtk_backplot.vtk_backplot][DEBUG] ---------translate1: (0.0, 0.0, 0.0) (vtk_backplot.py:142) [qtpyvcp.widgets.display_widgets.vtk_backplot.vtk_backplot][DEBUG] ---------active_wcs_offset: (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0) (vtk_backplot.py:143) [qtpyvcp.widgets.display_widgets.vtk_backplot.vtk_backplot][DEBUG] show grid (vtk_backplot.py:1006) [qtpyvcp.widgets.display_widgets.vtk_backplot.vtk_backplot][DEBUG] Setting view to: X (vtk_backplot.py:737) [qtpyvcp.widgets.form_widgets.main_window][INFO] Loading QSS stylesheet file: /home/mill/dev/qtpyvcp/examples/brender/resources/brender.qss (main_window.py:111) [qtpyvcp.plugins][DEBUG] Post GUI Initializing 'status' plugin (__init__.py:128) [qtpyvcp.plugins][DEBUG] Post GUI Initializing 'persistent_data_manager' plugin (__init__.py:128) [qtpyvcp.plugins][DEBUG] Post GUI Initializing 'settings' plugin (__init__.py:128) [qtpyvcp.plugins][DEBUG] Post GUI Initializing 'position' plugin (__init__.py:128) [qtpyvcp.plugins][DEBUG] Post GUI Initializing 'tooltable' plugin (__init__.py:128) [qtpyvcp.plugins][DEBUG] Post GUI Initializing 'offsettable' plugin (__init__.py:128) [qtpyvcp.plugins][DEBUG] Post GUI Initializing 'notifications' plugin (__init__.py:128) [qtpyvcp.plugins][DEBUG] Post GUI Initializing 'file_locations' plugin (__init__.py:128) [qtpyvcp.plugins][DEBUG] Post GUI Initializing 'virtual_input' plugin (__init__.py:128) [qtpyvcp.app.launcher][DEBUG] Time: 1.556 (+0.966) - done loading windows (launcher.py:52) [qtpyvcp.app.launcher][DEBUG] Initializing widgets (launcher.py:81) [qtpyvcp.app.launcher][DEBUG] Time: 1.772 (+0.216) - done initializing widgets (launcher.py:52) [qtpyvcp][DEBUG] Terminating widgets (application.py:254) [qtpyvcp.plugins][DEBUG] Terminating 'virtual_input' plugin (__init__.py:142) [qtpyvcp.plugins][DEBUG] Terminating 'file_locations' plugin (__init__.py:142) [qtpyvcp.plugins][DEBUG] Terminating 'notifications' plugin (__init__.py:142) [qtpyvcp.plugins][DEBUG] Terminating 'offsettable' plugin (__init__.py:142) [qtpyvcp.plugins][DEBUG] Terminating 'tooltable' plugin (__init__.py:142) [qtpyvcp.plugins][DEBUG] Terminating 'position' plugin (__init__.py:142) [qtpyvcp.plugins][DEBUG] Terminating 'settings' plugin (__init__.py:142) [qtpyvcp.plugins][DEBUG] Terminating 'persistent_data_manager' plugin (__init__.py:142) [qtpyvcp.plugins.persistent_data_manager][DEBUG] Writing persistent data to file: /home/mill/linuxcnc/configs/sim.qtpyvcp/.vcp_persistent_data.pickle (persistent_data_manager.py:46) [qtpyvcp.plugins][DEBUG] Terminating 'status' plugin (__init__.py:142) Shutting down and cleaning up LinuxCNC... task: 1080 cycles, min=0.000012, max=0.011016, avg=0.009868, 0 latency excursions (> 10x expected cycle time of 0.010000s) Note: Using POSIX realtime mill@mill:~$