@gloomyandy
You are totally right! I will rewire them for further testing.
However, do you see any reason why stealthChop should force such a behaviour?
So why does this never happen when stealthChop is not configured anymore ?
Posts made by StefanSch
-
RE: Duet3D StealthChop triggers non existing Sensorless homing
-
RE: Duet3D StealthChop triggers non existing Sensorless homing
So when starting to home the axis move some centimeters before triggering the phantom-endstop.
There is no error message or sth like this and the system just treats the axis as homed.The endstops are wired exactly as written in that guide (between the IN and GND pin). I also did think about some kind of interference, however somehow the axis and endstops work perfectly when no StealthChop is defined.
I have the same approach for the Y-Axis where none of this behaviour occurs...
Probably I should replace that axis for further tests over the weekend (even though I don't see any reason how a phantom endstop can be set up and get triggered )Thanks for your thoughts so far!
-
RE: Duet3D StealthChop triggers non existing Sensorless homing
@gloomyandy
That was my attempt to maneuver around that behaviour
I tried to set the max value for stall detection, so it never gets.
I tried the setup without that line as well, but the behaviour stays the same.If I set up the axis without StealthChop it works perfectly fine (but too loud for my application)
-
Duet3D StealthChop triggers non existing Sensorless homing
Dear all,
some time ago we started setting up our 3D system (Dual Z and Dual Y) with the Duet 3 6HC mainboard. This one is equipped with the TMC2160 motor drivers.
Our system is equipped with endstopps at every axis. However, when I set StealthChop mode for the X-Axis, the homing of the X-Axis gets triggered without hitting the endstop, resulting in a wrong position of our printbed. The X-Axis is set up in a way to always work in StealthChop.My motor config and homing protocoll looks as follows:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; General Purpose Input Output (GPIO) Pins ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; M950 P10 C"out4" M42 P10 S0 ; 1V M950 P11 C"out5" M42 P11 S0 ; 1V ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Expansion boards ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; set current for expansion boards M950 P4 C"out1" ; Exp0 M42 P4 S1 ; set current Exp0 100% (24V) M950 P5 C"out2" ; Exp1 M42 P5 S1 ; set current Exp0 100% (24V) G4 P2000 ; wait 2s for power ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Drive configuration ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; axes M569 P0.0 S1 D3 V10 ; X backwards to adjust to coord system M915 P0.0 S2 F0 R2 M569 P0.1 S1 D3 V1 ; Y_l forwards M569 P0.2 S0 D3 V1 ; Y_r forwards (somehow one axis got another direction) M569 P121.0 S0 D3 V10 ; Z_l forwards M569 P122.0 S1 D3 V10 ; Z_r forwards (somehow one axis got another direction) ; extruder M569 P0.3 S0 ; E0 + U M569 P0.4 S0 ; E1 + V ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Axes/Extruder configuration ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; mapping M584 X0.0 Y0.1:0.2 Z121.0:122.0 E0.3:0.4 U0.3 V0.4 ; set drive mapping + UVW driver for Extruder Homing ; config M350 X16 Y16 Z16 E16:16 U16 V16 ; configure microstepping with interpolation M92 X160 Y160 Z400 E6400:6400 U6400 V6400 ; set steps per mm M566 X1000 Y1000 Z200 E100:100 U100 V100 ; set maximum instantaneous speed changes (mm/min) M203 X1200 Y1200 Z400 E200:200 U200 V200 ; set maximum speeds (mm/min) M203 I0.000001 ; set minimum overall movement speed to practically zero M201 X1000 Y1000 Z1000 E100:100 U100 V100 ; set max accelerations (mm/s^2) M906 X1400 Y1400 Z1400 E300:300 U300 V300 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; limits M208 X0 Y0 Z0 U0 V0 S1 ; minima M208 X165 Y108 Z130 U80.3 V80.3 S0 ; maxima ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Endstops ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; mechanical M574 X2 S1 P"!io5.in" ; configure mechanical endstop for X on the high end M574 Y1 S1 P"!io6.in" ; configure mechanical endstop for Y on the low end io7.in not working on this setup M574 Z2 S1 P"!io3.in" ; configure mechanical endstop for Z on the high end + second endstop should be added in future update round M574 U1 S1 P"!io8.in" ; configure endstop for left extruder on io8 M574 V1 S1 P"!io2.in" ; configure endstop for right extruder on io2
The homing protocoll looks as follows:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; X Axis Homing Script ; ; 0:/sys/homex.g ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; make sure it is safe to home x axis if !move.axes[1].homed: M291 S3 P"Homing of Y-Axis required" M98 P"homey.g" ; make sure it is safe to home x axis if !move.axes[2].homed: M291 S3 P"Homing of Z-Axis required" M98 P"homez.g" ; move Z to a save print bed distance if move.axes[2].machinePosition < 30: G1 Z30 M291 S3 P"Please remove any additional equipment." J1 M913 X80 ; drop motor current to 80% G91 ; relative positioning G1 H1 X-300 F600 ; move quickly to X axis endstops and stop there (first pass) G1 H2 X5 F600 ; go back a few mm M400 G1 H1 X-10 F250 ; move slowly to X axis endstops once more (second pass) G1 H2 X5 F250 G90 ; absolute positioning G92 X0 G1 X105 F1000 M913 X100 ; increase motor current back to 100%
If any further Information is required to fix this issue I am more than happy to provide this!
Bests,
Stefan -
RE: M42 seemingly not working on my Duet 6HC Mainboard
@achrn
Perfect, thank you for the detailed explanation! Really helped me to fix my issue. -
RE: M42 seemingly not working on my Duet 6HC Mainboard
@achrn Thanks for the reply!
So I attached an LED between GND and out4 (with the corresponding serial resistor of around 220 ohm).
If I connect the LED between GND and V_OUTLC1 it lights up brightly and everything is fine. If I remove the pin from the V_OUTLC1 and connect it to out4 I cannot make the LED light up, no matter what S value I use for the M42 command. The LED is still working, so that is not the issue.
I also tried to leave the LED connected between GND and V_OUTLC1, but out out4 -->GND still sits near ground.Maybe I get something fundamentally wrong, but maybe you could give me some more guidance on how to apply a positive voltage to an external pin.
-
M42 seemingly not working on my Duet 6HC Mainboard
Hey all,
First some Information: I am using a Duet 3 6HC (v1.02) mainboard (with two Duet 3 1HCL expansion boards, which work perfectly fine). I am trying to use the Duet 3 "out4" and "out5" pins to drive a small voice coil motor (with the adequate motor driver in between). Therefore, I need to set the PWM Pins to 3-4 V.
What I did so far:
Configure the pins in the config.g (M950 P10 C"out4", M950 P11 C"out5"). The Pin numbers are unique and not used otherwise.Sending M42 P10 S0.5
Sending M42 P11 S0.5I tried to measure the voltages according to the docs, however, I get the following results (the jumper is set to 12V):
(https://docs.duet3d.com/duet_boards/duet_3_mb6hc/duet3_mb_6hc_v1.02_d1.1_wiring.png)GND --> V_OUTLC1 : 12V
GND --> out4.tach : 3.3V
GND --> out4: 40-60 mV
V_OUTLC1 --> out4.tach: 7.5VIf I use the same procedure with the out3, I can precisely adjust the voltage with the M42 command.
I am happy for any feedback on possible error tracking/fixing!