Marlin Dual Z on MKS Gen L

Diskussionen Rund um die Firmware eurer 3D Druckerer wie Marlin, Skynet, Repetier etc.
Antworten
RcTomcat
Neuling
Beiträge: 8
Registriert: Fr 17. Aug 2018, 18:48
Wohnort: Deutschland
Hat sich bedankt: 1 Mal
Danksagung erhalten: 0

Marlin Dual Z on MKS Gen L

#1

Beitrag von RcTomcat » Mi 31. Okt 2018, 16:55

Hi,

werde demnächst auf ein MKS Gen L als Motherboard wechseln.
Dabei habe Ich nur festgestellt, dass das MKS ja nur einen Z Treiber besitzt. Generell müsste es mit Marlin möglich sein den E1 Extruder Treiber als weiteren Z Treiber zu nutzen.
Ich möchte keinen Y Adapter nutzen (Wärmeentwicklung).
In der Configuration_adv bin ich auf folgende Zeilen gestoßen:

define Z_DUAL_STEPPER_DRIVERS
#if ENABLED(Z_DUAL_STEPPER_DRIVERS)
//#define Z_DUAL_ENDSTOPS
#if ENABLED(Z_DUAL_ENDSTOPS)
#define Z2_USE_ENDSTOP _XMAX_
#define Z_DUAL_ENDSTOPS_ADJUSTMENT 0
#endif
#endif

Muss ich hier sonst noch etwas aktivieren?

Benutzeravatar
th33xitus
Admin
Beiträge: 3401
Registriert: Sa 17. Dez 2016, 00:31
Drucker: AM8
Slicer: PrusaSlicer
Firmware: Marlin-bugfix-2.0.x
CAD - Software: Fusion 360
Hat sich bedankt: 138 Mal
Danksagung erhalten: 450 Mal

#2

Beitrag von th33xitus » Mi 31. Okt 2018, 17:12

In der Configuration_adv.h reicht die Änderung, ja.

Probleme KÖNNTE es dann noch in der pins_MKS_GEN_L.h geben.
Wobei ich gerade sehe, dass die Datei am Ende einfach die pins_RAMPS.h inkludiert.

Mir selbst ist es passiert, dass sich ein Z-Motor dennoch nicht bewegt hatte. Grund dafür war die Tatsache, dass in der pins_RAMPS.h kein Z2 definiert ist.
Aus früheren Marlin-bugfix-2.0.x-Versionen war ich es gewohnt, dass einfach die Definitionen der E1 pins automatisch auf Z2 gemappt werden.
In dem Bugfix vom 16.09.2018 (bc06406) musste ich manuell in der pins_RAMPS.h alle E1-Definitionen auf Z2 ummappen.
Ist kein Akt.
Copy&Paste vom E1 Block, dann einen Block auf Z2 ändern und den eigentlichen E1 auskommentieren.

Sieht bei mir dann im Endeffekt so aus:

Code: Alles auswählen

#define Z_STEP_PIN         46
#define Z_DIR_PIN          48
#define Z_ENABLE_PIN       62
#ifndef Z_CS_PIN
  #define Z_CS_PIN         59
#endif

#define Z2_STEP_PIN        36 //
#define Z2_DIR_PIN         34 //
#define Z2_ENABLE_PIN      30 // Ersetzt den kompletten E1!
#ifndef Z2_CS_PIN	      //
  #define Z2_CS_PIN        44 //
#endif

#define E0_STEP_PIN        26
#define E0_DIR_PIN         28
#define E0_ENABLE_PIN      24
#ifndef E0_CS_PIN
  #define E0_CS_PIN        65
#endif
/*
#define E1_STEP_PIN        36
#define E1_DIR_PIN         34
#define E1_ENABLE_PIN      30
#ifndef E1_CS_PIN
  #define E1_CS_PIN        44
#endif
*/
Seitdem habe ich die Firmware nicht wieder geupdated, daher kann ich nicht sagen ob diese Änderung beabsichtigt war oder ein Bug.
Das ganze wirst du dann aber herausfinden und eventuell dann gelöst bekommen.

Bei solchen Dingen gilt ja eh erst, nach dem flashen schauen ob alle Achsen korrekt laufen.
Öfter mal erlebt, dass da mal wieder was geändert wurde und dann ein Pin nicht mehr so funktionierte wie paar Versionen zuvor usw usw.

Antworten