SKR_Pro Random issue of slow motor movements until reboot

I just woke up so my brain isn’t up to speed yet. But what if the machine was some how switched from absolute coordinates to relative positioning? Would that cause the feed rates to scale?

2 Likes

I am using Marlin_V1CNC_SkrPro_DualLR_2209_2.0.7.2_510-src, and
https://github.com/pilotkip/BIGTREETECH-TouchScreenFirmware release-xx.26 which I forked from
https://github.com/ercoleg/BIGTREETECH-TouchScreenFirmware which was forked from
https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware

1 Like

Thanks, ok, so either it might be an old bug, or it isn’t fully related to it as I am using FW v513 2.0.9.2 for the board, and stock version for the TFT.

I’ve tried the Marlin M503 command, but nothing changed during output, on cold boot versus slow down. Everything is 100% exactly the same.

So I’ve tried a cold boot, then directly running a Y move Goode script of 1000mm: no problem.
Cold boot, running Y using knob or TFT, after like 500-600mm it starts to slow down up until the moment it doesn’t move anymore. Doing a rest and all works fine again.

When turning the knob I got a brief message it couldn’t process my command. I think that’s because it was still doing multiple moves from the first rotations. So think this is to be expected.

I made a video of it, got to see how I can upload it here.

I have honestly no idea :smiley:

@Olivier I did an interesting experiment this evening. If I start my machine up on the right (+Y) and move it to the left with the knob, the machine gets slower and slower. If I then move back to the right, it gets back up to speed.

My hunch is that the problem lies in the TFT code, since it is the least mature of the two compared to Marlin. I tried to verify that with M28/M928 to log what commands the TFT is sending, but never got any files showing up on the SKR’s SD card.

1 Like

All the TFT does is send g-code, so it is not a perfect fit to your problem. First try your movement in Marlin mode (hold the knob for 3 seconds) and see if you have any problems. Marlin mode uses a different set of wires than the TFT to communicate with the control board. Next try it simulating what the TFT is doing using Repetier-Host either by using the movement commands and/or sending over a file. Here is an example of what you could put in a file (untested):

G91      ; put in relative mode
G1 Y4.0
G1 Y4.0
G1 Y4.0
G1 Y4.0
G1 Y4.0
G1 Y4.0
G1 Y4.0
G1 Y4.0
G1 Y4.0
G1 Y4.0
...and so on...

I don’t know if Y4.0 is right. You might need Y1.0 or some other increment to simulate the TFT.

If it happens on a certain portion of the spoil board, then wiring and grub screws are the first things to check.

1 Like

Really? I must say, I did not yet revert it back to the other side. Going to try this.

This I´ll try to do also! I don´t use Marlin, as it doesn´t read my USB stick and I am not keen on using an SD card. But it doesn´t hurt to test.

Will report back :slight_smile:

I assume that was supposed to be G91 to put Marlin into relative mode, since G92 is used to set the X/Y/Z positions.

Do you mean Marlin mode on the LCD? Or do you mean that you are using different firmware on the SKR Pro? The V1 maintained firmware for the SKR Pro is Marlin. When we are referring to “Marlin mode” for the LCD we mean that it is emulating a 12864 smart controller.

In that mode, you would go to the movement menu, and select an axis, then select an increment, and move it to the desired location. It’s a little different and behaves a little differently than the touch screen interface does.

The touch screen is more like using a Gcode sender with a PC and sending gcode over the USB serial port.

2 Likes

Sorry, I wanted to say I do not use Marlin mode.
I use the “stock” FW from Github made by Jeffe

I would definitely be interested to see if using Marlin mode or repetier host makes a difference.

Well, I´try to post an update this evening.

Olivier, you can confirm if this is the same with you, but here is what I saw:

  • Marlin Mode: No speed change
  • TFT Mode after Marlin: No speed change
  • TFT Mode after reset: Speed change
  • TFT Mode after 3 second press: No speed change

When the speed changes, it can be plainly heard in the stepping frequency.
To me it sure looks like TFT is not properly initialized on startup and is in a weird state where encoder movement is interpreted as gantry movement AND speed change, and that the Selectmode properly initializes TFT so that it doesn’t happen. I’d still love to capture the gcode that TFT is sending!

I might also try running other versions of TFT.

1 Like

Expanding a bit on Dan’s answer about Marlin mode. If you hold down the control knob on the display for three seconds, the display becomes “dumb,” and is no longer a touch screen. The TFT firmware is no longer painting the display, instead Marlin is painting the display and handling display input. You are largely bypassing the TFT firmware. Through the Marlin menus, you can move the axes, but the commands to move the router come from within Marlin on the control board rather than being sent as g-code from the TFT firmware.

if the problem still occurs if you use Marlin mode, then is is almost certain the issues is not the TFT.

As for the SD card, only the slot on the display can be used to send g-code to the control board.

Dan: Thanks for the catch on the G92.

2 Likes

I figured it out, at least on my setup. The problem is that when the system boots, it is in a mixture of TFT and Marlin modes. The knob is read by TFT which sends g-codes, AND it is interpreted by Marlin to change the speed. If I disconnect the grey ribbon cables (used by Marlin to read the encoder directly) the problem goes away. No speed change is observed when jogging. Olivier, you can see if the same is true for you.

Luckily there is an easy work around… just going to the mode change screen and back leaves the system in a purely TFT mode (or leave the grey ribbon cables disconnected!)

6 Likes

Interesting. I wonder if this is a bug in Marlin, or perhaps a wrong setting in the configuration files, or maybe a TFT firmware problem. If you leave the gray cables disconnected you cannot use the SD card slot on the display. The SD card is handled through these cables.

2 Likes

It sounds like a bug in the screen firmware. Like the encoder pulses are still going to marlin when in tft mode… Good catch. What version of the firmware are you using (be exact as you can, please).

1 Like

This screen is starting to get irritating. What the heck happened to the TFT side.

1 Like

Yes, I seem to notice similar behavior:
I tried multiple times in Marlin; no issues!
On boot pressing the knob, choosing TFT, seems like there are no issues.

My parking spot is on the left, and I travel to the right side. However
Marlin doesn’t allow me to travel negative Y. So I pulled the machine to the other side. Guess what: no issues in TFT mode??!

One thing that was clear to me, is that the default moving speed in Marlin and TFT mode is completely different, Marlin seems to be slower.

I’ll try to remove the ribbon cables tomorrow so I can validate. It’s way past bedtime now:D

TFT or SKR?
Skr I use : FW v513 2.0.9.2
TFT I used the link from the build faq can I check it somewhere in the menu?

Edit: I just noticed there’s a new TFT version, will try to update it and post input

2 Likes

I confirm this behavior, when going back, the speed goes up again :smiley:

1 Like

It would be quite a relief if the new version fixes it.

I am pretty surprised this wasn’t an issue we’ve seen before. That tft firmware is 18 months old.

1 Like

Well, that´s why I am using stock FW to learn to work with the machine first, and to avoid unknown issues. But somehow I did trigger a bug :smiley: