Misfittech / nano_stepper

Stepper feedback controller
424 stars 179 forks source link

Duet Board Support #40

Closed vmario89 closed 4 years ago

vmario89 commented 4 years ago

Dear Misfit team, i've got a question belonging to the manual you provide. At the moment i plan to wire up Smart Stepper to a Duet 2 Ethernet Board. In manual is written: grafik

As i don't find any recent information i just wanted to ask you directly by creating this issue. Can you provide some support information please?

kind regards, Mario

coolio986 commented 4 years ago

Since the Duet creates additional pulses on the enable line, it is possible that the smart stepper may not produce movement if the pulse is not seen correctly. This could result in a loss of print quality or uncontrolled behavior. What can be done as a workaround is to set the enable pin high with a external pullup between 5v and enable with a 1k resistor. This will keep the smart stepper always enabled.

vmario89 commented 4 years ago

Hi, i just came up by thinking about wiring to the 50 pin JTAG connector because this is prepared to provide additional external steppers (STEP, DIR, ENABLE, VIN, GND are available):

grafik

Do i oversee something? I think this way the wiring of Smart Stepper should be possible to do directly without any soldering of pullup resistors on the "External Test Points" of the pre-soldered TMC drivers, right?

coolio986 commented 4 years ago

@vmario89 No soldering is needed to force the enable high. The resistor can go between enable and 5v on the smart stepper only via the terminal board.

coolio986 commented 4 years ago

@vmario89, is this working now?

vmario89 commented 4 years ago

hi, weeks later i had now time to fix it. I got it working finally. With Duet 2 Ethernet and Smart Steppers it works the following way:

Short instructions:

Notes: my printer is still not finished and not running. I will see if the pullup 1k is required maybe but i think RRF fixed with the issue. Please have a look at https://forum.duet3d.com/topic/11492/smart-steppers-conn_lcd/13 which seems to point to that issue (?)

regards and thanks four your efforts. Would be happy if you could update your documentation sources.

regards, Mario

vmario89 commented 4 years ago

to advance the provided information: stumpled upon some post of DC42 at Duet forum some days ago. maybe helpful too > https://forum.duet3d.com/topic/7952/smart-stepper/4

dc42 commented 4 years ago

Since the Duet creates additional pulses on the enable line, it is possible that the smart stepper may not produce movement if the pulse is not seen correctly. This could result in a loss of print quality or uncontrolled behavior. What can be done as a workaround is to set the enable pin high with a external pullup between 5v and enable with a 1k resistor. This will keep the smart stepper always enabled.

The Duet treats the enable line in the standard way, i.e. sets it active the first time the driver is used, and it sets it inactive if you use M18 or M84 to set the motors idle. So there are no "extra pulses".

The default enable polarity is active low, which is standard for stepsticks and all stepper driver chips that I am familiar with. You can change it to be active high using the R1 parameter of the M569 command.