Skr Pro 1.2 "infamous" endstop issue

So I read the “troubleshooting” part of the manual when it comes to the Skr Pro 1.2 board not responding to the endstops (my LEDs are flashing on the card but the machine is not stopping), and I believe I’m one of those “lucky” with that type of card…so…

  • I read some here on the forum and first I did a M115 and hopefully my firmware is correct (“Marlin 515DL 2.1.1”)

  • Secondly, I’ve only tried the third option in the “troubleshooting” section; “Modify the end stop wires to add the 1.5K ohm resistor” with straight up cutting one of two wires, adding the resistor in between but no luck. Am I suppose to place it some other way?

  • I saw a picture of adding the resistors on the motherboard (see below) but I’m a bit confused, I can see that the resistor on the image is connected between V and S, but in the manual V is not used (marked as “X”). Can someone clarify this for a non-tech savvy guy? And it didn’t work with soldering resistor to the cable, so will it be any difference with this technique?


I just did an M119 trigger test (press an endstop while sending the M119 command) and got the following (they are all “open” without pressing anything):
z1: z_max triggered
z2: z2_max open
y1: y_min triggered
y2: y2_min open
x1: x_min open (this one is still connected to a 1.5K ohm resistor)

So 2 out of 5 trigger is responding (though the functional ones will not stop the machine), what needs to be done here?

Are you trying to drive the machine manual and expecting them to stop or are they not stopping when you home?

1 Like

It appears that your board is working correctly. As Jonathan has hinted at, the endstop switches are only used during homing. They won’t stop if you are just moving around. The M119 info you provided is correct. If you had the issue, then you might see “open” even when the switch is pressed. If the machine is not stopping during homing, then there is a chance you have the SKR Pro endstop issue, but there are other possibilities that you need to check out first. The more likely cause is that you’ve reversed Y1 and Y2 when you plugged the endstops into the control board.

As for the resistor, the resistor does go between the (currently unused) V pin and the S pin. I just went out and looked at the topic where someone added the resistor to the wiring, and if I’m reading the wiring correctly, he did it incorrectly. The V voltage needs to flow through the resistor on its way to the S pin like it does in the picture you provided where the resistors are soldered to the board.

By using the touch display on the machine (moving in increments of 0.1, 1, 10, 100mm). I haven’t gotten so far to use in any other way (total newbie on this). Will it actually behave differently while homing? Can I home the machine with the same touch display?

Yes, the switches are only read during homing, so the machine not stopping when just moving around is expected. If you hold down the control knob for a couple of seconds you will put your display in Marlin mode. There are homing options on the V1 menu in Marlin mode. There are other ways to home as well.

2 Likes

You can home from the touch display as well. Hit movements then home, there you can hit home and it will home all 3 axis, Z then X then Y, or you can individually home which ever axis you choose

2 Likes

Thanks for the help! It did trigger when homing…the first time only! It was wonderful to see it home but when I did it a second time (3rd, 4th…) the motors kept going, nothing stopped. What made it stop working after the first time? The first successful try was in Marlin mode but the others didn’t really matter Marlin/Touch mode

Does one side stop but not the other? When it fails to stop, are the endstop LEDs lit on the control board? If you start homing and hit the switches by hand, what happens?

1 Like

I have to wonder how many SKR boards out there have this fix when it wasn’t the problem… at least it doesn’t do any harm.

Adding the resistor in-line with the wiring can actually cause a problem, where the pin will always read triggered, instead of open, so I hope you removed that.

If you reverse the sides that the switches are on, it might work, but it might appear to keep “grinding”. The firmware is moving 2 motors (let’s say Y axis) towards 0, and one stop triggers. It then stops moving the associated motor, but keeps moving the other one until the other stop.is triggered. If you have the left trigger on the left motor, it’s all good, but if the trigger stops the right side motor, then the stopped motor will never trigger the other side to stop. Worse, it’s already at the end of travel, so it keeps on trying to move.

At least that doesn’t really harm anything.

The solution there is to just swap either the motor wires the end stop wires. It doesn’t actually matter which to make it work, but it may be better if you are sure which motor is Y1 and which is Y2.

I agree. People seem to jump on this fix before exhausting the other possibilities.

I will check this weekend

I only have one resistor on the x endstop which I will remove. But that one alone shouldn’t affect the others now should it? Could it?

They are connected correctly but as a paranoid person I’ll check again :laughing:

No, it would only affect the X end stop, unless you’ve done something really weird.

Here is a test for your others though:

  • Start well away from the home position.
  • Home just the one axis (Y or Z)
  • Use your finger to press one stop switch. The mptor on the same side as the switch you pressed should stop.
  • Use your finger to press the other stop switch. Now both motors should stop, and they should back off a few mm before trying again. Again, stop both sides.

If the motor opposite the switch stops, you need to switch the end stop connectors around. Well, or the motor connectors. (On my LR3, Z1 is on the left, and Y1 is on the right. It just kind of ended up that way, but it works better for my end stop adjustments to level and square the machine.)

So I removed the resistor, checked cables, homed everything over and over again and for a few times it was working well but sometimes, especially with the Z axis, I get a bit of a hickup (spoiler alert: hammer time!):

It’s only happening on my Y2 motor/endstop, like the motor is letting go and then soon find the strength to go at it again.
Sorry, didn’t think of checking the LEDs when this happened but otherwise they work as they should.

So the video is showing a Z endstop, and you are saying Y endstop?

The post above this Dan is mentioning some tests. Manually touching your endstops to assure that the Z1 and Y1 end stops are associated with the Z1 and Y1 steppers (people mix that up all the time).

The noise and action yours is doing does not seem very normal. Typically, there would be some sort of grinding noise or a longer drop. Let see what the manual test shows. You could have binding or mixed up the wiring.

My bad, a typo, meant Z axis. I did all the manual checking and it all worked perfectly but I’ll disassemble everything again tomorrow and recheck and I’ll let you know my results.

Binding could be an issue though, I’ve noticed that when I lower the whole gantry manually it gets harder closer to the bottom. All holes align well between the printed parts and motors + XY plates but I can see that my z axis lead screws are tilting a bit outwards despite that, so I’ll see what I can do to fix it

Your Z post/s is too long. If you have metal plates you can just take them off and sand the back a little bit, sometimes they are just sitting at an angle

Ok, back for a fight!..so yesterday I:

  • disassembled everything electric
  • shortened wires where possible
  • resoldered everything
  • changed dupont connectors to fitting JST connectors on the endstop cables for more secure signal
  • double-checked all connections between MCU and endstops + motors with the LR3 manual and an electrician co-worker, they are all in their right position and giving signal 100%.
  • I pivoted all connectors that where moving the motors in the wrong direction
    All looks fine!

Started this day with many homings(?), both on separate axes as well as “home all” (all commands through the touch screen menu)…worked flawlessly everytime!

…however…
Until this moment I’ve been moving all axes, by hand, away from their homing positions/endstops (by using the button “Disarm all”) so they get some travel distance when I homed them again…but when I started doing a homing from an already “homed” position (they were next to the endstop) I guess they know that they are triggering the endstops so they move in the opposite direction for a few millimeters and then quickly start homing again. At least for the X axis, it looks like the travel is a bit too short/fast since at this point I got an error;
Printer halted. kill() called!

And after that I tried homing a couple of times but my machine always went back to the same issues as before i.e. keep running into the endstops with motors still running.

Only thing I noticed after this is that the “Disarm all” button doesn’t work, motors are locked and can’t be moved (at the time X and Z were locked but Y could move freely).

(my speculations) If I had not done homing so close to the endstops maybe, if I had continue doing homings, I might have run into this issue eventually…coincidental? …not sure.

Is there something I’m missing here now? Something else I can do? Is this related to the topic with which I started this thread? I’m lost and frustrated X(