Marlin firmware
From emboxit
<issues project="Nixal Marlin" search="false" filter="false" />
Contents
Marlin used in nixal I3 based printers
- Reported version is v1.0.3 dev
- Which Marlin firmware version do I have on my RepRap printer?
Send M115 to the printer and it should report the current version.
- Marlin Firmware Upgrade 1.1.0 RC8 & RCBugFix (For R1 & R1+PLUS) some info on 1.0.3 dev
- Build with Arduino 1.6.9
- Modifications by NIKOS to initial Marlin used in nixal_Prusa_I3 source
<cpp>
====================Configuration.h============================
- define BAUDRATE 115200 //NIKOS
- define TEMP_SENSOR_0 1 //NIKOS
- define TEMP_SENSOR_1 0 //NIKOS
- define TEMP_SENSOR_2 0
- define TEMP_SENSOR_3 0
- define TEMP_SENSOR_BED 1 //NIKOS
- define HEATER_0_MINTEMP 5 //NIKOS ALL FORM 5 TO 30
- define HEATER_0_MAXTEMP 240 //NIKOS
- define HEATER_1_MAXTEMP 275
- define HEATER_2_MAXTEMP 275
- define HEATER_3_MAXTEMP 275
- define BED_MAXTEMP 110 //NIKOS
- define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current NIKOS
const bool X_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop. NIKOS
/ 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 true //NIKOS
- define INVERT_Z_DIR false
// For direct drive extruder v9 set to true, for geared extruder set to false.
- define INVERT_E0_DIR true //NIKOS
- define INVERT_E1_DIR false
- define INVERT_E2_DIR false
- define INVERT_E3_DIR false
// ENDSTOP SETTINGS: // Sets direction of endstops when homing; 1=MAX, -1=MIN // :[-1,1]
- define X_HOME_DIR -1
- define Y_HOME_DIR -1 //NIKOS `1 FOR ENDSTOP AT FRONT, CHANGE ENDSTOP CONECTION IF THIS IS CHANGED
- define Z_HOME_DIR -1
// Travel limits after homing (units are in mm)
- define X_MIN_POS 0 //NIKOS WAS 0
- define Y_MIN_POS 0 //NIKOS WAS 0
- define Z_MIN_POS 0//NIKOS WAS 0
- define X_MAX_POS 200 //NIKOS WAS 180
- define Y_MAX_POS 200 //NIKOS WAS 160
- define Z_MAX_POS 200 //NIKOS WAS 160
- define ENABLE_AUTO_BED_LEVELING // Delete the comment to enable (remove // at the start of the line) // Nikos uncommented
- define HOMING_FEEDRATE {50*60, 50*60, 12*60, 0} // set the homing speeds (mm/min) //NIKOS
// default settings
- define DEFAULT_AXIS_STEPS_PER_UNIT {200,200,800,1800} // NIKOS 200steps/r x 32 usteps / 0.8mm thread(M5) = 8000, 200steps/r x 32 usteps / 8mm thread(TR8x2) = 800,
- define DEFAULT_MAX_FEEDRATE {200, 200, 50, 25} // (mm/sec) //NIKOS
- define DEFAULT_MAX_ACCELERATION {3000,3000,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 REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER //NIKOS
==========================Configuration_adv.h========================
- define X_HOME_BUMP_MM 10 //NIKOS
- define Y_HOME_BUMP_MM 10
- define Z_HOME_BUMP_MM 5 // NIKOS WAS 10
- define HOMING_BUMP_DIVISOR {2, 2, 4} // Re-Bump Speed Divisor (Divides the Homing Feedrate)
//#define QUICK_HOME //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially.
- define MICROSTEP_MODES {32,32,32,32,32} // [1,2,4,8,16] // NIKOS
- define BABYSTEPPING //NIKOS: THIS WAS COMMENT
==================ultralcd.cpp=====================
#define ENCODER_FEEDRATE_DEADZONE 10
#if !defined(LCD_I2C_VIKI) #ifndef ENCODER_STEPS_PER_MENU_ITEM #define ENCODER_STEPS_PER_MENU_ITEM 1 //NIKOS #endif #ifndef ENCODER_PULSES_PER_STEP #define ENCODER_PULSES_PER_STEP 2 //NIKOS #endif #else #ifndef ENCODER_STEPS_PER_MENU_ITEM #define ENCODER_STEPS_PER_MENU_ITEM 2 // VIKI LCD rotary encoder uses a different number of steps per rotation #endif #ifndef ENCODER_PULSES_PER_STEP #define ENCODER_PULSES_PER_STEP 2 //NIKOS #endif #endif
</cpp>