thisiskeithb/PrusaAIO

SKR 3 TMC Connection Error

Rwings39 opened this issue · 4 comments

Did you test the latest prusa-aio-bugfix-2.1.x code?

Yes, and the problem still exists.

Bug Description

SKR 3 Continues to show TMC Connection Error. All motors can be moved manually, as expected and Home OK. Everything seems to work, but error shows persistently on display and shows in M122.

Bug Timeline

8/10/22

Expected behavior

Everything works as expected so far.

Actual behavior

Everything appears to work, but displays “TMC Connection Error”

Steps to Reproduce

Turn on printer, or send M122 command.

Version of PrusaAIO Firmware

2.1.x Bugfix

Electronics

SKR 3.0

Add-ons

Slice 450 Thermistor, Bondtech 1.8 Extruder motor, Pinda v2

Bed Leveling

No response

Your Slicer

No response

Host Software

No response

Don't forget to include

  • A ZIP file containing your Prusa_AIO_Configuration.h.

Additional information & file uploads

I’ll follow up with the ZIP shortly.

Your config builds & works fine here on an SKR 3 with TMC2209s, so I'm certain there is something wrong with your drivers.

Here's a copy of the firmware I built using your config: firmware.bin.zip

For good measure, here's my reply from your Facebook post:

For TMCs to work properly, they need full 12/24V power. Powering them via the motherboard over USB will result in a TMC CONNECTION ERROR. For TMC2209s on an SKR 3, you need to ensure jumpers under the drivers are set to UART mode. DIAG jumpers should only be installed under the X & Y drivers since those are the only axis used for sensorless homing (installing them on other axis will cause homing issues).

I also have some notes about your config, though none of these would cause the issues you're seeing:


PRUSA_AIO_CUSTOM_PRINTER_NAME needs to be uncommented for it to work:

@@ -29,7 +29,7 @@
 //===========================================================================
 
 // Set a custom printer name.
-//#define PRUSA_AIO_CUSTOM_PRINTER_NAME "AIO Bear"
+//#define PRUSA_AIO_CUSTOM_PRINTER_NAME "AIO SKR Bunny and Bear"
 
 //===========================================================================
 //=========================== Printer/Frame Type ============================

PRUSA_AIO_X_STALL_SENSITIVITY, PRUSA_AIO_Y_STALL_SENSITIVITY, and PRUSA_AIO_HOMING_FEEDRATE_MM_M are uncommented, but not customized, so this is the same as leaving them commented out.

@@ -157,11 +157,11 @@
  * If needed, uncomment PRUSA_AIO_*_STALL sensorless (StallGuard) settings below.
  * Settings can also be customized via LCD under Configuration -> Advanced Settings -> TMC Drivers -> Sensorless Homing
  */
-//#define PRUSA_AIO_X_STALL_SENSITIVITY  90
-//#define PRUSA_AIO_Y_STALL_SENSITIVITY  100
+#define PRUSA_AIO_X_STALL_SENSITIVITY  90
+#define PRUSA_AIO_Y_STALL_SENSITIVITY  100
 
 // If needed, uncomment PRUSA_AIO_HOMING_FEEDRATE_MM_M to customize Homing speeds (mm/min)
-//#define PRUSA_AIO_HOMING_FEEDRATE_MM_M { (50*60), (50*60), (4*60) }
+#define PRUSA_AIO_HOMING_FEEDRATE_MM_M { (50*60), (50*60), (4*60) }
 
 //===========================================================================
 //================================ Extruder =================================

PRUSA_AIO_NOZZLE_TO_PROBE_OFFSET is uncommented, but not customized, so this is the same as leaving it commented out.

@@ -203,7 +203,7 @@
  * If needed, uncomment to customize probe offset. This can also be customized via LCD
  * under Configuration -> Advanced Settings -> Probe Offsets
  */
-//#define PRUSA_AIO_NOZZLE_TO_PROBE_OFFSET { 23, 5, 0 }
+#define PRUSA_AIO_NOZZLE_TO_PROBE_OFFSET { 23, 5, 0 }
 
 /**
  * Bed Leveling Type

PRUSA_AIO_CUSTOM_HOTEND_PID is uncommented, but not customized, so this is the same as leaving it commented out.

@@ -277,7 +277,7 @@
  *
  * If needed, uncomment PRUSA_AIO_CUSTOM_HOTEND_PID or PRUSA_AIO_CUSTOM_BED_PID to customize PID settings.
  */
-//#define PRUSA_AIO_CUSTOM_HOTEND_PID
+#define PRUSA_AIO_CUSTOM_HOTEND_PID
 #if ENABLED(PRUSA_AIO_CUSTOM_HOTEND_PID)
   #define PRUSA_AIO_DEFAULT_Kp  16.50
   #define PRUSA_AIO_DEFAULT_Ki   1.16

PRUSA_AIO_CUSTOM_BED_PID is uncommented, but not customized, so this is the same as leaving it commented out.

@@ -285,7 +285,7 @@
   // Find your own by running "M303 E0 C8 S210" via serial to run autotune on the hotend at 210 °C for 8 cycles.
 #endif
 
-//#define PRUSA_AIO_CUSTOM_BED_PID
+#define PRUSA_AIO_CUSTOM_BED_PID
 #if ENABLED(PRUSA_AIO_CUSTOM_BED_PID)
   #define PRUSA_AIO_DEFAULT_bedKp  28.13
   #define PRUSA_AIO_DEFAULT_bedKi   2.09

Thanks for checking that out. I dropped your firmware.bin into the sd card and powered up and it worked fine. The LCD displayed the printer name, no error, and sending M122 on pronterface read all OK. Out of curiosity, I swapped back to my second SD with the most recent firmware I compiled yesterday that was giving me the TMC connection error and it also worked fine today. I have no idea why and I hope it doesn’t come back because I don’t know what fixed it.

Glad you got it working!