General 3D Printing Thread


 
Matt
No go good thought though.
Y axis will still only move in one direction. I ordered my new RAMPS v1.4 and it should be here tomorrow. If that doesn't work. Ill shoot some video.
Its almost like something is bridged on the board. Y will only move in one direction. No if ands or buts about it. Hitting + or - steps in the software it only moves one way.

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

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

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

#ifndef ENDSTOPPULLUPS
// fine Enstop settings: Individual Pullups. will be ignord 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_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
//#define DISABLE_MAX_ENDSTOPS

// 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 INVERT_X_DIR false // for Mendel set to false, for Orca set to true
#define INVERT_Y_DIR true // 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 false // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E2_DIR false // 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)

// The position of the homing switches
//#define MANUAL_HOME_POSITIONS // If defined, MANUAL_*_HOME_POS below will be used
//#define BED_CENTER_AT_0_0 // If defined, the center of the bed is at (X=0, Y=0)

//Manual homing switch locations:
#define MANUAL_X_HOME_POS 0
#define MANUAL_Y_HOME_POS 0
#define MANUAL_Z_HOME_POS 0

//// MOVEMENT SETTINGS
#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E
#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min)

// default settings

#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200.0*8/3,760*1.1} // default steps per unit for ultimaker
#define DEFAULT_MAX_FEEDRATE {500, 500, 5, 25} // (mm/sec)
#define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot.

#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves
#define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts

// Offset of the extruders (uncomment if using more than one and relying on firmware to position when changing).
// The offset has to be X=0, Y=0 for the extruder 0 hotend (default extruder).
// For the other hotends it is their distance from the extruder 0 hotend.
// #define EXTRUDER_OFFSET_X {0.0, 20.00} // (in mm) for each extruder, offset of the hotend on the X axis
// #define EXTRUDER_OFFSET_Y {0.0, 5.00} // (in mm) for each extruder, offset of the hotend on the Y axis

// The speed change that does not require acceleration (i.e. the software might assume it can be done instanteneously)
#define DEFAULT_XYJERK 20.0 // (mm/sec)
#define DEFAULT_ZJERK 0.4 // (mm/sec)
#define DEFAULT_EJERK 5.0 // (mm/sec)
 
If your Configuration.h has "min_software_endstops" you may want to set that to false to see if that fixes it. At least then you'd know it wasn't a Marlin issue.
 
My new "super flat surface" aluminum headbed


(sad trombone)
If I put my 24" level on it, I can spin the level. This is cold too, so I imagine it will be even worse when heated. I considered taking a block sander to it, or putting it in a jig consisting of some blocks to hold the edges and a hydraulic jack pushing in the middle. It is going to be hard to take 0.4mm of bow out of a plate of 3.2mm aluminum though without making it into a warped mess. Anyone got a better idea?
 
That or get a thicker piece of borosilicate glass to clip onto the top and try forcing the aluminum to conform while heated. The top aluminum sheet of my heated bed can definitely flex when heated, but my glass is so stiff it conforms right to it with clips placed along the perimeter.
 
That's the bare aluminum surface with no glass on it. I was hoping to not use glass at all because my bed would be so flat it wouldn't be needed. Benefits being less mass, quicker heating, no worries about breakage, and no worries about the head/z-probe hitting a clip.

If I'm going to put glass on it, I'll just go back to using the PCB heatbed.
 
Print right on the aluminum of course. :-D I sprayed it with hairspray and stuff sticks to it just fine, or at least the few small parts I could print last night with the big bulge in it. I suppose I could scuff it up a bit too for more permanent gription.
 
No but I've heated the bed and pushed the extruder across it. At the X,Y=0,0 position there's a pretty big gap (~0.4mm) and the head contacts the bed before it gets to the center. I'll do a proper heated Z-probing tonight just to be sure.
 
So got my new RAMPS Board in the mail today. And I am pleased to say this fixed the issue. I did however blow a Stepper Driver in the process of testing Oh Well. and I got my Raspberry Pi out and setup OctoPrint.
I just want to thank all of you for your help. Now to start calibrating.
 
So after a little grinding on the top part of the nozzle to shorten it and new ptfe sleeve I was able to print all day yesterday without issues with the black makerfarm abs. The peek housing was causing the unthreaded part of the nozzle to pinch the tube.
 
Well...that didn't last long. Luckily, I've received my replacement .5mm mk-v-bv from hotends.com but unfortunately the mounting plate is different. New aluminum plate ordered, now the waiting again...
 
Bryan, I just got around to making the mods to my RAMPS board you suggested earlier to supply a bit more juice to my heated bed. I changed the transistor and fuse as you had suggested and everything worked out really well. At first I wasnt sure if it was helping or not, but it had been seeming like forever to achieve those last few degrees on the bed to reach 110, now it seems to be able to get those last few degrees much faster. Less waiting makes me happy... Thanks a bunch for sharing....
 
Glad to hear it man! I just took out my aluminum bed tonight and went back to the PCB+Glass. Golly, I forgot how nice my printer does on a fairly even bed, even with the minor dimples. That China-cheap MK3 ALU bed was just so awful. While I was swapping it back in I replaced the 18 gauge wire with some 16 gauge I had sitting around just for good measure.

If you haven't been following the Marlin development, the bed autoleveling is integrated now. It has been cleaned up a lot so that's good news. They've also added some code to disengage the servo once it is in position. This is the same thing I was trying to prevent that jitter that caused the servo's shaking to create a large variance in the Z measurements. I'm still getting ~0.15mm variance with my design so I'm going to try shortening the arm distance and changing the direction the switch is held, which I hope will get that closer to zero. My optical endstop has about <0.01mm variance (in unchanging lighting conditions). If I can get the servo switch under 0.05mm I'll be happy.
 

 

Back
Top