Always getting`Error status: 10`



  • I think every single print I do, ends up with this error status: 10. Sometimes, I think it's been 18 but I haven't seen that in a while, and it might not have been 18.

    Here is an M122 from earlier today:

    M122
    === Diagnostics ===
    RepRapFirmware for Duet 2 WiFi/Ethernet version 2.05.1.1-simple_dynamic_unretraction running on Duet Ethernet 1.02 or later + DueX2
    Board ID: 08DGM-956GU-DJMSN-6J9D4-3SJ6K-1BNBF
    Used output buffers: 3 of 24 (15 max)
    === RTOS ===
    Static ram: 25712
    Dynamic ram: 93652 of which 0 recycled
    Exception stack ram used: 480
    Never used ram: 11228
    Tasks: NETWORK(ready,628) HEAT(blocked,1232) DUEX(suspended,160) MAIN(running,3744) IDLE(ready,160)
    Owned mutexes:
    === Platform ===
    Last reset 46:12:10 ago, cause: power up
    Last software reset at 2020-05-16 14:07, reason: User, spinning module GCodes, available RAM 11396 bytes (slot 3)
    Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0441f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d
    Error status: 10
    Free file entries: 9
    SD card 0 detected, interface speed: 20.0MBytes/sec
    SD card longest block write time: 128.3ms, max retries 0
    MCU temperature: min 34.2, current 34.8, max 36.7
    Supply voltage: min 23.9, current 24.5, max 25.0, under voltage events: 0, over voltage events: 0, power good: yes
    Driver 0: standstill, SG min/max 0/1023
    Driver 1: standstill, SG min/max 0/1023
    Driver 2: standstill, SG min/max 0/1023
    Driver 3: standstill, SG min/max 0/1023
    Driver 4: standstill, SG min/max not available
    Driver 5: standstill, SG min/max not available
    Driver 6: standstill, SG min/max not available
    Date/time: 2020-08-18 06:25:46
    Cache data hit count 4294967295
    Slowest loop: 379.99ms; fastest: 0.07ms
    I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
    === Move ===
    Hiccups: 2, FreeDm: 160, MinFreeDm: 97, MaxWait: 0ms
    Bed compensation in use: none, comp offset 0.000
    === DDARing ===
    Scheduled moves: 2700435, completed moves: 2700435, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
    === Heat ===
    Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
    Heater 0 is on, I-accum = 0.2
    Heater 1 is on, I-accum = 0.5
    === GCodes ===
    Segments left: 0
    Stack records: 1 allocated, 0 in use
    Movement lock held by null
    http is idle in state(s) 0
    telnet is idle in state(s) 0
    file is idle in state(s) 0
    serial is idle in state(s) 0
    aux is idle in state(s) 0
    daemon is idle in state(s) 0
    queue is idle in state(s) 0
    autopause is idle in state(s) 0
    Code queue is empty.
    === Network ===
    Slowest loop: 20.82ms; fastest: 0.06ms
    Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
    HTTP sessions: 1 of 8
    Interface state 5, link 100Mbps full duplex
    


  • Shoot, I just realized I'm running custom firmware -- so that could contribute. However, I've seen this before using this custom firmware, when I was still running stock. Darn it. I'll have to flash and re-test. I'm not using any of the modified features right now, but it's possible this firmware is outputting some debug info or something. Status 10 relates to SD card reads, correct?


  • Moderator

    @bot said in Always getting`Error status: 10`:

    Status 10 relates to SD card reads, correct?

    https://duet3d.dozuki.com/Wiki/Error_codes_and_software_reset_codes#Section_Error_codes

    I don't think so. "The status is a bit map" so 0x10 is actually 16. 10 would be 2+8, so:
    0x02 One or more step errors occurred
    0x08 Output stack overflow

    At least, I think that's how it works!

    Ian



  • Interesting. That would seem to make more sense. I had hiccups in the print. Output stack overflow could be the debug output from the custom firmware, or possibly my chrome DWC session?



  • I reverted to stock 2.05.1 firmware, and started a print. Not a single hiccup yet, but error status 10 already!

    M122
    === Diagnostics ===
    RepRapFirmware for Duet 2 WiFi/Ethernet version 2.05.1 running on Duet Ethernet 1.02 or later + DueX2
    Board ID: 08DGM-956GU-DJMSN-6J9D4-3SJ6K-1BNBF
    Used output buffers: 3 of 24 (8 max)
    === RTOS ===
    Static ram: 25712
    Dynamic ram: 93608 of which 0 recycled
    Exception stack ram used: 432
    Never used ram: 11320
    Tasks: NETWORK(ready,628) HEAT(blocked,1232) DUEX(suspended,160) MAIN(running,3800) IDLE(ready,160)
    Owned mutexes:
    === Platform ===
    Last reset 00:45:40 ago, cause: software
    Last software reset at 2020-08-21 20:35, reason: User, spinning module GCodes, available RAM 11432 bytes (slot 0)
    Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0441f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d
    Error status: 10
    Free file entries: 9
    SD card 0 detected, interface speed: 20.0MBytes/sec
    SD card longest block write time: 383.5ms, max retries 0
    MCU temperature: min 32.5, current 37.3, max 37.5
    Supply voltage: min 23.9, current 24.6, max 25.0, under voltage events: 0, over voltage events: 0, power good: yes
    Driver 0: ok, SG min/max 0/1023
    Driver 1: standstill, SG min/max 0/1023
    Driver 2: standstill, SG min/max 0/170
    Driver 3: ok, SG min/max 0/1023
    Driver 4: standstill, SG min/max not available
    Driver 5: standstill, SG min/max 0/144
    Driver 6: standstill, SG min/max not available
    Date/time: 1970-01-01 00:00:00
    Cache data hit count 4294967295
    Slowest loop: 228.62ms; fastest: 0.07ms
    I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
    === Move ===
    Hiccups: 0, FreeDm: 158, MinFreeDm: 127, MaxWait: 549089ms
    Bed compensation in use: none, comp offset 0.000
    === DDARing ===
    Scheduled moves: 8601, completed moves: 8563, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
    === Heat ===
    Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
    Heater 0 is on, I-accum = 0.2
    Heater 1 is on, I-accum = 0.5
    === GCodes ===
    Segments left: 1
    Stack records: 1 allocated, 0 in use
    Movement lock held by null
    http is idle in state(s) 0
    telnet is idle in state(s) 0
    file is doing "G1 E-0.500000000 F300.000000000" in state(s) 0
    serial is idle in state(s) 0
    aux is idle in state(s) 0
    daemon is idle in state(s) 0
    queue is idle in state(s) 0
    autopause is idle in state(s) 0
    Code queue is empty.
    === Network ===
    Slowest loop: 384.14ms; fastest: 0.02ms
    Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
    HTTP sessions: 1 of 8
    Interface state 5, link 100Mbps full duplex
    


  • @bot I saw the same limit for Cache data hit count 4294967295 (2^32-1) reached like for thread of @arhi in https://forum.duet3d.com/topic/17402/web-died-after-successful-print, maybe it's some overflow error.
    One reason could be an endless loop by mutually calling two macros (or in a custom firmware two methods calling each other, or endless recursion).

    Another point is that the 1023 values of the steppers mean a problem with them:
    Driver 1: standstill, SG min/max 0/1023
    ...
    Driver 3: ok, SG min/max 0/1023

    And not all moves were finished:
    Scheduled moves: 8601, completed moves: 8563

    Error 10 sometimes means defective SD card.



  • if nothing changed and out of sudden you have error status ... I bet it's a SD card



  • @JoergS5 said in Always getting`Error status: 10`:

    @bot I saw the same limit for Cache data hit count 4294967295 (2^32-1) reached like for thread of @arhi in https://forum.duet3d.com/topic/17402/web-died-after-successful-print, maybe it's some overflow error.
    One reason could be an endless loop by mutually calling two macros (or in a custom firmware two methods calling each other, or endless recursion).

    Another point is that the 1023 values of the steppers mean a problem with them:
    Driver 1: standstill, SG min/max 0/1023
    ...
    Driver 3: ok, SG min/max 0/1023

    And not all moves were finished:
    Scheduled moves: 8601, completed moves: 8563

    Error 10 sometimes means defective SD card.

    Thanks for the suggestions. I don't think there is any problem with stallguard or the steppers, they are all printing fine.

    The moves were not finished because the print is in progress.

    @arhi said in Always getting`Error status: 10`:

    if nothing changed and out of sudden you have error status ... I bet it's a SD card

    Yeah that was my first thought, even though this error doesn't seem to be causing any issue. I've had some random resets in the past that seemed related to networking, but this error status: 10 happens all the time seemingly without negative effect.



  • @bot dunno, depends what changed and when it started happening, in any way, if it's happening "non stop" it's super easy to test - change sd card and if it's gone... or not ...



  • I'm in the middle of a print, so I don't want to experiment with changing anything, but I noticed I had some settings as follows in DWC:

    General:
    Save cache in local storage = true
    Update delay for cache changes = 4000 ms

    I'm not sure of those would affect anything, or if they are the default values, but it's just something I thought to check because I remember seeing them. I wonder if my web interface session is too much because I'm stressing the duet quite a lot with 400 steps/mm on my x/y axes at 16x and ~4600+ steps/mm on my e axis at 16x microstepping. Maybe updating the position of the tiny gcode segments I'm printing is overwhelming something.


Log in to reply