Welcome! Log In Create A New Profile

Advanced

Simplest ramps 1.2 firmware config?

Posted by Ollie 
Simplest ramps 1.2 firmware config?
June 24, 2011 03:04PM
I'm a bit stuck on this... Not really sure where to start.

Helps?
Re: Simplest ramps 1.2 firmware config?
June 25, 2011 10:51PM
Start with Sprinter firmware. You'll need the Arduino IDE for uploading (you probably already know this...)

As for the configuration of the firmware, start with the defaults.

The first hurdle is to get the hardware endstops configured properly, if you have them, or to disable them and use software endstop if you do not. The inverted endstop problem will manifest as only being able to move an axis in one direction. This is because the firmware "thinks" the endstop is at the HOME position, and will not allow you to move in the direction beyond HOME.

//Endstop Settings
#define ENDSTOPPULLUPS 1
const bool ENDSTOPS_INVERTING = true;
const bool min_software_endstops = true; //If true, axis won't move to coordinates less than zero.
const bool max_software_endstops = true; //If true, axis won't move to coordinates greater than the defined lengths below.
const int X_MAX_LENGTH = 220;
const int Y_MAX_LENGTH = 220;
const int Z_MAX_LENGTH = 100;


Calibration of the axis values is done by commanding an axis to move say 40mm, and measuring how much it actually moves. This CommandedX over ActualX (cX/aX) becomes the multiplier for that axis.

You can stack them up together if you take multiple readings like this:

// Calibration formulas
// e_extruded_steps_per_mm = e_feedstock_steps_per_mm * (desired_extrusion_diameter^2 / feedstock_diameter^2)
// new_axis_steps_per_mm = previous_axis_steps_per_mm * (test_distance_instructed/test_distance_traveled)
// units are in millimeters or whatever length unit you prefer: inches,football-fields,parsecs etc

//Calibration variables
float x_steps_per_unit = 80.376*(cX1/aX1)*(cX2/aX2);
float y_steps_per_unit = 80.376*(cY1/aY1);
float z_steps_per_unit = 3200/1.25*(cZ1/aZ1);
float e_steps_per_unit = 16;
float max_feedrate = 200000; //mmm, acceleration!
Sorry, only registered users may post in this forum.

Click here to login