{ "generatedAt": "2026-06-23T07:35:25.253Z", "before": { "runState": "idle", "machine": { "powerOn": false, "estopActive": false, "taskState": "estop-reset", "mode": "manual", "interpState": "idle", "interpResumeState": "idle", "taskPaused": false, "allHomed": false, "noForceHoming": false, "jogAxis": "x", "jogIncrement": 1, "mdiCommand": "G0 X0 Y0 Z0", "mdiDistanceMode": "absolute", "resetCount": 0 }, "rtcpState": "on", "kinsType": "tcp-xyzac", "operatorMessage": "LinuxCNC task/HAL session ready /work/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt/demos/boat-xyzac.ngc", "taskHalExecutionPending": false, "taskHalFallbackReason": null, "taskHalStatus": { "ui": { "taskState": "estop_reset", "taskMode": "manual", "interpState": "idle", "execState": "done", "taskCycle": 0, "servoCycle": 20, "motionQueueDepth": 0, "halChangedPinCount": 0, "activeLine": 1, "motionProgramLine": 0, "halProgramLine": 0, "activeLineSource": "fallback", "activeLineHalSynced": false, "switchkinsType": 0, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "axisPoseFrame": "work", "currentVelocity": 0 }, "task": { "state": "ESTOP_RESET", "mode": "MANUAL", "interpState": "IDLE", "execState": "DONE", "cycle": 2, "openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt/demos/boat-xyzac.ngc", "openedLineCount": 1881, "openedSourceLineCount": 1881, "executableLineCount": 1859, "nextProgramLine": 0 }, "summary": { "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "taskHalComparisonReady": true, "switchkinsRemapHalSync": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "fullLinuxCncProgramExecutionReady": false, "hardwareDrive": false, "hostRealtimeKernel": false } }, "taskHalStatusLoop": { "apiName": "web-rtcp-5axis-task-hal-status-loop", "active": false, "sequence": 0, "profileId": null, "iniPath": null, "kinematicsModuleId": null, "tickCount": 0, "batchSize": 5, "intervalMs": 25, "taskPeriodNs": 10000000, "servoPeriodNs": 1000000, "lastStatusAt": null, "lastError": null, "stopReason": null, "semanticBoundary": "js_status_polling_loop_for_linuxcnc_task_hal_motion_status" }, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 20, "motionIndex": 0, "line": 1, "motionProgramLine": 0, "halProgramLine": 0, "activeLineSource": "fallback", "activeLineHalSynced": false, "type": "TASK_MOTION", "timeSeconds": 0, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "currentVelocityMmPerMin": 0, "requestedVelocityMmPerMin": 0, "distanceToGo": 0, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 0, "cycle": 20, "taskCycle": 2, "halChangedPinCount": 0 }, "selected": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/boat-xyzac.ngc", "taskHalSessionProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt/demos/boat-xyzac.ngc", "preconditions": null }, "after": { "runState": "idle", "machine": { "powerOn": true, "estopActive": false, "taskState": "on", "mode": "auto", "interpState": "idle", "interpResumeState": "idle", "taskPaused": false, "allHomed": false, "noForceHoming": false, "jogAxis": "x", "jogIncrement": 1, "mdiCommand": "G0 X0 Y0 Z0", "mdiDistanceMode": "absolute", "resetCount": 0 }, "rtcpState": "on", "kinsType": "tcp-xyzac", "operatorMessage": "RUN ready: power on, homed, auto mode", "taskHalExecutionPending": false, "taskHalFallbackReason": null, "taskHalStatus": { "ui": { "taskState": "on", "taskMode": "auto", "interpState": "idle", "execState": "done", "taskCycle": 0, "servoCycle": 40, "motionQueueDepth": 0, "halChangedPinCount": 0, "activeLine": 1, "motionProgramLine": 1, "halProgramLine": 1, "activeLineSource": "motion-status", "activeLineHalSynced": true, "switchkinsType": 0, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "axisPoseFrame": "work", "currentVelocity": 3600 }, "task": { "state": "ON", "mode": "AUTO", "interpState": "IDLE", "execState": "DONE", "cycle": 4, "openProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt/demos/boat-xyzac.ngc", "openedLineCount": 1881, "openedSourceLineCount": 1881, "executableLineCount": 1859, "nextProgramLine": 0 }, "summary": { "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "halSyncReady": true, "taskHalComparisonReady": true, "switchkinsRemapHalSync": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "fullLinuxCncProgramExecutionReady": false, "hardwareDrive": false, "hostRealtimeKernel": false } }, "taskHalStatusLoop": { "apiName": "web-rtcp-5axis-task-hal-status-loop", "active": false, "sequence": 0, "profileId": null, "iniPath": null, "kinematicsModuleId": null, "tickCount": 0, "batchSize": 5, "intervalMs": 25, "taskPeriodNs": 10000000, "servoPeriodNs": 1000000, "lastStatusAt": null, "lastError": null, "stopReason": null, "semanticBoundary": "js_status_polling_loop_for_linuxcnc_task_hal_motion_status" }, "programRuntimeFeedback": { "apiName": "web-rtcp-5axis-program-runtime-feedback", "sourceMode": "linuxcnc-task-motion-hal-wasm", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "sampleIndex": 40, "motionIndex": 0, "line": 1, "motionProgramLine": 1, "halProgramLine": 1, "activeLineSource": "motion-status", "activeLineHalSynced": true, "type": "TASK_MOTION", "timeSeconds": 0, "axisPose": { "x": 0, "y": 0, "z": 0, "a": 0, "b": 0, "c": 0 }, "currentVelocityMmPerMin": 3600, "requestedVelocityMmPerMin": 3600, "distanceToGo": 0, "dtg": { "x": 0, "y": 0, "z": 0 }, "queueDepth": 0, "activeDepth": 0, "cycle": 40, "taskCycle": 4, "halChangedPinCount": 0 }, "selected": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/boat-xyzac.ngc", "taskHalSessionProgram": "/work/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt/demos/boat-xyzac.ngc", "preconditions": null }, "logs": [ { "type": "warn", "text": "[.WebGL-0x3764000f0200]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels" }, { "type": "warn", "text": "[.WebGL-0x3764000f0200]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels" }, { "type": "warn", "text": "[.WebGL-0x3764000f0200]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels" }, { "type": "warn", "text": "[.WebGL-0x3764000f0200]GL Driver Message (OpenGL, Performance, GL_CLOSE_PATH_NV, High): GPU stall due to ReadPixels (this message will no longer repeat)" } ] }