开源改变世界

程序中途崩溃 – “Guru Meditation Error” #472

推推 grbl 2年前 (2023-02-05) 256次浏览
关闭
3 个任务中的第 1 个
daxliniere 打开了这个问题 2022 年 6 月 6 日 · 16条评论
关闭
3 个任务中的第 1 个

程序中途崩溃 – “Guru Meditation Error”#472

达克斯利尼埃 打开了这个问题 2022 年 6 月 6 日 · 16条评论

评论

程序中途崩溃 - “Guru Meditation Error” #472

控制板

DLC32

董事会供应商的帮助

  • 是的
  • 不适用

机器描述

配置文件

board: MKS-DLC32 V2.1
name: SWOLE-CNC
meta: (23.04.2022) Dax Liniere, originally by Skorpi

kinematics:
  Cartesian:

stepping:
  engine: I2S_STATIC
  idle_ms: 0
  pulse_us: 4
  dir_delay_us: 1
  disable_delay_us: 0
  
axes:
  shared_stepper_disable_pin: I2SO.0
  x:
    steps_per_mm: 802.341
    max_rate_mm_per_min: 1500.000
# was 18000.000
    acceleration_mm_per_sec2: 80.000
# was 1500.000
    max_travel_mm: 301.000
    soft_limits: false
    homing:
      cycle: 2
      positive_direction: false
      mpos_mm: 0.000
      feed_mm_per_min: 20.000
      seek_mm_per_min: 200.000
# was 100 in first SWOLE-CNC iteration running MKS firmware
      settle_ms: 500
      seek_scaler: 1.100
      feed_scaler: 1.100

    motor0:
      limit_neg_pin: NO_PIN
      limit_pos_pin: NO_PIN
      limit_all_pin: gpio.36:high
      hard_limits: true
      pulloff_mm: 0.500
      stepstick:
        step_pin: I2SO.1
        direction_pin: I2SO.2:low
        disable_pin: NO_PIN
        ms1_pin: NO_PIN
        ms2_pin: NO_PIN
        ms3_pin: NO_PIN
        reset_pin: NO_PIN

  y:
    steps_per_mm: 802.322
    max_rate_mm_per_min: 1500.000
# was 18000.000
    acceleration_mm_per_sec2: 80.000
# was 300.000
    max_travel_mm: 187.000
    soft_limits: false
    homing:
      cycle: 2
      positive_direction: false
      mpos_mm: 0.000
      feed_mm_per_min: 20.000
# was 300.000
      seek_mm_per_min: 200.000
# was 5000.000 (was 100 with MKS firmware)
      settle_ms: 500
      seek_scaler: 1.100
      feed_scaler: 1.100

    motor0:
      limit_neg_pin: NO_PIN
      limit_pos_pin: NO_PIN
      limit_all_pin: gpio.35:high
      hard_limits: true
      pulloff_mm: 0.500
      stepstick:
        step_pin: I2SO.5
        direction_pin: I2SO.6:low
        disable_pin: NO_PIN
        ms1_pin: NO_PIN
        ms2_pin: NO_PIN
        ms3_pin: NO_PIN
        reset_pin: NO_PIN
  z:
    steps_per_mm: 802.497
    max_rate_mm_per_min: 1000.000
# was 18000.000
    acceleration_mm_per_sec2: 50.000
# was 500.000
    max_travel_mm: 46.000
    soft_limits: false
    homing:
      cycle: 1
      positive_direction: true
      mpos_mm: 0.000
      feed_mm_per_min: 20.000
# was 300.000
      seek_mm_per_min: 100.000
# was 1000.000
      settle_ms: 500
      seek_scaler: 1.100
      feed_scaler: 1.100

    motor0:
      limit_neg_pin: gpio.34:high
      hard_limits: true
      pulloff_mm: 0.500
      stepstick:
        step_pin: I2SO.3
        direction_pin: I2SO.4:low
        disable_pin: NO_PIN
        ms1_pin: NO_PIN
        ms2_pin: NO_PIN
        ms3_pin: NO_PIN
        reset_pin: NO_PIN

i2so:
  bck_pin: gpio.16
  data_pin: gpio.21
  ws_pin: gpio.17

spi:
  miso_pin: gpio.12
  mosi_pin: gpio.13
  sck_pin: gpio.14

sdcard:
  cs_pin: gpio.15
  card_detect_pin: NO_PIN
# This could be GPIO.39, but Card Detect has no supported functions in FluidNC

control:
  safety_door_pin: gpio.33:low:pu
  cycle_start_pin: NO_PIN
  feed_hold_pin: NO_PIN
  reset_pin: NO_PIN
  macro0_pin: NO_PIN
  macro1_pin: NO_PIN
  macro2_pin: NO_PIN
  macro3_pin: NO_PIN

macros:
  startup_line0:
  startup_line1:
  macro0: $SD/Run=lasertest.gcode
  macro1:
  macro2:
  macro3:

coolant:
  flood_pin: gpio.0
# continuous air
  mist_pin:  gpio.4
# pulsed air 
  delay_ms: 0

probe:
  pin: gpio.22:low
  check_mode_start: true
  

10V:
# Spindle
  direction_pin: NO_PIN
  forward_pin: gpio.5:low
  reverse_pin: NO_PIN
  output_pin: gpio.32
  enable_pin: NO_PIN
  pwm_hz: 5000
  disable_with_s0: false
  s0_with_disable: true
  spinup_ms: 10000
  spindown_ms: 20000
  tool_num: 0
  speed_map: 0=0% 0=25% 5868=25% 23237=99% 24000=100%
#DLC32 Spindle TTL max output voltage is 4.89v, so it can never reach 24000rpm/400Hz


#pwm:
#  direction_pin: NO_PIN
#  output_pin: gpio.32
#  enable_pin: gpio.5:low
#  pwm_hz: 5000
#  disable_with_s0: false
#  s0_with_disable: true
#  spinup_ms: 10000
#  spindown_ms: 20000
#  tool_num: 0
#  speed_map: 0=0% 0=25% 5868=25% 23237=99% 24000=100%


user_outputs:
  analog0_pin: NO_PIN
  analog1_pin: NO_PIN
  analog2_pin: NO_PIN
  analog3_pin: NO_PIN
  analog0_hz: 5000
  analog1_hz: 5000
  analog2_hz: 5000
  analog3_hz: 5000
  digital0_pin: NO_PIN
  digital1_pin: NO_PIN
  digital2_pin: NO_PIN
  digital3_pin: NO_PIN

start:
  must_home: false
# Pins that could be used: 0(SDA), 4(SCL), 5, 18, 19, 22, 23, 25, 26, 27, 32 (TTL spindle control), 33, 39, I2SO.7

启动消息

[MSG:INFO: FluidNC v3.4.6]
[MSG:INFO: Compiled with ESP32 SDK:v4.4.1-1-gb8050b365e]
[MSG:INFO: Local filesystem type is SPIFFS]
[MSG:ERR: Skipping configuration file due to panic]
[MSG:INFO: Using default configuration]
[MSG:INFO: Axes: using defaults]
[MSG:INFO: Machine Default (Test Drive)]
[MSG:INFO: Board None]
[MSG:INFO: SPI not defined]
[MSG:INFO: Stepping:RMT Pulse:4us Dsbl Delay:0us Dir Delay:0us Idle Delay:255ms]
[MSG:INFO: Axis count 3]
[MSG:INFO: Axis X (-1000.000,0.000)]
[MSG:INFO: Axis Y (-1000.000,0.000)]
[MSG:INFO: Axis Z (-1000.000,0.000)]
[MSG:INFO: Kinematic system: Cartesian]
[MSG:INFO: Using spindle NoSpindle]
[MSG:INFO: Connecting to STA SSID:Eggplant]
[MSG:INFO: Connecting.]
[MSG:INFO: Connected - IP is 192.168.2.81]
[MSG:INFO: WiFi on]
[MSG:INFO: Start mDNS with hostname:http://swolecnc.local/]
[MSG:INFO: SSDP Started]
[MSG:INFO: HTTP started on port 80]
[MSG:INFO: Telnet started on port 23]

用户界面软件

UGS 2.0.11

发生了什么?

程序正在运行,出现“Guru Meditation Error”

**>>> X52.193Y17.983

X52.472Y17.596
ok
X52.833Y17.24
ok
X53.232Y16.975
ok
X53.745Y16.779
[错误] 发送“Z19.25”时检测到错误:Guru Meditation 错误:核心 1 恐慌(禁用缓存但访问了缓存内存区域)。. 流式传输已暂停。
Core 1 register dump:
PC : 0x401a8010 PS : 0x00060035 A0 : 0x800823fa A1 : 0x3ffbf19c
A2 : 0x00000000 A3 : 0x00000100 A4 : 0x3ffb1fb0 A5 : 0x3ffb1f30
A6 : 0x3ffc0428 A7 : 0x3ffb2d78 A8 : 0x800815b4 A9 : 0x00000080
A10 : 0x3ffc3060 A11 : 0x00000000 A12 : 0x3ffb1f30 A13 : 0x3ffb1f10
A14 : 0x3ffc0448 A15 : 0x3ffb1f4c SAR : 0x00000020 EXCCAUSE: 0x00000007
EXCVADDR: 0x00000000 LBEG : 0x4008aecc LEND : 0x4008aed7 LCOUNT : 0x00000000
Backtrace:0x401a800d:0x3ffbf19c |<-CORRUPTED
ELF file SHA256: 0000000000000000 Rebooting

ets Jun 8 2016 00:22: 57
rst:0x3(SW_RESET),boot:0x1b(SPI_FAST_FLASH_BOOT)
configsip:0,SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
模式:DIO,时钟div :1
load:0x3fff0030,len:1184
load:0x40078000,len:12812
load:0x40080400,len:3032
条目 0x400805e4
[MSG:INFO: FluidNC v3.4.6]
[MSG:INFO: Compiled with ESP32 SDK:v4.4.1-1 -gb8050b365e]
[MSG:INFO: 本地文件系统类型为 SPIFFS]
[MSG:ERR: 由于恐慌而跳过配置文件]
[MSG:INFO: 使用默认配置]
[MSG:INFO: 轴: 使用默认值]
[MSG:INFO: 机器默认值 (试驾)]
[MSG:INFO: Board None]
[MSG:INFO: SPI not defined]
[MSG:INFO: Stepping:RMT Pulse:4us Dsbl Delay:0us Dir Delay:0us Idle Delay:255ms]
[MSG:INFO:轴数 3]
[MSG:INFO: X 轴 (-1000.000,0.000)]
[MSG:INFO: Y 轴 (-1000.000,0.000)]
[MSG:INFO: Z 轴 (-1000.000,0.000)]
[MSG:INFO :运动系统:笛卡尔]
[MSG:INFO:使用主轴NoSpindle]
[MSG:INFO:连接到STA SSID: Eggplant] [MSG
:INFO:正在连接。]
[MSG:INFO: Connected – IP is 192.168.2.81]
[MSG:INFO: WiFi on]
[MSG:INFO: Start mDNS with hostname:http://swolecnc.local/%5D
[MSG:INFO: SSDP Started]
[MSG :INFO: HTTP 在端口 80 上启动]
[MSG:INFO: Telnet 在端口 23 上启动]

**** GRBL 已重置。正在取消文件传输。****

Grbl 3.4 [FluidNC v3.4.6 (wifi) ‘$’ 寻求帮助]

$$
[MSG:INFO: ‘$H’|’$X’ to unlock]
$10 = 1 (Status report options, mask)
ok
$G
[GC:G0 G54 G17 G21 G90 G94 M5 M9 T0 F0 S0]
ok**

其他信息

没有反应

MitchBradley 添加了引用此问题的提交 2022 年 6 月 6 日

MitchBradley 添加了引用此问题的提交 2022 年 6 月 7 日

程序中途崩溃 - “Guru Meditation Error” #472

谢谢米奇。
刚在程序中途再次遇到此错误。一旦可用,将更新到 3.4.7。

程序中途崩溃 - “Guru Meditation Error” #472
作者
达克斯利尼埃 评论了 2022 年 6 月 8 日  

不确定它是否相关,但似乎在发生这种情况后,我的洪水冷却剂卡在了开启状态,发送 M9 或按下冷却剂覆盖按钮都没有帮助。控制器需要一个完整的电源循环。

程序中途崩溃 - “Guru Meditation Error” #472

崩溃后,它以“安全模式”重新启动,如下消息所示:

[MSG:ERR: Skipping configuration file due to panic]

因为它跳过了配置文件,所以它不知道哪些引脚用于冷却剂。

可以说,这并不理想,但如果它一遍又一遍地读取相同的错误配置文件,则重启循环的可能性也不大。

程序中途崩溃 - “Guru Meditation Error” #472
作者
达克斯利尼埃 评论了 2022 年 6 月 8 日  

可以说,这并不理想

我不会反驳这一点,以这种方式处理它是非常有意义的。谢谢你的信息,米奇。

顺便说一句,我现在回滚到以前的版本。到目前为止,山顶上还没有大师。;)

程序中途崩溃 - “Guru Meditation Error” #472

最新版本解决了这个问题吗?

程序中途崩溃 - “Guru Meditation Error” #472

我明天或后天有时间更新和检查,然后我会报告。

程序中途崩溃 - “Guru Meditation Error” #472

最新版本解决了这个问题吗?

:( 仍然存在于 3.4.9 WiFi 中。

[Error] An error was detected while sending 'Y0.894': Guru Meditation Error: Core  1 panic'ed (Cache disabled but cached memory region accessed). . Streaming has been paused.
>>> G17G3X40.923Y130.608I0.2J0
Core  1 register dump:
PC      : 0x40081837  PS      : 0x00060035  A0      : 0x800823e2  A1      : 0x3ffbf1fc  
A2      : 0x00000000  A3      : 0x3ffb5084  A4      : 0x3ffc30f4  A5      : 0x00000003  
A6      : 0x00000003  A7      : 0x00000004  A8      : 0xbad00bad  A9      : 0x3ffbf1dc  
A10     : 0x3ffb51a8  A11     : 0x00019200  A12     : 0xfffffff7  A13     : 0x3ffb1e80  
A14     : 0x00000020  A15     : 0x84000244  SAR     : 0x0000001f  EXCCAUSE: 0x00000007  
EXCVADDR: 0x00000000  LBEG    : 0x4008aef0  LEND    : 0x4008aefb  LCOUNT  : 0x00000000  
Backtrace:0x40081834:0x3ffbf1fc |<-CORRUPTED
ELF file SHA256: 0000000000000000
Rebooting...
程序中途崩溃 - “Guru Meditation Error” #472

我认为这个问题是由我必须做的一个粗糙的技巧引起的,它使 C++ 虚拟方法从中断服务例程中工作。ESP32 架构不喜欢在运行 ISR 时从 FLASH 访问数据。C++虚方法在FLASH中分配一些隐藏的数据结构,导致零星的失败。要修复它,我必须修改链接描述文件以将隐藏的数据重新定位到 DRAM 中。不幸的是,新的工具链为链接器脚本使用了不同的目录结构,所以我巧妙的解决方法被忽略了。

程序中途崩溃 - “Guru Meditation Error” #472

啊该死。嗯,很好的尝试,米奇。祝你好运找到解决方法。

程序中途崩溃 - “Guru Meditation Error” #472

嘿,如果没有 3.4.5 中发生的 ISR 更改,是否有机会获得新版本?

程序中途崩溃 - “Guru Meditation Error” #472

不是我的。

MitchBradley 添加了引用此问题的提交 2022 年 6 月 24 日

程序中途崩溃 - “Guru Meditation Error” #472

我想我想出了如何在新的工具链环境中应用 vtable 解决方法。见公关#472

程序中途崩溃 - “Guru Meditation Error” #472

不幸的是 3.5.0 pre1 没有解决

程序中途崩溃 - “Guru Meditation Error” #472 MitchBradley 提到了这个问题 2022 年 6 月 28 日
程序中途崩溃 - “Guru Meditation Error” #472

试用 v3.5.0-pre3

程序中途崩溃 - “Guru Meditation Error” #472

崩溃消失了吗?

程序中途崩溃 - “Guru Meditation Error” #472

我想你可能已经用 3.5.0pre5 搞定了,Mitch!我已经运行了 4 或 5 个程序(同一程序的变体),其中包含许多复杂的路径(Fusion 的 2D 自适应清除),到目前为止还没有发生一次崩溃。
当然,我会随时通知您,但这对我来说感觉非常可靠。

做得好!看起来这是一个非常棘手的问题。