开源改变世界

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564

推推 grbl 3年前 (2023-01-30) 163次浏览
打开
Lcvette 打开了这个问题 2022 年 2 月 3 日 · 17条评论
打开

Linuxcnc v2.8.2 和 2.9.0 状态错误#1564

Lcvette 打开了这个问题 2022 年 2 月 3 日 · 17条评论

注释

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
乐维特 评论了 2022 年 2 月 3 日  

Linuxcnc Master 2.9 和 Stable 2.8 STATUS 最近出现故障,无法正确更新。看来 2.8 没有更新 gcodes 和 mcodes,2.9 也没有更新 mcodes。这似乎是程序的问题,但在两个版本上使用 MDI 时似乎都有效。动作也没有更新状态。

这破坏了 QtPyVCP 用户界面中的一些核心功能。测试是在两个版本的 axis sim 中进行的,并且是可重复的。

以下是我重现该问题所遵循的步骤:

  1. 在任一版本上打开轴并将机器设置为运行默认的 LinuxCNC 程序。
  2. 打开状态窗口并设置工作偏移以运行程序。
  3. 运行程序并注意状态未注册部分/全部 g 和 m 代码,因为它们在程序中被调用。

这是我期望发生的事情:

我希望状态更新为当前活动的 g 和 m 代码

这是发生了什么:

在 2.9 版中某些项目
的状态不会更新 在 2.8 中大多数项目的状态都不会更新 g 和 m 代码

在此之前它工作正常:

此功能之前运行良好,最近已被众多用户调用,因为它通过导致在程序加载时加载 backplotter 绘制线的问题来影响 QtPyVCP 接口。它还会影响依赖于适当状态更新的其他关键功能。

有关我的硬件和软件的信息:

两个版本的测试都在 debian 10 和 debian 11 上运行。

  • 我正在使用这个 Linux 发行版和版本(通常由 显示lsb_release -a):
    lsb_release -a
    没有可用的 LSB 模块。
    发行商 ID:Debian
    描述:Debian GNU/Linux 10 (buster)
    版本:10
    代号:buster

lsb_release -a
没有可用的 LSB 模块。
发行商 ID:Debian
描述:Debian GNU/Linux 11 (bullseye)
发行版:11
代号:bullseye

  • 我正在使用这个内核版本(由 显示uname -a):

uname -a
Linux PBDEV 4.19.0-18-rt-amd64 #1 SMP PREEMPT RT Debian 4.19.208-1 (2021-09-29) x86_64 GNU/Linux

uname -a
Linux py3dev 5.10.0-10-rt-amd64 #1 SMP PREEMPT_RT Debian 5.10.84-1 (2021-12-08) x86_64 GNU/Linux

  • 我正在运行…
    从 linuxcnc.org 为 deb10 版本 2.8.2 安装 iso

并为 deb 11 版本 2.9 运行此安装
https://github.com/joco-nz/lcnc-bullseye-installer

  • 我正在使用此用户界面 (GUI)(例如,AXIS、Touchy、gmoccapy 等):
    该问题影响我测试过的所有 gui,包括 QtPyVCP gui 和 Stock Linuxcnc 提供的 Gui

  • 我正在使用这个接口硬件供应商和芯片组(例如,并行端口、以太网端口、FPGA 卡):

我正在为 deb 11 2.8 版运行以下硬件:
cnc@PBDEV:~$ lspci -v
00:00.0 主机桥:英特尔公司核心处理器 DRAM 控制器(版本 02)
子系统:联想核心处理器 DRAM 控制器
标志:总线主控器,快速devsel,延迟 0
能力:

00:01.0 PCI 桥:英特尔公司核心处理器 PCI Express x16 根端口(修订版 02)(prog-if 00 [正常解码])
标志:总线主控、快速开发、延迟 0、IRQ 24
总线:主要 = 00,次要 = 01,subordinate=01,sec-latency=0
桥后 I/O:0000e000-0000efff 桥后
内存:fa000000-fb0fffff 桥后可
预取内存:00000000c0000000-00000000d1ffffff
功能:
正在使用的内核驱动程序:pcieport

00:16.0 通信控制器:英特尔公司 5 系列/3400 系列芯片组 HECI 控制器(版本 06)
子系统:联想 5 系列/3400 系列芯片组 HECI 控制器
标志:总线主控、快速开发、延迟 0、IRQ 28
内存在 fb149000(64-位,不可预取)[size=16]
功能:
正在使用的内核驱动程序:mei_me
内核模块:mei_me

00:19.0 以太网控制器:英特尔公司 82578DM 千兆网络连接(修订版 06)
子系统:联想 82578DM 千兆网络连接
标志:总线主控、快速开发、延迟 0、IRQ 25
内存在 fb120000(32 位,不可预取)[大小=128K]
fb148000 的内存(32 位,不可预取)[size=4K]
f040 的 I/O 端口 [size=32]
功能:
正在使用的内核驱动程序:e1000e
内核模块:e1000e

00:1a.0 USB 控制器:英特尔公司 5 系列/3400 系列芯片组 USB2 增强型主机控制器 (rev 06) (prog-if 20 [EHCI])
子系统:联想 5 系列/3400 系列芯片组 USB2 增强型主机控制器
标志:总线主控制器, medium devsel, latency 0, IRQ 16
memory at fb147000 (32-bit, non-prefetchable) [size=1K]
Capabilities:
Kernel driver in use: ehci-pci
Kernel modules: ehci_pci

00:1b.0 音频设备:英特尔公司 5 系列/3400 系列芯片组高清音频(版本 06)
子系统:联想 5 系列/3400 系列芯片组高清音频
标志:总线主控、快速开发、延迟 0、IRQ 29
内存fb140000(64 位,不可预取)[大小=16K]
功能:
正在使用的内核驱动程序:snd_hda_intel
内核模块:snd_hda_intel

00:1d.0 USB 控制器:英特尔公司 5 系列/3400 系列芯片组 USB2 增强型主机控制器 (rev 06) (prog-if 20 [EHCI])
子系统:联想 5 系列/3400 系列芯片组 USB2 增强型主机控制器
标志:总线主控制器, medium devsel, latency 0, IRQ 23
memory at fb146000 (32-bit, non-prefetchable) [size=1K]
Capabilities:
Kernel driver in use: ehci-pci
Kernel modules: ehci_pci

00:1e.0 PCI 桥:Intel Corporation 82801 PCI Bridge (rev a6) (prog-if 01 [Subtractive decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=02, subordinate=02 , sec-latency=32
能力:

00:1f.0 ISA 桥:英特尔公司 Q57 芯片组 LPC 接口控制器(修订版 06)
子系统:联想 Q57 芯片组 LPC 接口控制器
标志:总线主控、中等开发、延迟 0
功能:
正在使用的内核驱动程序:lpc_ich
内核模块:lpc_ich

00:1f.2 SATA 控制器:英特尔公司 5 系列/3400 系列芯片组 6 端口 SATA AHCI 控制器(版本 06)(prog-if 01 [AHCI 1.0])
子系统:联想 5 系列/3400 系列芯片组 6 端口 SATA AHCI 控制器
标志:总线主控,66MHz,中等开发,延迟 0,IRQ 26
I/O 端口在 f090 [size=8]
I/O 端口在 f080 [size=4]
I/O 端口在 f070 [size=8]
I/O f060 的端口 [size=4]
f020 的 I/O 端口 [size=32]
fb145000 的内存(32 位,不可预取)[size=2K]
功能:
正在使用的内核驱动程序:ahci
内核模块:ahci

00:1f.3 SMBus:英特尔公司 5 系列/3400 系列芯片组 SMBus 控制器(版本 06)
子系统:Lenovo 5 系列/3400 系列芯片组 SMBus 控制器
标志:中等 devsel,fb144000 处的 IRQ 18
内存(64 位,不可预取) [size=256]
f000 处的 I/O 端口 [size=32]
正在使用的内核驱动程序:i801_smbus
内核模块:i2c_i801

01:00.0 VGA 兼容控制器:NVIDIA Corporation GT218 [GeForce 310] (rev a2) (prog-if 00 [VGA controller])
子系统:Micro-Star International Co., Ltd. [MSI] GT218 [GeForce 310]
标志:总线master, fast devsel, latency 0, IRQ 27
内存在 fa000000(32 位,不可预取)[size=16M]
内存在 c0000000(64 位,可预取)[size=256M]
内存在 d0000000(64 位, prefetchable) [size=32M]
e000 处的 I/O 端口 [size=128]
000c0000 处的扩展 ROM [禁用] [size=128K]
功能:
正在使用的内核驱动程序:nouveau
内核模块:nouveau

01:00.1 音频设备:NVIDIA Corporation 高保真音频控制器 (rev a1)
子系统:Micro-Star International Co., Ltd. [MSI] 高保真音频控制器
标志:总线主控、快速开发、延迟 0、IRQ 16
内存位于 fb080000 (32 位,不可预取)[大小=16K]
功能:
正在使用的内核驱动程序:snd_hda_intel
内核模块:snd_hda_intel

ff:00.0 主桥:英特尔公司核心处理器 QuickPath 架构通用非核心寄存器 (rev 02)
子系统:英特尔公司核心处理器 QuickPath 架构通用非核心寄存器
标志:总线主控、快速开发、延迟 0

ff:00.1 主桥:英特尔公司核心处理器 QuickPath 架构系统地址解码器 (rev 02)
子系统:英特尔公司核心处理器 QuickPath 架构系统地址解码器
标志:总线主控、快速开发、延迟 0

ff:02.0 主机桥:英特尔公司核心处理器 QPI 链接 0(修订版 02)
子系统:英特尔公司核心处理器 QPI 链接 0
标志:总线主控、快速开发、延迟 0

ff:02.1 主机桥:英特尔公司第一代酷睿 i3/5/7 处理器 QPI 物理 0(修订版 02)
子系统:英特尔公司第一代酷睿 i3/5/7 处理器 QPI 物理 0
标志:总线主控、快速开发、延迟 0

ff:02.2 主机桥:英特尔公司第一代酷睿 i3/5/7 处理器保留(修订版 02)
子系统:英特尔公司第一代酷睿 i3/5/7 处理器保留
标志:总线主控、快速开发、延迟 0

ff:02.3 主机桥:英特尔公司第一代酷睿 i3/5/7 处理器保留(修订版 02)
子系统:英特尔公司第一代酷睿 i3/5/7 处理器保留
标志:总线主控、快速开发、延迟 0

我正在为 Debian11 版本 2.9 运行以下硬件:

HP Elite 8300 USDT core I5
py3dev@py3dev:~$ lspci -v
00:00.0 主机桥:Intel Corporation Xeon E3-1200 v2/3rd Gen Core 处理器 DRAM Controller (rev 09)
子系统:Hewlett-Packard Company Xeon E3-1200 v2 /第 3 代核心处理器 DRAM 控制器
标志:总线主控、快速开发、延迟 0
功能:
正在使用的内核驱动程序:ivb_uncore
内核模块:ie31200_edac

00:02.0 VGA 兼容控制器:Intel Corporation Xeon E3-1200 v2/3rd Gen Core 处理器图形控制器 (rev 09) (prog-if 00 [VGA controller])
DeviceName:Onboard VGA
Subsystem:Hewlett-Packard Company Xeon E3-1200 v2 /第 3 代核心处理器图形控制器
标志:总线主控、快速开发、延迟 0、IRQ 27
内存在 f7800000(64 位,不可预取)[size=4M]
内存在 e0000000(64 位,可预取)[size= 256M]
f000 处的 I/O 端口 [size=64]
000c0000 处的扩展 ROM [virtual] [disabled] [size=128K]
Capabilities:
正在使用的内核驱动程序:i915
内核模块:i915

00:14.0 USB 控制器:英特尔公司 7 系列/C210 系列芯片组系列 USB xHCI 主机控制器(版本 04)(prog-if 30 [XHCI])
子系统:惠普公司 7 系列/C210 系列芯片组系列 USB xHCI 主机控制器
标志:总线主控,中等 devsel,延迟 0,IRQ 26
内存在 f7d20000(64 位,不可预取)[大小 = 64K]
功能:
正在使用的内核驱动程序:xhci_hcd
内核模块:xhci_pci

00:19.0 以太网控制器:英特尔公司 82579LM 千兆位网络连接(Lewisville)(修订版 04)
设备名称:板载 LAN
子系统:惠普公司 82579LM 千兆位网络连接(Lewisville)
标志:总线主控、快速开发、延迟 0、IRQ 24
内存在 f7d00000(32 位,不可预取)[size=128K]
内存在 f7d39000(32 位,不可预取)[size=4K]
I/O 端口在 f080 [size=32]
功能:
正在使用的内核驱动程序:e1000e
内核模块:e1000e

00:1a.0 USB 控制器:Intel Corporation 7 系列/C216 芯片组系列 USB 增强型主机控制器#2 (rev 04) (prog-if 20 [EHCI])
子系统:Hewlett-Packard Company 7 系列/C216 芯片组系列 USB 增强型主机控制器
标志:总线主控、中等 devsel、延迟 0、IRQ 16
内存在 f7d38000(32 位,不可预取)[大小 = 1K]
功能:
正在使用的内核驱动程序:ehci-pci
内核模块:ehci_pci

00:1b.0 音频设备:英特尔公司 7 系列/C216 芯片组系列高清音频控制器(修订版 04)
子系统:惠普公司 7 系列/C216 芯片组系列高清音频控制器
标志:总线主控、快速开发、延迟 0 , f7d30000 处的 IRQ 29
内存(64 位,不可预取)[大小=16K]
功能:
正在使用的内核驱动程序:snd_hda_intel
内核模块:snd_hda_intel

00:1c.0 PCI 桥:英特尔公司 7 系列/C216 芯片组系列 PCI Express 根端口 1 (rev c4)(prog-if 00 [正常解码])
标志:总线主控、快速开发、延迟 0、IRQ 16
总线: primary=00, secondary=01, subordinate=01, sec-latency=0
I/O behind bridge: [disabled]
Memory behind bridge: f7c00000-f7cfffff [size=1M]
Prefetchable memory behind bridge: [disabled]
Capabilities:
内核驱动程序使用中:pcieport

00:1d.0 USB 控制器:Intel Corporation 7 系列/C216 芯片组系列 USB 增强型主机控制器#1 (rev 04) (prog-if 20 [EHCI])
子系统:Hewlett-Packard Company 7 系列/C216 芯片组系列 USB 增强型主机控制器
标志:总线主控、中等开发、延迟 0、IRQ 23
内存在 f7d37000(32 位,不可预取)[大小=1K]
功能:
正在使用的内核驱动程序:ehci-pci
内核模块:ehci_pci

00:1e.0 PCI 桥:Intel Corporation 82801 PCI Bridge (rev a4) (prog-if 01 [Subtractive decode])
Flags: bus master, fast devsel, latency 0
Bus: primary=00, secondary=02, subordinate=02 , sec-latency=32
I/O behind bridge: [disabled]
Memory behind bridge: [disabled]
Prefetchable memory behind bridge: [disabled]
能力:

00:1f.0 ISA 桥:英特尔公司 Q77 高速芯片组 LPC 控制器(修订版 04)
子系统:惠普公司 Q77 高速芯片组 LPC 控制器
标志:总线主控、中等开发、延迟 0
功能:
正在使用的内核驱动程序:lpc_ich
内核模块: lpc_ich

00:1f.2 SATA 控制器:Intel Corporation 7 系列/C210 系列芯片组家族 6 端口 SATA 控制器 [AHCI 模式](版本 04)(prog-if 01 [AHCI 1.0])
子系统:Hewlett-Packard Company 7 系列/C210 Series Chipset Family 6-port SATA Controller [AHCI mode]
Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 25
I/O ports at f0d0 [size=8]
I/O ports at f0c0 [size=4]
我的/O ports at f0b0 [size=8]
I/O ports at f0a0 [size=4]
I/O ports at f060 [size=32]
Memory at f7d36000 (32-bit, non-prefetchable) [size=2K]
能力:
使用的内核驱动程序:ahci
内核模块:ahci

00:1f.3 SMBus:英特尔公司 7 系列/C216 芯片组系列 SMBus 控制器(修订版 04)
子系统:惠普公司 7 系列/C216 芯片组系列 SMBus 控制器
标志:中等 devsel,IRQ 18
内存在 f7d35000(64 位,不可预取)[size=256]
f040 处的 I/O 端口 [size=32]
正在使用的内核驱动程序:i801_smbus
内核模块:i2c_i801

01:00.0 网络控制器:Intel Corporation Centrino Advanced-N 6205 [Taylor Peak](修订版 34)
子系统:Intel Corporation Centrino Advanced-N 6205 AGN
标志:总线主控、快速开发、延迟 0、IRQ 28
内存位于 f7c00000(64-位,不可预取)[大小=8K]
功能:
正在使用的内核驱动程序:iwlwifi
内核模块:iwlwifi

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
合作者

我确认你在主人中描述的事情。如果我在观察状态窗口的同时运行 chips 程序和单步执行,我可以看到大约每三步 m3/m5 在不应该发生变化时发生变化 – 可能与子例程后调用 m2 一致。我试过 AXIS 和 Qtdragon。我还没有时间进行 git-bisect。
当你说 linuxcnc 2.8.2 时,(如果你知道)它是否包括 2.8.2 之后尚未正式发布的错误修复?

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
作者

克里斯,这个测试是通过安装的 iso 下载完成的,然后通过 sudo apt update/upgrade 进行更新。我猜它不会有任何提到的未发布的修复程序。没有一个状态似乎是从我正在测试的 2.8 安装版本中的程序更新的。他们确实从 mdi 更新。他们也不会从操作按钮调用中更新。

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
合作者
安迪普 评论了 2022 年 2 月 6 日  

在 master 中,我经常在 M 代码中看到“M2”。这似乎不对。
我已经通过 2.8.2 回到了 2.7.15,基本上当前的 master 似乎是最好的。它至少能正确显示 G0 / G1 / G2 / G3。
我打算做一个 Git Bisect 来找到它停止工作的地方,但我不确定它是否曾经工作过,而且现在更接近于工作了。
也许需要一个测试程序来练习您认为应该更新的所有代码,以便更容易确定特定构建是“好”还是“坏”,因为我不确定我是否设法找到了“良好”状态。

(我试图回到 2.6,但我使用的测试机器是一个 preempt-rt 设置,而 2.6 不理解)

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
贡献者

启动了状态测试应用程序。不确定这是否在此存储库中有一席之地。
https://github.com/satiowadahc/LinuxcncTests

  • 需要pytest,pytest-qt
  • 使用另一个 UI 运行 linuxcnc(我可能会寻找一种方法将其添加到测试中)
  • pytest 测试状态.py
Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
作者
乐维特 评论了 2022 年 2 月 19 日 通过电子邮件
Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
作者
乐维特 评论了 2022 年 2 月 19 日 通过电子邮件
Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
贡献者
筒仓 评论了 2022 年 2 月 19 日 通过电子邮件
Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
贡献者

完成 3 个测试…还有 85 个测试。这可能是一个缓慢的过程。

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
作者
乐维特 评论了 2022 年 2 月 20 日 通过电子邮件
Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
合作者

这是怎么回事?

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
贡献者

已经编写了测试存根,记录了当前的问题、状态和计划。有些状态对我来说似乎很模糊,所以有人可能需要验证代码是否正确。

一旦它更完整,这个存储库中是否有一个位置?

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
作者
乐维特 评论了 2022 年 2 月 23 日 通过电子邮件
Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
作者
乐维特 评论了 2022 年 2 月 23 日 通过电子邮件
Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564

嘿,抱歉插话,我在玩进给率销 motion.feed-upm 时遇到了这个问题。这是我在此线程中的早期观察
https://forum.linuxcnc.org/38-general-linuxcnc-questions/41031-problem-with-feed-rates

我会保持简短,因为与你们相比,我不知道我在说什么,而且因为我不是在使用 G/M 代码,而是在 linuxcnc 状态下使用 F/S 代码。我观察到的主要是使用 G64 和 G61/G64 P0.001 Q0.001 之间的区别
您可以在“设置”行下的 linuxcnc 状态下观看,因为当前行随设置而变化,而不是运动线

使用 G64,在我的测试程序中,它预读了 3000 多行,并从预读 F/S 的最后一点显示 F 和 S 已更改,即距当前行 2000 多行。当它从 g0 移动到 g1/2/3 时,您可以观察到这些设置的跳跃,

对于 G61/ G64 P0.001 Q0.001,它会正确显示 F/S,因为它没有读取到实际运动线的前面。这似乎对 M 代码没有帮助,对于我的程序,它只是读取 m5 并开始在程序结束时切换 m30。

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
贡献者

这个有多难修?
有机会在 2.9 中使用它吗?

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
贡献者

夏天对我来说很忙,希望能在 10 月/11 月回到这里。

Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564
贡献者
筒仓 评论了 2022 年 8 月 27 日 通过电子邮件

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
标签
还没有
项目

还没有

发展

没有分支机构或拉取请求

6人参加
Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564Linuxcnc v2.8.2 和 2.9.0 状态错误 #1564

喜欢 (0)