<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel>
        <title>Invert-Problem (Marlin)</title>
        <description> Hallo Allerseits,

ich habe ein (für mich) sehr dubioses Problem.

Ich habe einen neuen CoreXY-Drucker aufgebaut.
Konfiguration: MKS Gen L V1.0, TMC2208-Treiber und Marlin 1.1.9.

Beim ersten Bewegungstest lief die Y-Achse verkehrt, also habe ich den entsprechenden Wert gedreht.
Seltsamerweise wurde jedoch nicht die Bewegungsrichtung von Y umgekehrt, sondern Y wird zu X und Y bewegt sich gar nicht mehr.

Einen Hardwaredefekt kann ich inzwischen zu 99% ausschließen, da ich inzwischen alles einmal durchgetauscht habe - Board, alle Treiber, die beiden Steppermotoren. Es muss also an der SW liegen. Allerdings habe ich keine Ahnung, was genau mein Problem ist.

Mit diesem Code bewegen sich X und Z korrekt und Y bewegt sich falschrum:
QuoteCode
    #define INVERT_X_DIR true
    #define INVERT_Y_DIR true
    #define INVERT_Z_DIR true

Mit dieser Änderung wird Y zu X und Y bewegt sich gar nicht mehr.

QuoteCode
    #define INVERT_X_DIR true
    #define INVERT_Y_DIR false
    #define INVERT_Z_DIR true

Auszug der restlichen Configuration.h:

QuoteCode
    #ifndef MOTHERBOARD
      #define MOTHERBOARD BOARD_MKS_GEN_L
    #endif

    ......

    // @section machine
    #define COREXY
    //#define COREXZ
    //#define COREYZ
    //#define COREYX
    //#define COREZX
    //#define COREZY

    .....

    // @section homing

    #define USE_XMIN_PLUG
    #define USE_YMIN_PLUG
    #define USE_ZMIN_PLUG
    //#define USE_XMAX_PLUG
    //#define USE_YMAX_PLUG
    //#define USE_ZMAX_PLUG
    .....

    /**
     * Stepper Drivers
     *
     */
    #define X_DRIVER_TYPE  TMC2208_STANDALONE
    #define Y_DRIVER_TYPE  TMC2208_STANDALONE
    #define Z_DRIVER_TYPE  TMC2208_STANDALONE
    //#define X2_DRIVER_TYPE A4988
    //#define Y2_DRIVER_TYPE A4988
    //#define Z2_DRIVER_TYPE A4988
    #define E0_DRIVER_TYPE TMC2208_STANDALONE
    //#define E1_DRIVER_TYPE A4988
    //#define E2_DRIVER_TYPE A4988
    //#define E3_DRIVER_TYPE A4988
    //#define E4_DRIVER_TYPE A4988

    .....

    // For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
    #define X_ENABLE_ON 0
    #define Y_ENABLE_ON 0
    #define Z_ENABLE_ON 0
    #define E_ENABLE_ON 0 // For all extruders

    // Disables axis stepper immediately when it&#039;s not being used.
    // WARNING: When motors turn off there is a chance of losing position accuracy!
    #define DISABLE_X false
    #define DISABLE_Y false
    #define DISABLE_Z false
    // Warn on display about possibly reduced accuracy
    //#define DISABLE_REDUCED_ACCURACY_WARNING

    // @section extruder

    #define DISABLE_E false // For all extruders
    #define DISABLE_INACTIVE_EXTRUDER true // Keep only the active extruder enabled.

    // @section machine

    // Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
    #define INVERT_X_DIR true
    #define INVERT_Y_DIR false
    #define INVERT_Z_DIR true

    // @section extruder

    // For direct drive extruder v9 set to true, for geared extruder set to false.
    #define INVERT_E0_DIR true
    #define INVERT_E1_DIR true
    #define INVERT_E2_DIR false
    #define INVERT_E3_DIR false
    #define INVERT_E4_DIR false

    // @section homing

    //#define NO_MOTION_BEFORE_HOMING  
    //#define UNKNOWN_Z_NO_RAISE
    //#define Z_HOMING_HEIGHT 4  


    // Direction of endstops when homing; 1=MAX, -1=MIN :[-1,1]
    #define X_HOME_DIR -1
    #define Y_HOME_DIR -1
    #define Z_HOME_DIR -1

    // @section machine

    // The size of the print bed
    #define X_BED_SIZE 340
    #define Y_BED_SIZE 380

    // Travel limits (mm) after homing, corresponding to endstop positions.
    #define X_MIN_POS 0
    #define Y_MIN_POS 0
    #define Z_MIN_POS 0
    #define X_MAX_POS X_BED_SIZE
    #define Y_MAX_POS Y_BED_SIZE
    #define Z_MAX_POS 350

Ich hoffe, dass mir irgendjemand helfen kann.</description>
        <link>https://reprap.org/forum/read.php?247,845477,845477#msg-845477</link>
        <lastBuildDate>Mon, 13 Jul 2026 14:02:27 -0400</lastBuildDate>
        <generator>Phorum 5.2.23</generator>
        <item>
            <guid>https://reprap.org/forum/read.php?247,845477,845610#msg-845610</guid>
            <title>Re: Invert-Problem (Marlin)</title>
            <link>https://reprap.org/forum/read.php?247,845477,845610#msg-845610</link>
            <description><![CDATA[ <b>@Hallo Reflexer</b><br />
<br />
<blockquote class="bbcode"><div><small>Quote<br /></small><strong></strong><br />
Sobald man die beiden Motoren korrekt anschließt - sprich den Min-Motor an X und den Max-Motor an Y geht alles wunderbar....</div></blockquote>
Das hätte ich wohl als nächstes gefragt ob dein X-Motor.Links und dein Y-Motor-Rechts an geschlossen hast.<br />
<br />
<br />
MFG Stefan]]></description>
            <dc:creator>Micro3D</dc:creator>
            <category>Software</category>
            <pubDate>Mon, 28 Jan 2019 19:13:17 -0500</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?247,845477,845604#msg-845604</guid>
            <title>Re: Invert-Problem</title>
            <link>https://reprap.org/forum/read.php?247,845477,845604#msg-845604</link>
            <description><![CDATA[ Das Thema kann als erledigt betrachtet werden.<br />
<br />
Sobald man die beiden Motoren korrekt anschließt - sprich den Min-Motor an X und den Max-Motor an Y geht alles wunderbar. Ich hatte das gestern schonmal versucht, allerdings mitten in der Testreihe. Bin heute alle Möglichkeiten nochmals durchgegangen (mit falsch angeschlossenen Motoren) - ohne dass dies zum Erfolg geführt hätte. Hatte dann die Idee das ganze nochmals durchzutesten und die beiden Motoren andersrum anzuschließen und prompt tat alles wie es sollte.<br />
<br />
Die Antworten bzgl. Endstops haben jedoch dazu geführt, dass ich noch einen Fehler beim BLTouch im Vorfeld beheben konnte, über den ich ohnehin gestolpert wäre.<br />
<br />
Die automatische Bettnivellierung hat so jedenfalls auf Anhieb korrekt funktioniert.<br />
<br />
Ich danke alle, die versucht haben mein (auf Dummheit begründetes) Problem zu lösen vielmals!!!]]></description>
            <dc:creator>Reflexer</dc:creator>
            <category>Software</category>
            <pubDate>Mon, 28 Jan 2019 17:23:37 -0500</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?247,845477,845593#msg-845593</guid>
            <title>Re: Invert-Problem</title>
            <link>https://reprap.org/forum/read.php?247,845477,845593#msg-845593</link>
            <description><![CDATA[ <blockquote class="bbcode"><div><small>Quote<br /></small><strong>Kenny-F-Powers</strong><br />
Öhm... Also wenn deine Achse in die falsche Richtung fährt, dann dreh den Stecker des Schrittmotors um</div></blockquote>
<br />
Der Software-Invert tut exakt das Selbe. Nichts desto trotz habe ich das vorhin probiert und das Ergebnis ist das Selbe wie beim SW-Invert.]]></description>
            <dc:creator>Reflexer</dc:creator>
            <category>Software</category>
            <pubDate>Mon, 28 Jan 2019 15:24:25 -0500</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?247,845477,845514#msg-845514</guid>
            <title>Re: Invert-Problem</title>
            <link>https://reprap.org/forum/read.php?247,845477,845514#msg-845514</link>
            <description><![CDATA[ Öhm... Also wenn deine Achse in die falsche Richtung fährt, dann dreh den Stecker des Schrittmotors um]]></description>
            <dc:creator>Kenny-F-Powers</dc:creator>
            <category>Software</category>
            <pubDate>Sun, 27 Jan 2019 17:16:41 -0500</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?247,845477,845513#msg-845513</guid>
            <title>Re: Invert-Problem</title>
            <link>https://reprap.org/forum/read.php?247,845477,845513#msg-845513</link>
            <description><![CDATA[ Ich denke mal, deine Endstops schalten nicht gegen Masse.<br />
<pre class="bbcode">
// Enable pullup for all endstops to prevent a floating state
<span style="color:#FF0033">//</span>#define ENDSTOPPULLUPS
#if DISABLED(ENDSTOPPULLUPS)
  // Disable ENDSTOPPULLUPS to set pullups individually
  //#define ENDSTOPPULLUP_XMAX
  //#define ENDSTOPPULLUP_YMAX
  //#define ENDSTOPPULLUP_ZMAX
  //#define ENDSTOPPULLUP_XMIN
  //#define ENDSTOPPULLUP_YMIN
  //#define ENDSTOPPULLUP_ZMIN
  //#define ENDSTOPPULLUP_ZMIN_PROBE
#endif

// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
#define X_MIN_ENDSTOP_INVERTING <span style="color:#FF0000">true</span> // set to true to invert the logic of the endstop.
#define Y_MIN_ENDSTOP_INVERTING <span style="color:#FF0000">true</span> // set to true to invert the logic of the endstop.
#define Z_MIN_ENDSTOP_INVERTING <span style="color:#FF0000">true</span> // set to true to invert the logic of the endstop.
..
#define Z_MIN_PROBE_ENDSTOP_INVERTING <span style="color:#FF0000">true</span> // set to true to invert the logic of the probe.</pre>
Herzl. Grüße]]></description>
            <dc:creator>AlterBastler</dc:creator>
            <category>Software</category>
            <pubDate>Sun, 27 Jan 2019 17:05:00 -0500</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?247,845477,845508#msg-845508</guid>
            <title>Re: Invert-Problem</title>
            <link>https://reprap.org/forum/read.php?247,845477,845508#msg-845508</link>
            <description><![CDATA[ <b>@Hallo Reflexer</b><br />
<br />
<blockquote class="bbcode"><div><small>Quote<br /></small><strong></strong><br />
"drücken" wird schwierig bei optischen Endstops.....</div></blockquote>
Dann nimmt man ein stück Parpier :D<br />
<br />
<blockquote class="bbcode"><div><small>Quote<br /></small><strong></strong><br />
Aber mal dumm gefragt. Was haben die Endstops damit zu tun? Ich kann aktuell kein Homing durchführen......</div></blockquote>
Es kann ja sein das deine Endstops bei nicht ausgelösten zu stand <b>TRIGGERED</b> anzeigt, ich würde mal sagen das währe mal Blöd.<br />
<br />
So konfiguriere die Optische Endstops., der rest past so.<br />
<pre class="bbcode">
// Enable pullup for all endstops to prevent a floating state
#define ENDSTOPPULLUPS
#if DISABLED(ENDSTOPPULLUPS)
  // Disable ENDSTOPPULLUPS to set pullups individually
  //#define ENDSTOPPULLUP_XMAX
  //#define ENDSTOPPULLUP_YMAX
  //#define ENDSTOPPULLUP_ZMAX
  <b>#define ENDSTOPPULLUP_XMIN
  #define ENDSTOPPULLUP_YMIN
  #define ENDSTOPPULLUP_ZMIN
  #define ENDSTOPPULLUP_ZMIN_PROBE</b>
#endif</pre>
<br />
Edit:<br />
<pre class="bbcode">
// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
#define X_MIN_ENDSTOP_INVERTING <b><span style="color:#FF0000">false</span></b> // set to true to invert the logic of the endstop.
#define Y_MIN_ENDSTOP_INVERTING <b><span style="color:#FF0000">false</span></b> // set to true to invert the logic of the endstop.
#define Z_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define X_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Y_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.</pre>
<br />
<br />
<b>#define COREXY</b>  das past auch<br />
<br />
<br />
<br />
MFG Stefan]]></description>
            <dc:creator>Micro3D</dc:creator>
            <category>Software</category>
            <pubDate>Sun, 27 Jan 2019 16:47:05 -0500</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?247,845477,845503#msg-845503</guid>
            <title>Re: Invert-Problem</title>
            <link>https://reprap.org/forum/read.php?247,845477,845503#msg-845503</link>
            <description><![CDATA[ <blockquote class="bbcode"><div><small>Quote<br /></small><strong>AlterBastler</strong><br />
Versuch das mal:<br />
<pre class="bbcode">
#define COREYX</pre>
<br />
Herzl. Grüße</div></blockquote>
<br />
Habe ich schon versucht. Hat nichts gebracht :(]]></description>
            <dc:creator>Reflexer</dc:creator>
            <category>Software</category>
            <pubDate>Sun, 27 Jan 2019 15:57:27 -0500</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?247,845477,845502#msg-845502</guid>
            <title>Re: Invert-Problem</title>
            <link>https://reprap.org/forum/read.php?247,845477,845502#msg-845502</link>
            <description><![CDATA[ Hallo Stefan,<br />
<br />
"drücken" wird schwierig bei optischen Endstops :D<br />
<br />
Aber mal dumm gefragt. Was haben die Endstops damit zu tun? Ich kann aktuell kein Homing durchführen, da die Y-Achse in die falsche Richtung fährt.<br />
<br />
Und vorne/hinten/rechts/links ist bei einem CoreXY ja auch relativ. Ich habe die entsprechenden Bilder angehängt. Nicht erschrecken. Ich bin noch nicht fertig. Das ist der erste Versuchsaufbau. Der Z-Endstop ist über BL-Touch gelöst.<br />
<br />
Die Configuration.h habe ich ebenfalls angehängt.<br />
<br />
Grüße<br />
Arne]]></description>
            <dc:creator>Reflexer</dc:creator>
            <category>Software</category>
            <pubDate>Sun, 27 Jan 2019 15:56:32 -0500</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?247,845477,845501#msg-845501</guid>
            <title>Re: Invert-Problem</title>
            <link>https://reprap.org/forum/read.php?247,845477,845501#msg-845501</link>
            <description><![CDATA[ Versuch das mal:<br />
<pre class="bbcode">
#define COREYX</pre>
<br />
Herzl. Grüße]]></description>
            <dc:creator>AlterBastler</dc:creator>
            <category>Software</category>
            <pubDate>Sun, 27 Jan 2019 15:43:39 -0500</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?247,845477,845494#msg-845494</guid>
            <title>Re: Invert-Problem</title>
            <link>https://reprap.org/forum/read.php?247,845477,845494#msg-845494</link>
            <description><![CDATA[ <b>@Hallo Reflexer</b><br />
<br />
Ich würde mal an deiner stelle erst nur um die Endstops Stettings kümmern,<br />
wenn du ein <b>M119</b> sendest das heißt wenn du den Endstops gedrückt hälst muss er <b>TRIGGERED</b> und<br />
bei enen nicht gedrückten Endstop <b>open</b> anzeigen.<br />
<br />
Mich würde interessieren wenn du vor dem Drucker sitzt wo denn die Mortoren sitzen <b>Vorne</b> oder <b>Hinten</b> , am besten mal ein Foto machen.<br />
<br />
Eine Configuration.h würde auch noch Helfen.<br />
<br />
<br />
<br />
MFG Stefan]]></description>
            <dc:creator>Micro3D</dc:creator>
            <category>Software</category>
            <pubDate>Sun, 27 Jan 2019 13:31:26 -0500</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?247,845477,845477#msg-845477</guid>
            <title>Invert-Problem (Marlin)</title>
            <link>https://reprap.org/forum/read.php?247,845477,845477#msg-845477</link>
            <description><![CDATA[ Hallo Allerseits,<br />
<br />
ich habe ein (für mich) sehr dubioses Problem.<br />
<br />
Ich habe einen neuen CoreXY-Drucker aufgebaut.<br />
Konfiguration: MKS Gen L V1.0, TMC2208-Treiber und Marlin 1.1.9.<br />
<br />
Beim ersten Bewegungstest lief die Y-Achse verkehrt, also habe ich den entsprechenden Wert gedreht.<br />
Seltsamerweise wurde jedoch nicht die Bewegungsrichtung von Y umgekehrt, sondern Y wird zu X und Y bewegt sich gar nicht mehr.<br />
<br />
Einen Hardwaredefekt kann ich inzwischen zu 99% ausschließen, da ich inzwischen alles einmal durchgetauscht habe - Board, alle Treiber, die beiden Steppermotoren. Es muss also an der SW liegen. Allerdings habe ich keine Ahnung, was genau mein Problem ist.<br />
<br />
Mit diesem Code bewegen sich X und Z korrekt und Y bewegt sich falschrum:<br />
<blockquote class="bbcode"><div><small>Quote<br /></small><strong>Code</strong><br />
    #define INVERT_X_DIR true<br />
    #define INVERT_Y_DIR true<br />
    #define INVERT_Z_DIR true</div></blockquote>
<br />
Mit dieser Änderung wird Y zu X und Y bewegt sich gar nicht mehr.<br />
<br />
<blockquote class="bbcode"><div><small>Quote<br /></small><strong>Code</strong><br />
    #define INVERT_X_DIR true<br />
    #define INVERT_Y_DIR false<br />
    #define INVERT_Z_DIR true</div></blockquote>
<br />
Auszug der restlichen Configuration.h:<br />
<br />
<blockquote class="bbcode"><div><small>Quote<br /></small><strong>Code</strong><br />
    #ifndef MOTHERBOARD<br />
      #define MOTHERBOARD BOARD_MKS_GEN_L<br />
    #endif<br />
<br />
    ......<br />
<br />
    // @section machine<br />
    #define COREXY<br />
    //#define COREXZ<br />
    //#define COREYZ<br />
    //#define COREYX<br />
    //#define COREZX<br />
    //#define COREZY<br />
<br />
    .....<br />
<br />
    // @section homing<br />
<br />
    #define USE_XMIN_PLUG<br />
    #define USE_YMIN_PLUG<br />
    #define USE_ZMIN_PLUG<br />
    //#define USE_XMAX_PLUG<br />
    //#define USE_YMAX_PLUG<br />
    //#define USE_ZMAX_PLUG<br />
    .....<br />
<br />
    /**<br />
     * Stepper Drivers<br />
     *<br />
     */<br />
    #define X_DRIVER_TYPE  TMC2208_STANDALONE<br />
    #define Y_DRIVER_TYPE  TMC2208_STANDALONE<br />
    #define Z_DRIVER_TYPE  TMC2208_STANDALONE<br />
    //#define X2_DRIVER_TYPE A4988<br />
    //#define Y2_DRIVER_TYPE A4988<br />
    //#define Z2_DRIVER_TYPE A4988<br />
    #define E0_DRIVER_TYPE TMC2208_STANDALONE<br />
    //#define E1_DRIVER_TYPE A4988<br />
    //#define E2_DRIVER_TYPE A4988<br />
    //#define E3_DRIVER_TYPE A4988<br />
    //#define E4_DRIVER_TYPE A4988<br />
<br />
    .....<br />
<br />
    // For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1<br />
    #define X_ENABLE_ON 0<br />
    #define Y_ENABLE_ON 0<br />
    #define Z_ENABLE_ON 0<br />
    #define E_ENABLE_ON 0 // For all extruders<br />
<br />
    // Disables axis stepper immediately when it's not being used.<br />
    // WARNING: When motors turn off there is a chance of losing position accuracy!<br />
    #define DISABLE_X false<br />
    #define DISABLE_Y false<br />
    #define DISABLE_Z false<br />
    // Warn on display about possibly reduced accuracy<br />
    //#define DISABLE_REDUCED_ACCURACY_WARNING<br />
<br />
    // @section extruder<br />
<br />
    #define DISABLE_E false // For all extruders<br />
    #define DISABLE_INACTIVE_EXTRUDER true // Keep only the active extruder enabled.<br />
<br />
    // @section machine<br />
<br />
    // Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.<br />
    #define INVERT_X_DIR true<br />
    #define INVERT_Y_DIR false<br />
    #define INVERT_Z_DIR true<br />
<br />
    // @section extruder<br />
<br />
    // For direct drive extruder v9 set to true, for geared extruder set to false.<br />
    #define INVERT_E0_DIR true<br />
    #define INVERT_E1_DIR true<br />
    #define INVERT_E2_DIR false<br />
    #define INVERT_E3_DIR false<br />
    #define INVERT_E4_DIR false<br />
<br />
    // @section homing<br />
<br />
    //#define NO_MOTION_BEFORE_HOMING  <br />
    //#define UNKNOWN_Z_NO_RAISE<br />
    //#define Z_HOMING_HEIGHT 4  <br />
<br />
<br />
    // Direction of endstops when homing; 1=MAX, -1=MIN :[-1,1]<br />
    #define X_HOME_DIR -1<br />
    #define Y_HOME_DIR -1<br />
    #define Z_HOME_DIR -1<br />
<br />
    // @section machine<br />
<br />
    // The size of the print bed<br />
    #define X_BED_SIZE 340<br />
    #define Y_BED_SIZE 380<br />
<br />
    // Travel limits (mm) after homing, corresponding to endstop positions.<br />
    #define X_MIN_POS 0<br />
    #define Y_MIN_POS 0<br />
    #define Z_MIN_POS 0<br />
    #define X_MAX_POS X_BED_SIZE<br />
    #define Y_MAX_POS Y_BED_SIZE<br />
    #define Z_MAX_POS 350</div></blockquote>
<br />
Ich hoffe, dass mir irgendjemand helfen kann.]]></description>
            <dc:creator>Reflexer</dc:creator>
            <category>Software</category>
            <pubDate>Sun, 27 Jan 2019 10:57:41 -0500</pubDate>
        </item>
    </channel>
</rss>
