When I home Y axis the motor moves forward about 5mm than stops.
-
It does not reverse to bring the Y carriage back to the home position because for some reason it thinks it is homed even though it has not activated the Y endstop. This is on a CNC Router using a Duet 3 and Nema 23 motors. It has dual Y axis motors and one Y axis end stop. My config.g is below. X and Z both work as expected. Any help would be appreciated. Thanks
;Base config file generated by RepRapFirmware Configuration Tool v3.3.10 on Tue Apr 19 2022 16:45:47 GMT-0400 (Eastern Daylight Time) Modified By JADO 5/10/22 For CNC Router Application
; General preferences
M575 P1 S1 B57600 ; enable support for PanelDue
M453 ; Enable CNC Interface Support
G90 ; send absolute coordinates...
M83 ; Relative extruder moves
M550 P"Duet3" ; set CNC Router name; Drives
M569 P0.0 S1 ; X physical drive 0.0 goes forwards
M569 P0.1 S1 ; YR physical drive 0.1 goes forwards
M569 P0.4 S1 ; YL physical drive 0.2 goes forwards
M569 P0.3 S1 ; Z physical drive 0.3 goes forwards
M584 X0.0 Y0.1:0.4 Z0.3 ; set drive mapping X-Driver 0 YR-Driver 1 YL-Driver 2 Z-Driver 3 on Board 0
M350 X16 Y16 Z16 I1 ; configure microstepping with interpolation
M92 X80.00 Y80.00 Z400.00 ; set steps per mm
M566 X900.00 Y900.00 Z60.00 ; set maximum instantaneous speed changes (mm/min)
M203 X6000.00 Y6000.00 Z180.00 ; set maximum speeds (mm/min)
M201 X500.00 Y500.00 Z20.00 ; set accelerations (mm/s^2)
M906 X800 Y800 Z800 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 X0 Y0 Z0 S1 ; set axis minima
M208 X875 Y1000 Z108 S0 ; set axis maxima; Endstops
M574 X1 S1 P"io1.in" ; configure switch-type endstop for low end on X via pin io1.in
M574 Y1 S1 P"io2.in" ; configure switch-type endstop for low end on Left Y via pin io2.in
M574 Z1 S1 P"io3.in" ; configure switch-type endstop for low end on Z via pin io3.in; Fans
M950 F0 C"out6" Q500 ; Create Case Fan Control on pins Out6
M106 P0 S1 H1 ; Start Fan0 (case Fan) Thermostatically controlled disabeled;LED Indicator Light
M950 P0 C"out1" ; create 24v LED power light on pin "out1"
M42 P0 S1 ; Use "out1" as a switch and turn it on on boot up; Tools
M950 R0 C"out2+out7" ;set tool 0 Spindle on pins out7 (could also use any open outX or ioX.in port +out7)
M950 R1 C"Out3+out8" ;Set Tool 1 Dust Collector on pins out8 (could also use any open outX or ioX.in port +out8); the following tools are turned off and on using g-code M3 S1000 command to turn on and M5 to turn off
M563 P0 S"Spindle" R0 ; P0=tool number, S=Tool Name, R0= Spindle Number which defines tool 0
M563 P1 "Dust_Collector" R1 ; create On/Off switch for tool Vacuum; Custom settings are not defined
; Miscellaneous
;M911 S19.8 R22 P"M913 X0 Y0 G91 M83 G1 Z3 F1000" ; set voltage thresholds and actions to run on power lossT0 ; select first tool spindle
T1 ;select second tool dust collector -
@jadoglio said in When I home Y axis the motor moves forward about 5mm than stops.:
It does not reverse to bring the Y carriage back to the home position because for some reason it thinks it is homed even though it has not activated the Y endstop. This is on a CNC Router using a Duet 3 and Nema 23 motors. It has dual Y axis motors and one Y axis end stop. My config.g is below. X and Z both work as expected. Any help would be appreciated. Thanks
A homing move uses the form G1 H1. This type of move stops when the endstop is triggered.
So a typical homing might look something like this:
G1 H1 X100 F3000 ; fast move toward endstop G1 X-10 ; backup a bit G1 H1 X15 F300 ; slow move toward endstop
Now remembering that the G1 H1 moves will stop as soon as the endstop is triggered if you are only seeing a short move it is likely because the firmware sees the endstop as being triggered at the start of the move even when nothing is near the endstop.
The most likely cause is that the endstop is configured such that the "default" state is triggered. Or there is a wiring error causing the same.
If it is just the case of the logic being backwards you can try adding a exclamation point character before the pin name. So "io2.in" would become "!io2.in".
However since X and Z work this doesn't seem likely unless you are using a different kind of endstop sensor for Y than you are using for X and Z.
Frederick
-
@fcwilt Thanks for the input. All sensors are the same. Just for kicks I added the ! and the motor did start turning moving the Y axis in the direction of the end stop. However, when I manually triggered the end stop the motor did not stop. It is a NC switch and I even tried booting with the switch in a NO position. In either position when I started the Y home moving and released the switch to closed it still did not stop.
I have checked the wires connecting the board to the switch, and the switch itself. All wiring is active and the switch is working as a NC SPST mechanical switch should work. I have tried different pins for the end stop as well.. For whatever reason Rep Rap seems to be ignoring the input and in the correct position the board sees the switch as always open and in the inverted position it sees it as always closed. But, in the inverted position it does run because it is trying to find home vs thinking it is home.
-
@jadoglio said in When I home Y axis the motor moves forward about 5mm than stops.:
@fcwilt Thanks for the input. All sensors are the same. Just for kicks I added the ! and the motor did start turning moving the Y axis in the direction of the end stop. However, when I manually triggered the end stop the motor did not stop. It is a NC switch and I even tried booting with the switch in a NO position. In either position when I started the Y home moving and released the switch to closed it still did not stop.
I have checked the wires connecting the board to the switch, and the switch itself. All wiring is active and the switch is working as a NC SPST mechanical switch should work. I have tried different pins for the end stop as well.. For whatever reason Rep Rap seems to be ignoring the input and in the correct position the board sees the switch as always open and in the inverted position it sees it as always closed. But, in the inverted position it does run because it is trying to find home vs thinking it is home.
Well then doesn't it mean that one of the following may be true:
- the switch is defective
- the wiring is defective
- the board input is defective
The fact the adding/removing the exclamation point character just shows the the logic state of whatever the firmware is reading is being inverted/not inverted. It doesn't mean the signal on the pin is actually getting into the chip where it belongs.
Did you try a different input (and of course change the configuration for the Y endstop)?
Can you post a picture of the wiring going into the board?
Frederick
-
@fcwilt I have resolved the issue. Thanks for your help. Yes, it does mean that those three options are about all there is. In fact, I started at the switch and checked continuity at all points where a break could occur all the way back to the JST connector on the board. They all passed. So, I took the pins out of the JST connector and checked those, they were fine. When I put it back together and connected it to the board, it started working. It appears the problem was the pins in the connector were not making a connection (which makes no sense but that is what is seems to have been).
-
-