dual Z motors, U "occasionally" goes crazy!?

  • Hi Guys,

    SOOO close to finishing the upgrade to the 1m3 printer, and now has just appeared a strange issue - I was re-tramming the bed manually after a mishap with the U movement buttons (it seems if hiding U using P3, cannot see U endstops, which was necessary during commissioning, but if shown with P4, U home on PanelDue, and home OR movement on DWC, didn't do anything anyway - well at the last moments of a homing move I discovered U movement buttons on PanelDue, and found they DO work - so the bed went twisty when U went down while Z kept going up to home, the Z endstop didn't make contact as it went out of line, the bed got forced against upper part of structure, things bent, etc... anyway, I diverse!)...

    When using the Z movement buttons (only Z now, no U anymore! P3 added to M584), a disturbing noise/movement has appeared, but it only affects U motor, and only appears occasionally - I have done various hardware diagnostics:

    • first swapped U and Z connectors on expansion board (and endstops on Duet!) - the issue changed sides, so it seemed the issue was the port on the expansion board
    • then moved U from E8 to E9, but this did nothing
    • then tried moving Z from E7 to E8 - still issue is same, only affects U motor
    • tried swapping X, Y, and Z, U ports, so now X8 Y9 Z5 U6 - again issue only shows in U motor

    this has lead me to think that there may be an issue with the software, as all hardware seems to work fine: after exchanging Z motors, issue changes side; after exchanging all axis, issue still affects only the U axis, where ever it is - is there anything that could be affecting this via software, but only occasionally? Or maybe there is something else wrong with the printer??

    I attach some videos it seems videos cannot be added, so, 1st time using youtube πŸ˜‰
    that of the right side is with correct orientation of Z and U, from PanelDue, +0.5mm, that of the left side is with swapped connectors, same, and that of left side from underneath is with swapped connectors, from DWC, +1mm - in all videos, I press repeatedly the move button until issue manifests. I have cut somewhat the videos to make them shorter.


  • administrators

    Please post your config.g file.

  • @dc42 the file is a "notebook" where I copy all changes from the DWC, once I make any changes there...
    0_1524343174660_actual config.txt

  • administrators

    Your config.g file looks OK to me. I think it may be an issue with your U stepper driver. Have you tried exchanging the U stepper driver with one of the others?

  • @dc42 no, haven't tried exchanging stepper drivers, I had ruled out issues with the stepper drivers, as swapping ONLY the connectors (Z to U and U to Z) on the expansion board transferred the issue to the other motor: the actual stepper drivers stayed connected to their respective motors, so the left hand z-motor (originally Z) kept the left hand driver, and the right hand z-motor (originally U) kept the right hand driver - when swapped on the expansion board, U to now use the left, and Z to the right; if the right hand driver itself was having issues, then the same right hand motor (now Z) would still show the issue, regardless of whether it was connected/assigned as Z or as U... at least that is how I understand it!

    It seemed (until swapped Z & U, and also X and Y) that maybe the E8 port was maybe having issues, but the issue follows what ever motor is assigned as U, regardless of where U is connected, and regardless of whether U is the left or right motor... strange to say the least!

    That said I will revise this suggestion next time I am at the machine... πŸ˜‰


  • @dc42 I have tried swapping drivers, the issue stays with the same motor, so the driver is not the issue...
    I managed to make another video:

    homed Z, then sent z+ (bed down on this machine) 5mm various times; the 1st and 2nd moves are OK, 3rd move OK but sounds distinct, then 4th move goes wrong (Z-right, U, moves UP instead of down!), then 5th move is OK, 6th move is OK but sounds strange, and again 7th move is wrong - it seems, on the longer moves at least (where I have time to appreciate it?), that the move just BEFORE the one that goes wrong, one can hear a difference in the sound of the z-motors: this may just be that the U z-motor is already having an issue in this movement, even thou it does go in the right direction still, but it is the movement just after that is in the wrong direction 😞

    Also just to note, when the movement is 5mm, it seems to be just in opposite direction, but at same speed and amount, where as the shorter movements (0.5 or 0.05mm from Panel, or 0.1 or 1mm from DWC) seem to also have an increased jump in speed and amount moved, as well as in the opposite direction!

    don't know what to try, strangely everything seems to indicate issue with what ever motor is assigned as U, irrelevant what side of the machine it is! For me this can only be an issue on board the Duet, where somehow the software is going crazy!

    I am about to order a new Duet Ethernet and Expansion board, if you think this will help, to diagnose this issue better... if on replacing the Duet or Expansion board the issue clears up, then I'll get back to you about how to resolve that... does that sound OK to you?

    PD I would replace first the ribbon cable between the boards, test, then replace the Expansion board, test, then finally replace the Duet. If have to replace the Duet, would then double check re-replacing the cable and expansion board with the present ones, just to make sure πŸ˜‰

  • administrators

    Are you certain the problem isn't as simple as the Z acceleration or maximum speed being set too high?

    Please post a M122 report taken after the problem has occurred.

  • @dc42 Hi David,

    If that was the case, why does the issue go from one side to the other when I swap connectors on the expansion board? And why does the issue show so suddenly and randomly... and also, in the last video, why does the U motor go backwards in 2 of the 7 movements.. ?
    By the way, did you appreciate the change in tone of the movement just before the reversed move? Any idea what that could mean?

    I will certainly try reducing speed and acceleration, but I have seen the issue also when doing a bed compensation with the piezo probe, at F150, as well as normal moves at F600.

    I will not be able to get back to the machine until thursday, so then I will try various M112 whilst and after the problem has occurred. I’ll get back to you then.

    Thanks a lot for taking the time to attend this forum, i know you have a lot of work too, I for one (and many others I’m sure!) appreciate your help resolving our problems πŸ˜‰
    Just thought you need to hear that once in a while!


  • Still unresolved! Anyone have an other ideas...?

    @dc42 Now just replaced Duet and expansion board, I did it straight out, all at once, all 3 parts (expansion board + cable + duet), just to try and eliminate anything to do with previous electronics - the issue continues! 😞

    Before swapping out everything, I took down M122 output at 4 stages, just for comparison purposes: power on, homed, after lowering bed once strange sound is noted, and after the issue itself reproduces (U is reversed - ALWAYS happens on next move after strange sound). I attach the M122 outputs - I could not tell if there was anything wrong, at least there did not seem to be any errors...:

    0_1524920202918_M122_power on.txt
    0_1524920214324_M122_lowering bed, sound distinct.txt
    0_1524920220025_M122_U motor moved reversed.txt

    so it looks like there is nothing wrong with the electronics, so in theory no longer should keep asking for help on the forum... 😞

    FWIW, I have again, with new electronics, after verifying issue is still present, swapped ONLY Z & U motor connections to expansion board, (and also their endstops) - issue transfers to the other motor (was in right motor, now is in left motor) - this is what has me most stumped, as simple diagnostic practice should indicate that there is nothing wrong with anything after the board, if only swapping connectors on the board makes the issue change place...
    The only other thing is now maybe is not so frequent... hard to tell
    I took new board, it already had 1.21 on board, and adjusted config.g on SD card to my setup, and substituted my homing, pause, resume, trigger and bed files, and macros.

    Any ideas from anyone else would be greatly appreciated!
    PS header added so that phrase comes up on forum thread list πŸ˜‰


    PPS the only other thing I can think of is electrical noise, but have no idea how to test that idea...

  • Still unresolved! Anyone have an other ideas...?

    So I have done some more experiments (!)... I decided to measure voltages between enable (+ & -), direction & pulse, both on the expansion board and on the driver connector - I have seen some strange (?) behaviour, but I am not an electronics guy, so am not sure..

    1. when the issue produces, the direction voltage changes on the expansion board ONLY on the affected motor, so it seems the reversed signal is still coming form there...?
    2. when I measure positive voltages (when the bed has just been ordered to raise (z -ve)), the voltage is exactly the same on expansion board and driver - when I measure negative voltages, there is a difference, sometimes quite a lot... I put the voltages measured, maybe they mean something to someone better qualified than myself:

    After homing, last X & Y move was towards endstop, last Z move was away from endstop (2mm z +ve)
    expansion board ... driver ... difference
    X ena -4.05 ... -4.43 ... 0.38
    X dir -4.65 ... -5.95 ... 1.3
    X pul -4.69 ... -5.91 ... 1.22
    Y ena -4.02 ... -4.04 ... 0.02
    Y dir -4.85 ... -5.27 ... 0.42
    Y pul -5.04 ... -5.32 ... 0.28
    Z ena -4.01 ... -4.50 ... 0.49
    Z dir -4.68 ... -5.09 ... 0.41
    Z pul -4.59 ... -5.28 ... 0.69
    U ena -3.98 ... -4.15 ... 0.17
    U dir -4.75 ... -5.32 ... 0.57
    U pul -4.72 ... -5.42 ... 0.7

    swapped Z & U again, same, after homing...
    U ena -3.89 ... -4.10 ... 0.21
    U dir -4.58 ... -5.17 ... 0.59
    U pul -4.58 ... -5.06 ... 0.48
    Z ena -3.91 ... -4.24 ... 0.33
    Z dir -4.55 ... -4.87 ... 0.22
    Z pul -4.51 ... -5.26 ... 0.75

    after homing, lowered bed, then RAISED as last move (z -ve)
    Z ena -4.05 ... -4.72
    Z dir 3.25 ... 3.25 +ve voltage exactly the same on board and driver
    Z pul -4.72 ... -5.65
    U ena -3.9 ... -4.32
    U dir 3.25 ... 3.25 +ve voltage exactly the same
    U pul -4.5 ... -5.45

    I have no idea why when -ve voltages they are so different, when +ve voltage they are exactly the same πŸ˜• any ideas?

  • administrators

    What's puzzling me more is that the voltage at the drivers is often more than 5V. It's as if the stepper drivers are driving the differential line drivers on the board. Are the differential line driver chips on the Duet external stepper board getting hot?

    Please provide a link to the datasheet for the drivers you are using.

  • @dc42 I’m afraid I am no longer at the machine... by differential line driver chips you mean the chipset that is on the expansion board itself, or the driver chips on the duet board? I have not checked if they heat up... I will be back monday midday...

    The drivers are sannoon sn2405a, I don’t have a datasheet, and most of the web is in chinese! FWIW, i had on hand some different drivers today and tried installing on the z-axis; the issue is still present... i did not however make new measurements of the voltages.

    I did make a couple more tests, thinking maybe something to do with the correct earthing of the machine - i happen to have installed the expansion board on a different surface than where the duet is installed - all surfaces are painted steel, so I had assumed the whole machine would be earthed, but, to check, I tried unfixing 1st the expansion board, then the duet, letting both hang by the cables - this did not seem to have any effect either, but during all these tests I had had the ethernet cable plugged in - on unplugging it the machine now stopped responding via the paneldue!
    I have yet to mount again the duet and expansion board to see if the machine now responds without the ethernet cable plugged in - on Monday I will continue!
    Not sure what this means yet πŸ˜‰


  • @andymidtf @dc42

    Opps! looks like the comment about the machine stopping responding on unplugging the ethernet was premature - on removing the ethernet cable I also managed to press the microSD card without realising it, and it was not correctly inserted - on inserting fully the machine now responds correctly (duet and expansion board still hanging), but still has the issue 😞

    Neither the chipsets on the expansion board or the driver chipsets on the Duet are heating up at all, even after 10 mins holding position with motors energised.

    F*** this is getting annoying...

    Additionally, measuring again the voltages on just the X axis, getting (about) 4v (ena), 4.6(dir) and 4.6(pul) on the expansion board, and 4.85, 6.15 and 6.20 on the driver! Even more than before... there is no difference with or without ethernet plugged in

    AND, even more strange stuff that makes me think it is a problem of negative or earthing: just for fun (!) I tried reversing the tester probes, +ve to -ve and -ve to +ve - there is a small difference, sometimes a reasonable one, between most -ve voltages - in theory (and in the practice measuring, for example, the Duet power input connections) reversing the tester probes should just give a -ve reading of what was being read, but...:

    After moving the X axis AWAY from endstops (dir is +ve voltage now)
    Voltage on expansion board connector, and on the driver connections:
    With tester normal ... (R)eversed:
    X ena -4.06 .... R 4.25 Driver -4.96 .... R 5.76
    X dir 3.22 .... R -3.22 Driver 3.22 .... R -3.22
    X pul -4.75 .... R 4.81 Driver -6.30 .... R 6.35

    Especially on the Enable, and more on the driver, there is a difference of 0.8v when I think there should not be! Again, when measuring a +ve voltage on the expansion board (dir), there is no difference on the driver, NOR if I reverse the tester probes (how it should be, and how it is also on the Duet power in).

    Any ideas on how I can test this? Either disconnecting stuff or reading voltages between other parts? Or the chassis..? I have the feeling something is not right and maybe it is this which is causing the issue... not sure what else to try about the issue right now!


  • administrators

    What exactly are you using to measure the voltages to the drivers?

  • @dc42 a multimeter.... I am measuring across each pair of cables, as indicated on the wiring diagram of the wiki of the expansion board, and the stepper has the connectors marked; enable, direction and pulse, first on the 6 wire connector on the expansion board, then touching the screw terminals of the connector of the same pair on the stepper driver.. first I was making sure I respect orientation of the multimeter (red probe to +ve, black to -ve), and then found that swapping these gave distinct results (instead of just a reversed value).

    FWIW, I just tried something new, and issue still shows - I disconnected completely the external steppers on Z & U, and connected them straight to the Duet onboard drivers, on Z & E0, corrected config.g as needed, checked directions - machine works fine, except for when issue shows again...

    Also, FWIW, as am not sure if now the issue seems slightly more intermittent than a few days ago (I think I mention that further up), now, instead of trying +/- 5mm (++++++, then -------, then ++++++, etc), as this seems to take longer for the issue to show, I am doing +/- 0.05mm, until I get a rough sound & rapid move (like the first videos), and then straight after do +5mm, and the U goes -5 whilst Z still goes +5...

    I am ever more sure that there is an issue with negative or earthing on the machine, just don't know how to locate... FWIW (again!), I am actually changing to Duet, as on the original Chinese board the Z2 (U on Duet) connector on the logic board stopped working correctly, but to the point where it would not give any signal at all (tried swapping Z1 and Z2 connectors and which ever motor was connected to Z2 output did not move) - I had to end up piggybacking the Z2 connector on the Z1 connector just to be able to use the machine, but levelling was manually turning the Z2 motor leadscrew!:πŸ˜† as this was not acceptable in the long run, I opted to change main board to Duet... that and the fact I have much more control over the machine, have added a piezo z-probe, will be able to add more extruders, the laser filament extruder, etc... πŸ˜‰


  • administrators

    Which firmware version are you using? I don't think I've asked yet.

  • @dc42 this board came with 1.21... the last board came with 1.19, and I upgraded to 1.21...
    Me tinks maybe should downgrade? to 1.20? see what happens? this can be down I assume... not like iPhone where once gone up, cannot come down!


  • I tried downgrading, but the board complains is missing Duet2Combined... even when I use a new micro SD with FW 1.19.2 loaded on the card!

  • administrators

    @andymidtf said in dual Z motors, U "occasionally" goes crazy!?:

    I tried downgrading, but the board complains is missing Duet2Combined... even when I use a new micro SD with FW 1.19.2 loaded on the card!

    To downgrade from 1.21, rename the DuetWiFiFirmware.bin file you want to install to Duet2CombinedFirmware.bin.

  • Hi David,

    So I have tried all FW from 1.19.2 up to 2.0RC2, all behave the same...
    I have redone a few simple tests:

    1. all drivers from onboard Duet drivers - issue still arises
    2. connecting both external z-motor drivers to 1 Duet external port, basically for the Duet there is now NO U motor, and both z-motors are controlled as one - pain for levelling, have to manually twist right leadscrew, but with this set up issue DISAPPEARS!
    3. went back to 2 external independent z-motors, U added, issue comes back.

    the issue I am very sure has to do with Duet on board problems, however I still have the strong feeling that external EMI is causing these onboard problems, however I am still at a lose as to how to test this... there are many cables that run parallel, including 220v ac, 24v dc, and stepper motor cables, all together, and also the cables for the extruder motor, 2 always on fan, print fan, z-probe, heater and thermister, that run together for over 3m, via 2 cable chains on X and Y axis... this as well as the noted difference in voltages on the drivers, and the additional observation of distinct voltages when inverting the tester probes (only when the original ena,dir,pul voltages start out negative!! if they are +ve, like when dir is +ve, then there is NO difference inverting the probes, apart from the +/- sign itself!)

    My next plan will be trying to re-cable the machine, cable by cable, outside of the chassis, until either all cables are hanging outside of the machine, and separated between them selves, or I find the pair that is affecting the machine!

    Any other (better!) ideas are appreciated πŸ˜‰


  • administrators

    Do you have a chamber heater configured? If so, check what happens if you disable it by never sending M141.

  • @dc42 No, there is no chamber heater configured... there IS a chamber heater, but it is completely independent (at the moment, I was thinking of later including control in the Duet), and is run by its own heater control.
    I have M140 H-1 in config.g, so no instruction should be sent for bed/chamber anyway?


Log in to reply