DueX I2C Errors



  • Hi Everyone,

    I have been trying to print today and I am having itemitent issues with the printer slowing almost to a standstill. I get the following when I run M122:

    6:03:23 PMM122
    === Diagnostics ===
    RepRapFirmware for Duet 2 WiFi/Ethernet version 2.02beta1(RTOS) running on Duet Ethernet 1.02 or later + DueX2
    Board ID: 08DGM-956GU-DJMSN-6J9D4-3SD6Q-1VR7G
    Used output buffers: 1 of 20 (15 max)
    === RTOS ===
    Static ram: 28476
    Dynamic ram: 98124 of which 12 recycled
    Exception stack ram used: 596
    Never used ram: 3864
    Tasks: NETWORK(ready,400) HEAT(blocked,1192) MAIN(running,1660)
    Owned mutexes:
    === Platform ===
    Last reset 00:12:41 ago, cause: software
    Last software reset at 2018-11-08 17:50, reason: User, spinning module GCodes, available RAM 3952 bytes (slot 0)
    Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0441f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d
    Error status: 0
    Free file entries: 9
    SD card 0 detected, interface speed: 20.0MBytes/sec
    SD card longest block write time: 0.0ms, max retries 0
    MCU temperature: min 28.8, current 28.8, max 29.0
    Supply voltage: min 24.1, current 24.2, max 24.3, under voltage events: 0, over voltage events: 0
    Driver 0: standstill, SG min/max not available
    Driver 1: standstill, SG min/max not available
    Driver 2: standstill, SG min/max not available
    Driver 3: standstill, SG min/max not available
    Driver 4: standstill, SG min/max not available
    Driver 5: standstill, SG min/max not available
    Driver 6: standstill, SG min/max not available
    Expansion motor(s) stall indication: yes
    Date/time: 2018-11-08 18:03:22
    Slowest loop: 103.01ms; fastest: 97.37ms
    === Move ===
    Hiccups: 0, StepErrors: 0, LaErrors: 0, FreeDm: 238, MinFreeDm: 238, MaxWait: 0ms, Underruns: 0, 0
    Scheduled moves: 2955, completed moves: 2957
    Bed compensation in use: mesh
    Bed probe heights: -0.011 -0.002 0.004 -0.004 0.000
    === Heat ===
    Bed heaters = 1 -1 -1 -1, chamberHeaters = -1 -1
    Heater 0 is on, I-accum = 0.4
    Heater 1 is on, I-accum = 0.3
    === GCodes ===
    Segments left: 0
    Stack records: 3 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 ready with "M408 S0 R13" 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: 102.78ms; 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
    === Expansion ===
    DueX I2C errors 808

    I have have been running the same firmware for the past month with no issues until today. Not sure what is going on.

    Kind Regards,
    Sam



  • It seems to be printing now without any I2C errors and is not "Buffering" really badly anymore. I turned to power off at the wall. It is still printing really slowly however and I am wondering if it is the fact I have turned pressure advance on. I am using a S value of 0.05.

    Kind Regards,
    Sam



  • @samlogan87 I've had the same problem with the I2C errors a few times recently. The consensus is that it is a bad gnd connection between the Duet and Duex but I can't find anything amiss. Like you, cycling the power cures the problem.

    This seems to be a recent phenomenon. I don't remember any posts about I2C errors until fairly recently when a few of us have started reporting issues. It seems too much of a coincidence that all Duet/Duex combinations worked without I2C errors for months if not years and now suddenly these problems are starting to crop up. No disrespect to David (DC42) but I can't help wondering if something in firmware has changed to cause this behaviour.

    As for your slow printing, 0.05 pressure advance isn't much - I use 0.5. However, if you have extruder jerk set too low, this can affect how pressure advance works. Try increasing the extruder jerk if you can. I'm running with 3600 if that's any help.



  • @deckingman

    Thanks for the reply. Yeah it seems really strange. I will check my grounds etc tomorrow but I am pretty sure they are done up nice and tight with the ferrules as well.

    I have increased it. I am running a flex3drive and was given a low jerk value (6) from Jason and have bumped it up to 12 and it seems to be printing much faster and seems to have sorted an issue I have been having around the z seam where it was always missing plastic for the first 5-10mm of the new layer.

    Regards,

    Sam


  • administrators

    It's only recent versions of the firmware that count and report I2C errors.



  • @dc42 said in DueX I2C Errors:

    It's only recent versions of the firmware that count and report I2C errors.

    Yes understood. But the manifestation is that we get this sort of "buffering" or delay between sending a command and the printer reacting to it. In my case, when it happens this can be up to 8 seconds. Historically I don't recall any posts reporting such behaviour but lately there seems to have been a bit of a flurry of them. Not all that many, but then there aren't many of use using Duex expansion boards.

    Combine that with the fact that cycling power always cures the problem, the problem is occurring on printers that have been running for many months undisturbed (hardware wise) and it starts to look a little like there might be something else amiss perhaps?



  • Just reporting that I'm running a DuetWifi with Duex5 but haven't seen this I2C issue so far. I've been running pretty steady now for the past few months and I have only powered down my printer for updates and nozzle swaps ect..

    Now I do only use 1 driver from the Duex5 and 3 of the fan drivers if that makes any difference.

    But I will keep an eye out for it.



  • @timcurtis67 When it's happened for me, it's only ever been soon after powering up the printer - not immediately on power up but soon after. It's a very rare occurrence for me and I've printed multi-hour prints for days on end without any issues. Very odd.............



  • Thanks Ian, I will watch for those situations when powering up. Most of the time I just leave my printer running anyway.

    The only thing I have recently noticed is one of my fans to cool my DuetWifi board stays on after several hour of the machine being left on. I have the fan tied into the CPU temp to cycle on when needed. Its works fine but then after many hours (10+?) it just stays on. If I reset the Duet board it goes back to working as it normally should so it can't be a bad mosfet.

    Not a big deal since running is better than staying off...


  • administrators

    I've just rewritten the I2C driver for firmware 2.02RC4. We'll see whether that makes any difference.



  • @deckingman
    I had these issues with a previous version of the firmware and I upgraded as I think there was a few issues with that on. This one has been working fine for a while.

    @dc42 Could the buffering issues/duex I2C issues be related to issues around my pressure advance, which I only just enabled? I am running a flex3drive on my printer and the jerk setting for the extruder that was specified by the guy who makes them is 6. Could there be issues if the jerk is holding back the additional work being done for pressure advance because the jerk setting is too low, and it subsequently causing errors? My knowledge of all of how this works is very limited so I might be talking absolute rubbish.

    Regards,

    Sam



  • @dc42 said in DueX I2C Errors:

    I've just rewritten the I2C driver for firmware 2.02RC4. We'll see whether that makes any difference.

    Thanks David - I'll give a try when you release it. Due to the infrequent nature of the issue, it could be some time before I have anything to feed back though.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.