Have I Blown My SKR Pro V1.2?

Hi,

I think I have ‘blown’ my SKR Pro V1.2 control board. The Z-axis stepper motor does not move and there’s just a single short clunk when it first tries, and then nothing.

I think the board probably got overloaded somehow whilst I was trying to set up a job. I was using my iPad to access the CNC with Octoprint. The connection was pretty flaky, and I also believe that the LCD control and Octoprint had a falling out because the CNC Z-axis would stop responding after a couple or so move commands from Octoprint. I would then either use the joystick or the LCD menus to try and move the Z-axis without success. A reset of the SKR would restore functionality - until it didn’t. The Z-axis now refuses to move from any input source (OctoPrint, joystick or LCD menu).

My first thought was the 2209 driver, but swapping them around made no difference - the Z-axis didn’t move.

Next was swapping the Z-axis stepper cable to one of the other ports and from there (X1, X2, Y1) it works and the swapped over motor didn’t.

I also disconnected the joystick input, but that made no difference. Same with removing the Raspberry Pi from the party.

I reflashed the firmware - no difference.

I’m not sure of what lights should be lit up on the SKR, but there is a red LED lit next to the Z port and another next to the E1 port. None of the other LEDs along there light up at all (as far as I can tell).

There are a couple of green LEDs down at the bottom, and they light up with X & Y joystick inputs.

Any suggestions as to what I can do next, please? SKR Pro V1.2 boards are like the proverbial rocking horse deposits, so I’m also open to suggestions for a comparable board. I am using dual end stops if it makes a difference.

Thank you in advance

To eliminate anything mechanical, try connecting an X motor or something to isolate the problem.

It could be:

  • The grub screws on the coupler slipping.
  • A wiring problem on the Z motor. Possibly intermittent.

After it happens, you can also send M122 through the terminal interface in octoprint. It will print some debug info, including overheating, and open loops, if it detects anything, that is a good sign of where to look.

Thanks for your reply.

I’ve already tried swapping the motor connectors around. If I connect the Z motor lead to the X (1 or 2) connector on the board, the z-axis moves. If I connect either X or Y motors to the Z connection on the board, they don’t move. I’m 99.99% convinced it’s neither a grub screw (used Loctite) nor a wiring issue.

I’ve just done M122 and the results are as follows. I can’t see anything obvious, except in the line

Recv: sg_result   2    0    2    2    2

where there is a ‘0’ under X2.




That’s pretty convincing. :slight_smile:

If that from after you tried to move the Z? I can see they are all enabled. The flags get cleared on reset. So they will only be useful after there’s is a problem, before power cycling them.

SG is stall guard, part of the sensorless homing, IIRC. So nothing useful there.

Those results are all reasonable, so the drivers are likely ok. They are definitely powered and communicating.

So what else is there?

  • The firmware could be broken, sending the steps to the wrong on it something. That doesn’t seem very likely because it doesn’t change after you’ve flashed it. The firmware from MarlinBuilder releases has been tested and it is on hundreds of skrs now.
  • The CPU on the skr may have a problem. I have had arduinos that worked fine, but some banks of outputs just didn’t with anymore. This lines up with your initial guess. Maybe a static shock broke it?
  • The skr pcb, or the solder, or the pins could be busted. We have seen some missing solder on some sockets (easy to see from the bottom). We have seen the gold pins inside the connectors bend enough to fail. I would look closely at the solder and pins between the PCB and the drivers.

Otherwise, it is a mystery to me.

TBH, I can’t remember when I did the M122, but I’m pretty sure it was after trying to move the various axis.

I’ll take another look tomorrow and do a board inspection. I doubt that I’ll find anything amiss, but it will eliminate one more thing.

The CNC was working find in the time before it wasn’t (if that makes sense). I’m pretty certain I did something I shouldn’t have with the various Z-axis movement control options. Probably too many input commands at once.

I’m going to do a deep search for another SKR Pro V1.2 board - I might get lucky and find one in the UK.

Thanks again for your help and suggestions.

1 Like

There’s zero chance that caused a problem. We won’t know unless you find something wrong. But if there was some gcode that could potentially trash the skr, the firmware should stop it. I haven’t seen anything that can break it from gcode. Don’t beat yourself up.

You could also try reflashing it, and resetting the settings, in case it is some setting that got changed.

You tried another motor to that port, but try swapping the driver you can isolate at least by that, in the ultimate you can always use your empty driver slot and just change the firmware

1 Like

I have made a couple of changes to the default V1 dual firmware, namely activating the joystick and the USE_CONTROLLER_FAN, but everything was working OK after those changes.

Thanks for the reply. I have moved the 2209 driver boards around, and it made no difference - the Z-axis didn’t work.

I like the idea of switching the Z-Axis motor to an empty driver slot and there is only have E2 available. I might try the 2nd Z connection, but as it’s in serial with the first, I suspect it won’t work either.

I have looked at the firmware and whilst I have some knowledge, I’m not an expert by any means. I have found this code in the pins_BTT_SKR_PRO_common.h file. Is it just a case of swapping these pin numbers, or are there other changes required?

//
// Steppers
//
.
.
.
#define Z_STEP_PIN                          PE13
#define Z_DIR_PIN                           PC2
#define Z_ENABLE_PIN                        PC0
#ifndef Z_CS_PIN
  #define Z_CS_PIN                          PB9
#endif
.
.
#define E2_STEP_PIN                         PD13
#define E2_DIR_PIN                          PG9
#define E2_ENABLE_PIN                       PF0
#ifndef E2_CS_PIN
  #define E2_CS_PIN                         PG12
#endif

I appreciate any help received, thank you.

Yeah. Does the second port still have those jumpers installed?

That should work. You can carefully probe the enabled pin and make sure it changes to the new port.

For the 2209, there is also a uart pin defined somewhere. CS is chip select, which is for spi drivers like the tmc2130.

I switched them to Z1 and plugged the motor lead into Z2. It didn’t work, as I suspected it wouldn’t.

I have modified the firmware, changing the pin numbers as above.

These are the other changes I made to pins_BTT_SKR_PRO_common.h. The original setting is commented on each line.

#define Z_DIAG_PIN                          PG5   // PG8   // Z-
#define E2_DIAG_PIN                         PG8   //PG5   // E2
  #define Z_MIN_PIN                         PG5 //PG8   // Z-
  #define Z_MAX_PIN                         PG8 //PG5   // E2
#define Z_STEP_PIN                          PD13 //PE13
#define Z_DIR_PIN                           PG9  //PC2
#define Z_ENABLE_PIN                        PF0  //PC0
  #define Z_CS_PIN                          PG12 //PB9
#define E2_STEP_PIN                         PE13 //PD13
#define E2_DIR_PIN                          PC2  //PG9
#define E2_ENABLE_PIN                       PC0  //PF0
  #define E2_CS_PIN                         PB9  //PG12
  #define Z_SERIAL_TX_PIN                   PD6 //PE1
  #define E2_SERIAL_TX_PIN                  PE1 //PD6

With these changes, it still doesn’t work. I’ll check the enabled pins.

Thanks again.

Edit: I checked the following pins on the 2209 driver boards. They were all the same.

Pin        Volts      Resistance
EN         3.3v       28ohm
DIR        3.3v       0 or 23ohm (depending on which way axis is moved)
VM         12v

I’ve now searched through the main files for references to E2_ and Z_ and changed what I’ve found if it seems relevant. In Configuration.h, I’ve changed these options to the following:

// #define DISABLE_INACTIVE_EXTRUDER 
#define E2_DRIVER_TYPE TMC2209 // A4988

Still no change.

One thing I’ve noticed is that if I unplug all the motors (with power off, of course), then power up again, the red LEDs next to each motor port are lit. Once the motors are plugged back in, these LEDs are not lit. In spite of all the changes I’ve made within the firmware, the Z0 LED remains off (even with no 2209 plugged in) and the E2 LED remains lit (with a 2209 plugged in).

I think I’m going to bite the bullet and buy a new SKR Pro V1.2 board.

1 Like

I ordered a new SKR Pro V1.2 board, which arrived today, and I’m pleased to report that my MPCNC is back to full working order.

I don’t know whether any of my actions caused the original board to fail, or whether it was just coincidence. Either way, I’m just glad the new board solved the issue.

Now, to get back to creating a clamping system. I have secured the spoil board to the table-top. Now I need to drill a lot of holes for some threaded inserts and make some clamps.

2 Likes