Lowrider V3 Endstops Do Not Trigger

That post with the LED’s reminds me, when i was having trouble with mine first time around (i didnt do anything to those two pins on the driver) the red LED by the driver was always on.

I still dont get why clipping/bending the pins matters, its supposed to be for diagnostics or something, and there are jumper pins there - so a jumper should be enabling them.

Other thing i did was look at one of the pictures on the v1 docs i think it was and make my jumpers all match that. I dont know if Ryan does that with the ones he sends out, I only got rambo from v1 not my skr 1.2

Summary: learn from me and make sure you clip or bend those pins to save a headache :>

1 Like

Initially bent my driver diagnostic pin, but didn’t like that they were potentially touching the cap under the driver (TMC2209 on Skr Pro 1.2 from V1E shop). Ended up clipping my pins. Can always solder suck and replace if/when the pin is needed in the future.

If the issue is correctly identified, an alternate fix might be to unsolder or cut the trace to the LEDs. Based on the circuit you posted, that should cut one leg of the voltage divider and therefore provide full 3.3V to the pin. Still not sure why the problem is happening given all the successful boards. Maybe the internal pullup resistors are not functioning, and that provides enough voltage drop to cause the problem.

1 Like

@robertbu I agree that this relatively sudden change in behavior is odd. The observed 2 volt is pretty much what the voltage calculates to be according to the schematic. WIth the pullup value that I used, 1.5K, the signal is now sitting at 2.5V which is definitely a logic high for the controller. I will report back if I see the problem again. I don’t really feel like modifying the board.

thanks for the input and suggestions.

5 Likes

Hey @sru_tx, how’s your 1.5k pull-up solution working out? Curious what it looks like? Seems like others are hitting this/similar behavior too.

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.