why is this working at all?

  • Recently upgraded Railcore coreXY to Moons NEMA23 MS23HA8P4220 as used by some other members of the community. Finding that get occasional "Warning: motor phase B may be disconnected reported by driver0" type messages after rapids (200mm/s), this forum lead me to the reprapfirmware calculator for back EMF. Plugging in the numbers get the following result. Quite shocked. How are these motors working in my setup at all?


  • just to clarify, shocked by the 84v and wondering how am printing happily and with great results? (despite the warnings)

    the microstepping is actually set to 1/16 with interpolation to 256 so the "step pulse frequency" number on the calculator probably shouldn't be red?

  • @r123 said in why is this working at all?:

    microstepping is actually set to 1/16

    choose x16 microsteps then

  • administrators

    I'll ignore the x256 microstepping because I presume you are really using x16 with interpolation.

    What's happening is that above about 50mm/sec, the combination of high inductance, 0.9deg and relatively high current means that 24V isn't enough to maintain current. At 200mm/sec they are running at around one quarter of the current you set. They are probable noisy at speeds above 590mm/sec too.

    This is a much more suitable motor for the Duet 2, although it's 1.8deg not 0.6deg: https://www.omc-stepperonline.com/nema-23-stepper-motor/3-pcs-nema-23-bipolar-1-8deg-1-26nm-178-4oz-in-2-8a-2-5v-57x57x56mm-4-wires.html.

  • @bearer Ok have done but doesn't influence the 84v number.

    since the calculator turns that number red when it goes above the 24v supplied voltage, am thinking that this number is WAY to high and the system shouldn't be working at all?

  • Moderator

    @r123 That's a really high inductance motor. See https://duet3d.dozuki.com/Wiki/Choosing_and_connecting_stepper_motors#Section_General_recommendations

    Avoid motors with rated voltage (or product of rated current and phase resistance) > 4V or inductance > 4mH.


  • @dc42 an obsession in the Railcore community is wall quality. It's been figured out the way to get really great "stacking" of layers (one perfectly on top of the next with little wobble) is to have a) the small step angle.... b) as high a torque as possible;

    Hence the odd choice.

    Have just heard that other folks may have been doing their travel moves at 150mm/s and not 200mm/s so may try next print like that.

  • Update:

    • the first print (200mm/s travel speeds and quite a lot of warnings) came out fine;

    • launched a second print (with 150mm/s travel speeds) and a couple of hours in haven't had a single warning;

    Feel better to have a basic grip of the problem. A natural next step would be to try 175mm/s travel etc. etc.

    Perhaps in 3d printing there are none of the forces experienced with a CNC-mill such that there are but two important roles of torque: a) delivering the requested acceleration; b) ensuring that an arc of motion terminates as close as possible to the position specified at the microstep level. Have the impression that there's no shortage of torque for acceleration (in general in 3dp), rather that acceleration is limited by the appearance of ringing type artefacts. Therefore that it's precise positioning that is more critical. Since positioning is something that happens, by definition, at low speeds it can be assumed that back EMF has at that point died away?

    Out of curiosity @dc42 what is the logic applied to trigger the "motor phase X may be disconnected" message? That a certain value has crossed a threshold and remained beyond it for a certain amount of time?

    Must admit do like the whoosh of fast travel speeds together with leaving minimal time for the nozzle to ooze. Is it OK to run fast and with occasional warning messages?

  • administrators

    @r123 said in why is this working at all?:

    Out of curiosity @dc42 what is the logic applied to trigger the "motor phase X may be disconnected" message? That a certain value has crossed a threshold and remained beyond it for a certain amount of time?

    That is a warning generated by the drivers when there hasn't been a chopper event for a certain period of time.

  • Thanks. Found in the TMC2660 datasheet. The time interval is "the last period with constant coil polarity". Confusingly in the general description it says "back EMF exceeds the supply voltage" but then in the table "actual coil current below 1/16 of maximum setting". Don't quite sound like the same thing?


  • administrators

    RRF3 disables the open-load warning when the motor current is set to 500mA or lower. In older versions of RRF2 the threshold was 300mA.

    The "when driving in fullstep mode" condition appear not to be necessary to get these warnings when the supply voltage is too low.

Log in to reply