1

Topic: Marlin firmware axis moving problems / only one direction

Hey there,

I got my first 3D printer "Geeetech Prusa I3X" with the "GT2560 conversion of ultimaker and Aruino Mega 2560" after configuring the configuration.h and getting the lcd2004 to work I only was able to move any axis in one direction.
I have mechanical endstops for each axis at the minimum of each axis. It worked before with the factory preset values. I only changed it to fix my feeding problems with the mk8 chinese single extruder (not enought or no material flow at the nozzle end).

Config:
nozzle diameter: 0.3 mm
filament: PLA and ABS 1.75 mm
print temp: PLA 185°C~210°C ABS 220°C~248°C
bed temp: 60°C to 85°C
bed is taped with kapton tape
bed config: mk2a heatbed; aluminum plate; glas plate

2

Re: Marlin firmware axis moving problems / only one direction

Grobium wrote:

Hey there,

I got my first 3D printer "Geeetech Prusa I3X" with the "GT2560 conversion of ultimaker and Aruino Mega 2560" after configuring the configuration.h and getting the lcd2004 to work I only was able to move any axis in one direction.
I have mechanical endstops for each axis at the minimum of each axis. It worked before with the factory preset values. I only changed it to fix my feeding problems with the mk8 chinese single extruder (not enought or no material flow at the nozzle end).

Config:
nozzle diameter: 0.3 mm
filament: PLA and ABS 1.75 mm
print temp: PLA 185°C~210°C ABS 220°C~248°C
bed temp: 60°C to 85°C
bed is taped with kapton tape
bed config: mk2a heatbed; aluminum plate; glas plate

You need to post your configuration.h file and you also need to send an m119 command to the printer when all axis are in the home position so you can see what the status of the endstops are currently. Then we go from there..

Printing since 2009 and still love it!
Anycubic 4MAX best $225 ever invested.
Voxelabs Proxima SLA. 6 inch 2k Mono LCD.
Anycubic Predator, massive Delta machine. 450 x 370 print envelope.

3

Re: Marlin firmware axis moving problems / only one direction

In pronterface was able to move the axis in both diemnsions, but only the value I let him move first.

m119 said:
x_min: open
y_min: open
z_min: open

//===========================================================================
//=============================Mechanical Settings===========================
//===========================================================================

// Uncomment the following line to enable CoreXY kinematics
// #define COREXY

// coarse Endstop Settings
#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors

#ifndef ENDSTOPPULLUPS
  // fine endstop settings: Individual pullups. will be ignored if ENDSTOPPULLUPS is defined
  // #define ENDSTOPPULLUP_XMAX
  // #define ENDSTOPPULLUP_YMAX
  // #define ENDSTOPPULLUP_ZMAX
  // #define ENDSTOPPULLUP_XMIN
  // #define ENDSTOPPULLUP_YMIN
  // #define ENDSTOPPULLUP_ZMIN
#endif

#ifdef ENDSTOPPULLUPS
  #define ENDSTOPPULLUP_XMAX
  #define ENDSTOPPULLUP_YMAX
  #define ENDSTOPPULLUP_ZMAX
  #define ENDSTOPPULLUP_XMIN
  #define ENDSTOPPULLUP_YMIN
  #define ENDSTOPPULLUP_ZMIN
#endif

// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
const bool X_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Y_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool X_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Y_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
#define DISABLE_MAX_ENDSTOPS
//#define DISABLE_MIN_ENDSTOPS

// Disable max endstops for compatibility with endstop checking routine
#if defined(COREXY) && !defined(DISABLE_MAX_ENDSTOPS)
  #define DISABLE_MAX_ENDSTOPS
#endif

// 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 when it's not being used.
#define DISABLE_X false
#define DISABLE_Y false
#define DISABLE_Z false
#define DISABLE_E false // For all extruders
#define DISABLE_INACTIVE_EXTRUDER true //disable only inactive extruders and keep active extruder enabled

#define INVERT_X_DIR true    // for Mendel set to false, for Orca set to true
#define INVERT_Y_DIR false    // for Mendel set to true, for Orca set to false
#define INVERT_Z_DIR false     // for Mendel set to false, for Orca set to true
#define INVERT_E0_DIR true   // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E1_DIR true    // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E2_DIR true   // for direct drive extruder v9 set to true, for geared extruder set to false

// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1

#define min_software_endstops true // If true, axis won't move to coordinates less than HOME_POS.
#define max_software_endstops true  // If true, axis won't move to coordinates greater than the defined lengths below.

// Travel limits after homing
#define X_MAX_POS 205
#define X_MIN_POS 0
#define Y_MAX_POS 205
#define Y_MIN_POS 0
#define Z_MAX_POS 200
#define Z_MIN_POS 0

#define X_MAX_LENGTH (X_MAX_POS - X_MIN_POS)
#define Y_MAX_LENGTH (Y_MAX_POS - Y_MIN_POS)
#define Z_MAX_LENGTH (Z_MAX_POS - Z_MIN_POS)

4

Re: Marlin firmware axis moving problems / only one direction

******************UPDATE *********************************

SENDING:M119
Reporting endstop status
x_min: TRIGGERED
y_min: TRIGGERED
z_min: TRIGGERED

5

Re: Marlin firmware axis moving problems / only one direction

Grobium wrote:

******************UPDATE *********************************

SENDING:M119
Reporting endstop status
x_min: TRIGGERED
y_min: TRIGGERED
z_min: TRIGGERED


This is with all in home position?

Printing since 2009 and still love it!
Anycubic 4MAX best $225 ever invested.
Voxelabs Proxima SLA. 6 inch 2k Mono LCD.
Anycubic Predator, massive Delta machine. 450 x 370 print envelope.

6

Re: Marlin firmware axis moving problems / only one direction

***************************UPDATE 2*********************************

Today I solved most of my problems. Now I'am able to print at a resolution of 0.1mm, with ABS and a 0.3mm nozzle.
Next problems to solve: first layer wont fit right (also some wrapping at 85°C bed temp), get a better reslution (0.05mm) and so on ... big_smile I will upload my merlin firmware for the MK8 extruder in a new thread. I hope it will help other people fixing they're problems with the extruder.

Thank you for you're help.

7 (edited by carl_m1968 2015-11-19 22:02:20)

Re: Marlin firmware axis moving problems / only one direction

Grobium wrote:

***************************UPDATE 2*********************************

Today I solved most of my problems. Now I'am able to print at a resolution of 0.1mm, with ABS and a 0.3mm nozzle.
Next problems to solve: first layer wont fit right (also some wrapping at 85°C bed temp), get a better reslution (0.05mm) and so on ... big_smile I will upload my merlin firmware for the MK8 extruder in a new thread. I hope it will help other people fixing they're problems with the extruder.

Thank you for you're help.


Just so you know, there are very few if any of these types of printers that can do .05 layers and there are none to my knowledge that can do lower. To be honest you should just consider .10 to be the best and leave it. Even the 2500 plus units won't get less than .10 reliably.

Printing since 2009 and still love it!
Anycubic 4MAX best $225 ever invested.
Voxelabs Proxima SLA. 6 inch 2k Mono LCD.
Anycubic Predator, massive Delta machine. 450 x 370 print envelope.