Lowrider V3 Endstops Do Not Trigger

The pull up solution is working like a champ. I havenā€™t seen a single failure since then. I have been able to move forward on the build. Iā€™ve cut three 55 inch truss pieces on my 48 inch table by using locator pins, nice plywood yz plates, and 0.25inch aluminum xz plates without issue. Iā€™m glad I installed the endstops and got them working.

S

3 Likes

FYI: Another builder cut the traces to the endstop LEDs, and also solved the problem.

1 Like

@vicious1, are you seeing these posts about the skr pro bit working well with endstops? There have been a couple and the solution is to change the led circuit. Makes me think they changed something in those parts.

Shoot, thanks for bringing this to my attention.

I have old and brand new boards here. Maybe I can get out the USB microscope and see if anything has changed.

I wonder if there is any chance a nightly build would work better. My LR3 has not had XYZ issues but for a bit the Touch plate was a bit wonky. (it uses nightlies whenever I think to change it and it is a board from a while back)

1 Like

Donā€™t think this is a firmware issue. Take a look at the circuit diagram Steve posted above. All it would take is slightly out of spec current limiting resistors or LEDs, or a microcontroller that required a slightly higher voltage to be considered high vs. floating, to cause the problem. Adding a 1K pullup resistors, or cutting the trace to the LEDs has solved the problem for anyone who has tried.

1 Like

WARNING: Extremely geeky electrical tech description :rofl:
What I saw was the open circuit voltage that the voltage divider was right at the threshold of what the microcontroller interprets as a ā€œ1ā€ or high. Logic devices have a minimum input voltage that it interprets as a high, Vih-min, and maximum input voltage of what it interprets as a low, Vil-max. There is a ā€œno manā€™s landā€ between the Vih and Vil that provides noise immunity by making sure input voltages are never in that area. Typically, that gap isnā€™t a problem as the logic chips are designed to work within those parameters. However, when connecting outside circuitry (the voltage divider, LED, etc.) the voltages presented are up to the circuit designer. I looked at the microcontrollerā€™s logic signal specification (Vih Vil) and the voltages I measured were very very close to Vih. Unfortunately, these voltage specs are also temperature related so you can get intermittent behavior to further complicate diagnosis.

I chose the resistor value to give some margin above the voltage. It seems to be working. Removing the LED is probably a better solution in that it will totally remove that loading circuit. However, I found the LEDs very useful when I was building and wiring everything up. I tend to not modify boards in the off-chance that I have to replace the board and a formerly working system becomes a non-working system because I forgot about the mod (thatā€™s just me, I have a short memory).

Hope this helps. Sorry if it got too technical.

s

Postscript:
I LOVE the endstops. This is my first CNC and donā€™t know all of the ins and outs of usage. However, what I have enjoyed is that I can ā€œhomeā€ my system and then via terminal execute a G0 or G1 to an exact location (and write it down). That new location is my origin for the workpiece at hand. If I lose power, take a break in the day or night, or ahemā€¦ crash my router by not tightening the collet tight enough while cutting aluminum (ahemā€¦ :rofl: :rofl: :rofl:) I can reboot, home, and go back to the exact origin and start again.

Highly recommend the endstop option.

3 Likes

I saw that part but we can enable some filtering in the firmware. Could that help, get us out of that zone.

What I am getting at is I have shipped several hundred of those SKRā€™s and I will be sunk if I have to custom fab and send out 5 piggy back pullups to all the board owners. Popping the Leds is the no cost option but most will not want to do that I am sure.

Taking a look for some board differences, It would just be the resistors right?

First off, I know close to nothing, but would like to learn more.

Arduinos have internal pullup resistors that can be programmatically enabled within the firmware.

Does SKR Pro have similar concept/mechanism that can be used?

Well the resistors are labeled the same from a very early batch to ones that just got here. Doesnā€™t mean they couldnā€™t be out of spec.

LEDā€™s?

Vreg putting out a steady 3.3?

It already is in the firmware, but not sure if these pins actually have the ability since they have the hardware.

Dam did they just screw up that whole design, like the LED was an afterthought? Why the heck is it 2V at the signal pin it needs to be 2.5 or above right, ideally 3.3?

I think I am seeing 1.7-3.6V (-40c-105c)That makes more sense to me, that would mean we are safe. STM32F407ZG - High-performance foundation line, Arm Cortex-M4 core with DSP and FPU, 1 Mbyte of Flash memory, 168 MHz CPU, ART Accelerator, Ethernet, FSMC - STMicroelectronics 5.3.16

Actually @vicious1, the 1.7-3.6V range is the condition of the supply voltage (Vdd) powering the chip. There are two formulas for Vih in table 48. One is 0.45Vdd + 0.3V, which is approximately 1.7V and the other is 0.7Vdd which is 2.3V. These two formulas have footnotes where the first is ā€œguaranteed by designā€ and the second is ā€œtested in productionā€. It seems that the production units are running slightly different that the designed voltages. I think reason people are seeing different behaviors could be due to different chip production lots and their variances. As mentioned before, changes in LED specs could also have enough effect to get this behavior.

Not trying to be pedantic, just provide a bit of geek clarity.

1 Like

Not at all! I have been waiting for a response. I have obviously very little understanding of all this. I would love to understand it more. Let me take a look at table 48.

Would swapping any troublesome boards to Normally Open help? It mentions sustained voltages. On the SKR that is a very easy fix to flash a new firmware.

The Pro is set to end production next month. I do have a feeling all the other boards are set up similar, though.

3 Likes

The io pins connected to the endstop triggers are 5V tolerant (or VDD+3.6V) according to table 7

More info:
STM32 and 5 volt environment

When Open drain with external pull up 5V is used
ā€¢ Hi-Z behaves High output, external pull up will define the output voltage (5V).

I donā€™t have issues with endstops not triggering on mks boards that also have a STM32 mcu. The endstop io pins are set to 5V. I donā€™t have a skr board to experiment with, but in looking at the schematics for both boards, it appears that bypassing the led by connecting to ground through a 0.1uf cap would raise the io pin to 5V.

1 Like

Iā€™m having the same endstop error. Iā€™m a laymen when it comes to basically this entire discussion. Iā€™ve successfully done the crown test, but am unable to home due to non functional end stops. Iā€™m hoping I just have the ground and signal wires flipped and that will solve the problem. If itā€™s not the solution, can someone post a more laymenā€™s guide to solving this problem with pictures.

Ground and signal wires are the same for endstops. Can you make your own post and post pictures of your electronics and endstops? It is probably an easy fix.

2 Likes

I think I may be having the same problem. Z1 Max works. Z2, Y1 and Y2 are always reported as open by M119 regardless of the switch position. Can I provide any additional info? I may have a have some resistors of an appropriate value. Iā€™ll have to look.

Steve