mxki.de

Nur ein weiterer Blog

TMC2209 mit Marlin 2.0 auf dem SKR 1.3

Die Schrittmotortreiber TMC2209 von Trinamic eignen sich ideal dazu, einen lauten 3D-Drucker leise zu bekommen. In Kombination mit dem 32-Bit Board SKR 1.3 von BigTreeTech hat man eine sehr gute Hardwarebasis für 3D-Drucker.

Bei den TMC2209 Treibern gibt es viele Hersteller, welche ihre Platinen mit den Chips von Trinamic bestücken. In meinem Aufbau nutze ich Board (Steuerplatine) und Schrittmotor Treiber von BigTreeTech, welche auch unter dem Namen BIQU verkauft werden.

Mittweile gibt es das SKR 1.4, welches einige Änderungen zum SKR 1.3 aufweist. Dieser Beitrag bezieht sich ausdrücklich auf das SKR 1.3.

Hardware

In meinen 3D-Druckern verwende ich derzeit die TMC 2209 Version 1.2 von BigTreeTech. Diese müssen einfach nur auf das SKR 1.3 gesteckt werden, Funktionen wie UART und Sensorless Homing funktionieren damit sofort. Es müssen keine Kontakte auf den Treibern überbrückt werden oder Jumper Kabel auf dem SKR 1.3 Board verlegt werden.

Konfiguration in Marlin 2.0

Als Firmware verwende ich Marlin 2.0, genauer gesagt den Bugfix Branch.

platformio.ini

[platformio]
src_dir      = Marlin
boards_dir   = buildroot/share/PlatformIO/boards
default_envs = LPC1768

Configuration.h

#define MOTHERBOARD BOARD_BIGTREE_SKR_V1_3

Sensorless Homing

Sensorless Homing wird von den TMC2209 Treibern unterstützt. Leider wird aktuell weiterhin ein Pin auf der Steuerplatine pro Achse benötigt. Die Information (StallGuard) über die erreichte Endposition wird derzeit noch nicht per UART übertragen.

Der DIAG-Pin des Treibers der jeweiligen Achse muss mit dem Endstop PIN verbunden werden. Beim SKR 1.3 genügt es, dafür den entsprechenden Jumper auf der Platine zu setzen. Beim SKR 1.4 ist das meinem aktuellen Kenntnisstand nicht mehr möglich, die Jumperleiste wurde gestrichen.

Die Werte für STALL_SENSITIVITY müssen bei jedem Drucker individuell ermittelt werden. Weitere Hinweise dazu hier.

Configuration_adv.h

#define SENSORLESS_HOMING // StallGuard capable drivers only

#define X_STALL_SENSITIVITY  100
#define Y_STALL_SENSITIVITY  100