Duet sometimes really slow? - I2C error or?



  • Hello, so sometimes my duet acts kinda crazy - When I start a print, it does one move at a time, and then a long pause between every move. (even when just homing). It will do a move, wait 1-3 sec and then do the next move. If I reset the printer, it works fine. - It have also happend mid-print, that it suddenly starts to do these slow moves. (the move it self is at normal speed, but a long pause between moves)

    I tried to pull an M122 and got this:

    === Diagnostics ===
    RepRapFirmware for Duet 2 WiFi/Ethernet version 2.01(RTOS) running on Duet WiFi 1.02 or later + DueX5
    Board ID: 08DGM-956GU-DJMSN-6J9F8-3S06R-KAQ3H
    Used output buffers: 4 of 20 (10 max)
    === RTOS ===
    Static ram: 28476
    Dynamic ram: 96628 of which 16 recycled
    Exception stack ram used: 380
    Never used ram: 5572
    Tasks: NETWORK(ready,400) HEAT(blocked,1248) MAIN(running,3484)
    Owned mutexes:
    === Platform ===
    Last reset 00:13:01 ago, cause: reset button or watchdog
    Last software reset at 2018-10-14 08:00, reason: User, spinning module GCodes, available RAM 5668 bytes (slot 2)
    Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0441f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d
    Error status: 0
    Free file entries: 7
    SD card 0 detected, interface speed: 20.0MBytes/sec
    SD card longest block write time: 9.8ms, max retries 0
    MCU temperature: min 38.3, current 42.5, max 42.8
    Supply voltage: min 24.2, current 24.3, max 24.6, under voltage events: 0, over voltage events: 0
    Driver 0: standstill, SG min/max 0/131
    Driver 1: standstill, SG min/max 0/131
    Driver 2: standstill, SG min/max 0/140
    Driver 3: standstill, SG min/max not available
    Driver 4: standstill, SG min/max 0/212
    Driver 5: standstill, SG min/max not available
    Driver 6: standstill, SG min/max not available
    Driver 7: standstill, SG min/max not available
    Driver 8: standstill, SG min/max not available
    Driver 9: standstill, SG min/max 0/258
    Expansion motor(s) stall indication: no
    Date/time: 2018-10-14 08:13:32
    Slowest loop: 216.66ms; fastest: 0.07ms
    === Move ===
    Hiccups: 0, StepErrors: 0, LaErrors: 0, FreeDm: 240, MinFreeDm: 236, MaxWait: 705026ms, Underruns: 0, 2
    Scheduled moves: 15, completed moves: 15
    Bed compensation in use: none
    Bed probe heights: 0.405 0.000 0.000 0.000 0.000
    === Heat ===
    Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
    Heater 0 is on, I-accum = 0.1
    Heater 7 is on, I-accum = 0.1
    === GCodes ===
    Segments left: 0
    Stack records: 3 allocated, 2 in use
    Movement lock held by file
    http is idle in state(s) 0
    telnet is idle in state(s) 0
    file is idle in state(s) 37 0 5
    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: 199.77ms; fastest: 0.01ms
    Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
    HTTP sessions: 1 of 8
    - WiFi -
    Network state is running
    WiFi module is connected to access point 
    Failed messages: pending 0, notready 0, noresp 0
    WiFi firmware version 1.21RC4(08b3)
    WiFi MAC address 5c:cf:7f:76:6c:56
    WiFi Vcc 3.39, reset reason Turned on by main processor
    WiFi flash size 4194304, free heap 16456
    WiFi IP address 192.168.0.31
    WiFi signal strength -63dBm, reconnections 0, sleep mode modem
    Socket states: 0 0 0 0 0 0 0 0
    === Expansion ===
    DueX I2C errors 42341
    

    My guess is the 42341 I2C errors? - why does they orcur?


  • administrators

    The most common reason for I2C errors is that you don't have a short thick ground wire between the VIN terminal blocks of the Duet and the DueX. See https://duet3d.dozuki.com/Wiki/Duex2_and_Duex5_Features#Section_Wiring.



  • @dc42 said in Duet sometimes really slow? - I2C error or?:

    The most common reason for I2C errors is that you don't have a short thick ground wire between the VIN terminal blocks of the Duet and the DueX. See https://duet3d.dozuki.com/Wiki/Duex2_and_Duex5_Features#Section_Wiring.

    Ah, i see - my are connected at the power supply, will try to make a direct wire.



  • Hello,
    I have the same problem. After a print time from 1-2 days the duet had a slowdown. The print stops and takes several seconds for the next move, and so on.

    I uploaded a video for this question in this forum. So, you can see what happend.
    https://vimeo.com/295064630

    I have relative short cables between the Duet and the Duex5 (only 7cm + 7cm) for VIN and ground. Additionally, the cables are relative thick (about 2.5mm^2).

    In the picture you can see the connections from the powersupply to the Duet and the Duex5.

    Did I connect it correctly? What can I do?

    0_1539551521669_DSC_0510.JPG

    Note: For the print on the video, I only used the first extruder on the main Duet. The other 4 extruder were only connected on the main Duet and the Duex5.

    Best regards
    Thomas



  • @tbs said in Duet sometimes really slow? - I2C error or?:

    Hello,
    I have the same problem. After a print time from 1-2 days the duet had a slowdown. The print stops and takes several seconds for the next move, and so on.

    I uploaded a video for this question in this forum. So, you can see what happend.
    https://vimeo.com/295064630

    It is exactly how my also behaves - Have not tried the shorter wires yet.



  • Here are additional information for my configuration:

    VIN: 24.1V
    0_1539593329859_DuetVersion.PNG
    Here is my config: config.g

    I hope you can help me, please.



  • @tbs Bit of a long shot but your problem might be the Wago connector - especially if there is any oxidisation of the conductors. You can get two thickish cables in the terminal blocks on the boards so try a cable direct to the Duet terminal block, then a link from that to the Duex and do away with the Wago connector altogether.


  • administrators

    Check that all the screws connecting the ground wire to the Duet and X5 VIN terminals are tight, and check for I2C errors in the M122 report when the problem occurs.



  • Thanks for your suggestions!

    1. I will try to remove the wago connectors and solder the cables instead. (The wago connectors were only 6 month old.)
    2. I will replace the cable between the powersupply and the Duet and the Duex5. So I can exclude a cable break.
    3. The screws were very tight. This could not be the problem.

    Thanks to deckingman and Mr. Crocker.



  • Hello,
    I have now implemented your suggestions a few weeks later.

    I have changed the following:

    • The cable to the power supply has been replaced with another 2.5mm ^ 2 cable
    • Cable length 10.8 cm plus wire end sleeves (about 1.8 cm)
    • Wiring is as in your instructions
    • VIN and GND go directly to the Duet Ethernet. From there they go directly from the wire end sleeve into the Duex5
    • Update to the 2.02RC6

    Unfortunately without success! It has gotten worse now. Now sometimes I have the error even if I turn on the Duet.

    I've already read this bug including videos in your forum several times. For example:
    https://forum.duet3d.com/topic/3735/slowdown-issue/14
    Has the reason been found for this error meanwhile?
    Is it maybe the Duex5. This was often mentioned in these posts.
    Did I make a mistake with the wiring?
    Could it be that I have a cable break or loose contact somewhere?

    Here is the log with M122:
    0_1544922580210_M122_Error.txt


  • administrators

    @tbs, this line in the M122 report:

    I2C nak errors 0, send timeouts 25011, receive timeouts 0, finishTimeouts 25010

    indicates that the cause is I2C errors. If you are certain that you have fixed the VIN ground connection, then the problem may lie in the ribbon cable.



  • The VIN / Ground connection ist correkt.
    If it is the ribbon cable, what should I do?


  • administrators

    Replace it.



  • Which grid size / dimension do I need for the cable and the plug? How long can it be maximum.


  • administrators

    It's a standard 2x25 IDE ribbon cable connector at each end, 2.5mm pitch pin spacing. The cable I use is 150mm long and I suggest you don't make it much longer than that.

    You could try re-clamping the existing ribbon cable connectors in a vice first. Use cardboard to protect the plastic from the jaws.



  • Hello,

    I replaced the ribbon cable. I have a third time replaced the cables from the powersupply to Duet and Duex5 (11 cm, maximum cable thickness which fits into the Duet socket)

    A few longer prints have worked with it. A few days ago, the error unfortunately occurred again.

    Procedure:
    It was printed simultaneously with Driver 5 and 6 (M567).
    Duration of the print about 1 day.
    Everything worked here.
    After that, the printer has been waiting for 5 hours without turning off.
    At the beginning of the next print, the error has occurred again.

    Here are the M122 traces:

    1. The error has occurred and the printer has been paused
    2. The error has occurred and the printer has printed
    3. The error has occurred and the printer has printed (15 seconds later)

    All 3 traces files have different error messages and show different values ​​(for example in the category: Driver 5: ok, SG min / max not available, Driver 6: ok, SG min / max not available or LaErrors: 694)

    How can I solve the problem now?
    Should I buy a new Duex5?
    Would it be a workaround to generate a power load on all two boards (always turn on all heaters)?
    Maybe the cables to the extruders are too long with 2m (E0 E3D Super Whopper Motor, E1-E3 E3D High Torque Motor)?

    I have already spent 300 euros on filament for misprints because of this error.

    I am urgently asking for help.



  • @tbs I had similar I2C problems but in my case it only happens once every 3 months or so. David (DC42) told me to upgrade to 2.02 final with the comment that the I2C part had been completely re-written between RC4 that I was using and the final release. I note that you are on RC6 but I have been unable to find anything to say when exactly the I2C code was re-written so it could be after RC6. Suggest you upgrade to 2.02 final (DC will tell you to in any case) then report back if you still have problems.


  • administrators

    @TBS, please upgrade to the 2.02 release as @deckingman suggests. However, the major rewrite of the I2C subsystem happened at version 2.02RC6, so in all honesty I don't expect this to change things.

    It appears that either something is disrupting the I2C communication between the Duet and the DueX5, or the communication is being lost for some other reason. If we can eliminate wiring issues, then I'll recommend that we try replacing your DueX5.

    Please post a photo or photos of your Due/DueX5 setup, that show clearly the power wiring and the ribbon cable.


  • administrators

    PS - in testing the I2C communication at high speeds, I found it helpful to reduce the values of the I2C pullup resistors on the DueX5. The simplest way to do this is to connect a resistor with a value between 1.3K and 2.2k between the TWC and +3.3 pins of connector J13 on the DueX5, and another between TWD and +3.3, like this:

    alt text

    If you don't have the means to make this yourself, we may be able to send you a ready-made one. If you do make one yourself, take great care not to short the 3.3 and 5V pins together.



  • @dc42 Thanks for that. I'll give it a go on mine. I only rarely get the problem so can't yet say if upgrading from RC4 to final has fixed it for me. I may as well try this mod as well. I think I'll make up a lead that will plug in. Then I can insulate the leads and test it for shorts before I plug it in.



  • @dc42 Will try to add some resistors to mine - I get the problem about once every 20-ish start - Way fewer than before the new SW, but will see if that gets rid of the last errors. - The 1:20 error is not that much of an problem, but I fear that it will happen midt print (It did in the old SW, but haven't had any longer prints yet with the new sw)


 

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