SKR Pro 1.2 Strange problems

Hi all,

I’m near the end of a LR build - and have run into a head scratch problem - hoping someone may be able to help.
Running BIGTREETECH SKR-PRO-V1.2

First - Cannot get the X-min end stop to work at all!

I have populated the board with 5x2209 drivers (with diag pin removed)

Flashed with what I believe is the latest dual endstop firmware .

I have connected all servos and all are working as a test
ALL end stops and Z probe work as they should - EXCEPT for X-min.
Regardless this seems to only show OPEN regardless of what I do.

I’ve stripped back to just the bare board - with jumpers / drivers in place
No screen and interfaced with my Mac to illustrate.

M115 produces the following:

FIRMWARE_NAME:Marlin 513DL 2.0.9.2 (Oct 24 2021 13:38:26) SOURCE_CODE_URL:github.com/MarlinFirmware/Marlin PROTOCOL_VERSION:1.0 MACHINE_TYPE:V1CNC 513DL EXTRUDER_COUNT:0
UUID:cede2a2f-41a2-4748-9b12-c55c62f367ff
Cap:SERIAL_XON_XOFF:0
Cap:BINARY_FILE_TRANSFER:0
Cap:EEPROM:1
Cap:VOLUMETRIC:0
Cap:AUTOREPORT_POS:0
Cap:AUTOREPORT_TEMP:0
Cap:PROGRESS:0
Cap:PRINT_JOB:1
Cap:AUTOLEVEL:0
Cap:RUNOUT:0
Cap:Z_PROBE:1
Cap:LEVELING_DATA:0
Cap:BUILD_PERCENT:0
Cap:SOFTWARE_POWER:0
Cap:TOGGLE_LIGHTS:0
Cap:CASE_LIGHT_BRIGHTNESS:0
Cap:EMERGENCY_PARSER:0
Cap:HOST_ACTION_COMMANDS:0
Cap:PROMPT_SUPPORT:0
Cap:SDCARD:1
Cap:REPEAT:0
Cap:SD_WRITE:1
Cap:AUTOREPORT_SD_STATUS:0
Cap:LONG_FILENAME:0
Cap:THERMAL_PROTECTION:1
Cap:MOTION_MODES:1
Cap:ARCS:1
Cap:BABYSTEPPING:0
Cap:CHAMBER_TEMPERATURE:0
Cap:COOLER_TEMPERATURE:0
Cap:MEATPACK:0
ok

As per the photo above.
M119 produces the following

Reporting endstop status
x_min: open
y_min: TRIGGERED
y2_min: TRIGGERED
z_max: TRIGGERED
z2_max: TRIGGERED
z_probe: open

Just for illustration - I have installed jumpers on each of the stop / probe inputs as follows.

This returns…
Reporting endstop status
x_min: open
y_min: open
y2_min: open
z_max: open
z2_max: open
z_probe: TRIGGERED
ok

After reading every post i could on similar issues -

  1. I removed the plastic shrouds around the pins to ensure there wasn’t an obvious bent pin/short.
  2. Reflashed board firmware
  3. Tried the same experiment with all (5) 2209s removed

I’ve run out of ideas? HELP??

It may be a failure of the pullup resistor on X Min. I have had that happen on some boards that I’ve owned.

You can force the setting using a resistor. If you wire a 470 ohm (Anywhere from about 220 to 1k should be fine actually) between the (+) pin and the (s) pin on there, it should report triggered. With that shorted to ground, it should report open.

Internally, there is a resistor that you can turn on which will connect the signal pin to the + logic rail. This raises the level on the pin to logic high when there is no other connection to the pin, and reads as triggered. When you connect the switch, it shorts the signal pin to ground, and reads as logic low. The behaviour that you showed is that nothing is raising the level to logic high when there is nothing else connected to the pin, so maybe substituting another resistor will fix the problem.

Technically a resistor is not needed. You should also be able to use a 3 wire switch with (+) going to normally open, (-) going to normally closed, and (s) going to the common terminals of the switch, but then you get undefined behaviour if the wire is disconnected. Better is to use a 3 pin connector at the board, and then have a resistor from (+) to (s) and then the (s) and (-) go to a normally closed switch. This most closely emulates the conditions that the board is expecting.

For testing purposes only you can short (+) to (s) and it should read triggered on the X Min switch.

Thanks Dan!

I tried your suggestions as follows.

First - 470 ohm resistor between Signal and +
Then - Jumper from SIgnal to +
(assuming you meant as per the following) - excuse the messy hookup - testing…

SO - no difference to the X-min status either way - it just remains OPEN

Any other suggestions or is this puppy DEAD?

Reporting endstop status
x_min: open
y_min: TRIGGERED
y2_min: TRIGGERED
z_max: TRIGGERED
z2_max: TRIGGERED
z_probe: TRIGGERED

Poking around doing these tests did reveal ANOTHER issue - now during start…

Marlin 513DL 2.0.9.2
echo: Last Updated: 2021-09-03 | Author: (V1 Engineering, Ryan, 513DL)
echo: Compiled: Oct 24 2021
echo: Free Memory: 114699 PlannerBufferBytes: 1600
EEPROM loaded from slot 24.
echo:V85 stored settings retrieved (589 bytes; crc 55521)
Testing X connection… OK
Testing Y connection… Error: All LOW
Testing Y2 connection… OK
Testing Z connection… OK
Testing Z2 connection… Error: All LOW

I’m getting Errors on TWO of the TMC2209s - In the name of science I moved them to other slots on the board - eg Y to Y2 and Z2 to Z and the errors moved with the UARTS.

JEEZUZ all this is brand new stuff - someone give me a glimmer of hope before i YEET this thing?!?!? likewise is there something better than this junk?

It’s taken me longer chasing issues with this bigtree (bigstinkingpile) than building the rest of the machine :slight_smile:

Yes, that’s what I meant, and that seems to indicate a dead input on the X_MIN pin.

It doesn’t look good.
When you placed the resistor between J36 pin 3 and J36 pin 1 did the LED D21 illuminate? (it is next to the X stepper motor connector J4) . According to the schematic


It should.

If it does illuminate then either your firmware has the wrong pin assigned to X limit ( #define X_MIN_PIN PB10 in pins_BTT_SKR_PRO_V1.1.h) or the uP input is FUBAR.

If it didn’t illuminate then it could be a duff R47 or an un-soldered J36 pin3.

Thanks for the tip Mike.
LED does not illuminate - So I’ll trace and see if I can find a duff solder joint…

CHEERS

Any luck? having the same issue only mine will work infrequently.