Halfway through the LCD section
parent
5c11a50220
commit
bc67d7f089
1 changed files with 212 additions and 0 deletions
|
|
@ -165,3 +165,215 @@ These are for special type of machines and configurations because they uses diff
|
||||||
|
|
||||||
Inverting between triggered and open state when issuing M119 command. Usually not touched but if you don't want to fiddle the wiring again, you can invert these.
|
Inverting between triggered and open state when issuing M119 command. Usually not touched but if you don't want to fiddle the wiring again, you can invert these.
|
||||||
***
|
***
|
||||||
|
## Z Probe Options
|
||||||
|
|
||||||
|
`//#define Z_MIN_PROBE_ENDSTOP`
|
||||||
|
|
||||||
|
If you want to use both probe and default z min switch for your 3D printer, enable this. However, This requires extra setups to be done. If you're using Ramps 1.4, the probe pins are located in D32 of the aux4 array that used by the lcd panel. You have to change the pin manually from the board pin file for example "pins_RAMPS_14.h" located at `#define Z_MIN_PROBE_PIN 32`. I would change this to pin 19 (z max) since it never really been used. This extra ports is actually the Z Probe that is used for your auto bed leveling.
|
||||||
|
|
||||||
|
Another way is to change between these `#define Z_MIN_PROBE_PIN 32`, `#define Z_MIN_PIN 18` and `#define Z_MAX_PIN 19` according to your board. This is not for beginners.
|
||||||
|
|
||||||
|
`#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN`
|
||||||
|
|
||||||
|
This however uses single switch for your z axis only. If you only want to use z probe for everything related to homing and bed leveling, enable this option. Note that either one of them can be enabled at a time.
|
||||||
|
|
||||||
|
Note to dev; Please make the comment explanation much simpler or the define variable, it's so confusing that reading it again can took me 1-5 minutes to figure out
|
||||||
|
|
||||||
|
`//#define DISABLE_Z_MIN_PROBE_ENDSTOP`
|
||||||
|
|
||||||
|
This typically disables your probe feature. Only applicable to `//#define Z_MIN_PROBE_ENDSTOP` enabled
|
||||||
|
|
||||||
|
***
|
||||||
|
`#define INVERT_X_DIR true`
|
||||||
|
|
||||||
|
`#define INVERT_Y_DIR false`
|
||||||
|
|
||||||
|
`#define INVERT_Z_DIR true`
|
||||||
|
|
||||||
|
`#define INVERT_E0_DIR false`
|
||||||
|
|
||||||
|
`#define INVERT_E1_DIR false`
|
||||||
|
|
||||||
|
`#define INVERT_E2_DIR false`
|
||||||
|
|
||||||
|
`#define INVERT_E3_DIR false`
|
||||||
|
|
||||||
|
These inverts the motor movement for each axis. Usually flipping the connector will be okay but if that's such a hassle, just invert these without the need to fiddle with your electronic.
|
||||||
|
|
||||||
|
***
|
||||||
|
`//#define MIN_Z_HEIGHT_FOR_HOMING 4 `
|
||||||
|
|
||||||
|
This works like how a probe based 3d printer works when homing. Instead of increase z height after x and y has been homed, Z axis are raised first before homing procedure. This is also to avoid from the head crashing to the bed mounting such as screws, bulldog clip and some other stuffs. This works with auto bed leveling enabled and this will be triggered only when z axis are less than defined value, else the z axis will not move.
|
||||||
|
|
||||||
|
`#define X_HOME_DIR -1`
|
||||||
|
|
||||||
|
`#define Y_HOME_DIR -1`
|
||||||
|
|
||||||
|
`#define Z_HOME_DIR -1`
|
||||||
|
|
||||||
|
This tells marlin where the head is at when all the endstop has been triggered. typical setup are all at min position; bottom front left side of the bed. In some cases, some owner puts the home endstops at max position and these needs to be changed if max position are used.
|
||||||
|
|
||||||
|
`#define min_software_endstops true`
|
||||||
|
|
||||||
|
`#define max_software_endstops true`
|
||||||
|
|
||||||
|
These are one of the safety features that prevents manual movement exceeding the below specified value. The head can only move within the specified value below.
|
||||||
|
|
||||||
|
`#define X_MIN_POS 0`
|
||||||
|
|
||||||
|
`#define Y_MIN_POS 0`
|
||||||
|
|
||||||
|
`#define Z_MIN_POS 0`
|
||||||
|
|
||||||
|
`#define X_MAX_POS 200`
|
||||||
|
|
||||||
|
`#define Y_MAX_POS 200`
|
||||||
|
|
||||||
|
`#define Z_MAX_POS 170`
|
||||||
|
|
||||||
|
Usually the `MIN_POS` are left at 0 value and `MAX_POS` depends on your maximum travel. Setting this too high would risk the printer's carriage crashing to each ends. This needs to be set in conjunctin with home offset eeprom variable to work properly. If you don't want to set using eeprom, you can fiddle with `MIN_POS` value above as a substitute to eeprom's Home Offset.
|
||||||
|
|
||||||
|
***
|
||||||
|
`//#define FILAMENT_RUNOUT_SENSOR `
|
||||||
|
|
||||||
|
This one is optional yet cool feature to have. An extra endstop switch is required to detect if the filament is present or not and the switch usually in normally closed/open state when the filament is present. If filament ran out, M600 command will be issued immediately.
|
||||||
|
|
||||||
|
***
|
||||||
|
##Bed Leveling
|
||||||
|
|
||||||
|
`//#define MESH_BED_LEVELING`
|
||||||
|
|
||||||
|
Bed elevation are not equal and the bed shape might be a bow shaped in the middle when it is hot nor manual bed calibration works perfect on all 4 point during initial setup. This one is slightly more advanced technique of bed leveling process where each point will have their respective elevation values
|
||||||
|
|
||||||
|
Enable `//#define MANUAL_BED_LEVELING` to access mesh bed leveling option from lcd panel.
|
||||||
|
***
|
||||||
|
`#define AUTO_BED_LEVELING_FEATURE`
|
||||||
|
|
||||||
|
If you want to use auto bed leveling feature, enable this. This works almost like mesh bed leveling except it will be done automatically. The command to do bed leveling squence is G29 after G28 has been issued.
|
||||||
|
|
||||||
|
`#define AUTO_BED_LEVELING_GRID`
|
||||||
|
|
||||||
|
whether or not you want to use grid probing matrix or 3-point probing method.
|
||||||
|
|
||||||
|
`#define LEFT_PROBE_BED_POSITION 15`
|
||||||
|
|
||||||
|
`#define RIGHT_PROBE_BED_POSITION 145`
|
||||||
|
|
||||||
|
`#define FRONT_PROBE_BED_POSITION 20`
|
||||||
|
|
||||||
|
`#define BACK_PROBE_BED_POSITION 150`
|
||||||
|
|
||||||
|
These specifies min and max position for grid matrix on your bed.
|
||||||
|
|
||||||
|
`#define AUTO_BED_LEVELING_GRID_POINTS 3`
|
||||||
|
|
||||||
|
This option will tell marlin what is the probing resolution would be, 2 and 3 are often used. These value will be squared, E.g using 2 will probe 4 points, using 4 will probe 16 points.
|
||||||
|
|
||||||
|
`#define ABL_PROBE_PT_1_X 15`
|
||||||
|
|
||||||
|
`#define ABL_PROBE_PT_1_Y 180`
|
||||||
|
|
||||||
|
`#define ABL_PROBE_PT_2_X 15`
|
||||||
|
|
||||||
|
`#define ABL_PROBE_PT_2_Y 20`
|
||||||
|
|
||||||
|
`#define ABL_PROBE_PT_3_X 170`
|
||||||
|
|
||||||
|
`#define ABL_PROBE_PT_3_Y 20`
|
||||||
|
|
||||||
|
These are the option for 3-point probing by specifying each one of their coordinates on XY plane
|
||||||
|
|
||||||
|
`#define X_PROBE_OFFSET_FROM_EXTRUDER -44 // X offset: -left [of the nozzle] +right`
|
||||||
|
|
||||||
|
`#define Y_PROBE_OFFSET_FROM_EXTRUDER -8 // Y offset: -front [of the nozzle] +behind`
|
||||||
|
|
||||||
|
`#define Z_PROBE_OFFSET_FROM_EXTRUDER -2.50 // Z offset: -below [the nozzle] (always negative!)`
|
||||||
|
|
||||||
|
This is the position of your probe from your nozzle.
|
||||||
|
|
||||||
|
```cpp
|
||||||
|
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
|
||||||
|
#define Z_RAISE_BETWEEN_PROBINGS 5 // How much the Z axis will be raised when traveling from between next probing points.
|
||||||
|
#define Z_RAISE_AFTER_PROBING 15 // How much the Z axis will be raised after the last probing point.
|
||||||
|
```
|
||||||
|
|
||||||
|
When the G29 command has been issued, z axis will move between these values. This too are important so that if your bed are not perpendicular, the probe will get triggered especially servo based probe that has switch, this is to avoid the lever from brushing against the bed
|
||||||
|
|
||||||
|
```cpp
|
||||||
|
#define Z_PROBE_END_SCRIPT "G1 Z10 F12000\nG1 X15 Y330\nG1 Z0.5\nG1 Z10" // These commands will be executed in the end of G29 routine.
|
||||||
|
```
|
||||||
|
This one is for custom script, each command are divided with `\n` (Newline) and executed after G29 are done
|
||||||
|
|
||||||
|
`#define FIX_MOUNTED_PROBE`
|
||||||
|
|
||||||
|
This in theory are for proximity sensors. Since using proximity sensors are fixed probe (not retractable), this feature will ignore the z probe triggered state during printing or other than G28/G29 command so that you're able to bring the nozzle closer to the bed.
|
||||||
|
|
||||||
|
`#define Z_PROBE_SLED`
|
||||||
|
|
||||||
|
This is almost the same like proximity sensors where there are another carriage that are meant for the sensor. The x carriage will move to the sled and latch itself to bring the sled for probing process, then when it is done the sled will be parked again. Default: Disabled
|
||||||
|
|
||||||
|
`#define Z_SAFE_HOMING`
|
||||||
|
|
||||||
|
This avoids the risk of z probe going out of the bed when homing all of the axis especially when it is the z axis's turn to home. This will bring the z axis probe into the middle of the bed then wil do the z homing to find z position. Disable this `#define Z_SAFE_HOMING` if you're using more tan 1 z axis sensor (probes and switch) and enable this`#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN` if you want to have your printer head to be parked outside of the printing area. These will work together where usign the G28 command will not going to use the z-probe while using the G29 will use the z-probe instead of the default z min switch. If `#define Z_SAFE_HOMING` is enabled, then the z min switch will never be triggered since the head will always move to the center of the bed area.
|
||||||
|
|
||||||
|
***
|
||||||
|
##Movement
|
||||||
|
|
||||||
|
`#define HOMING_FEEDRATE {50*45, 50*45, 4*45, 0}`
|
||||||
|
|
||||||
|
These are the homing speed when doing auto home and auto bed leveling. It is advisable not to use high value to achieve better accuracies.
|
||||||
|
|
||||||
|
`#define DEFAULT_AXIS_STEPS_PER_UNIT {78.74, 78.74, 2560, 95}`
|
||||||
|
|
||||||
|
This is the most crucial setting for your settings. These will determine the printer head will move according to the specified distance/location or not. The value above (X, Y, Z, E) are the default value for (20 tooth gt2 pulley, M10 metric threaded rods, mk8 extruder style) and based on A4899 stepstick.
|
||||||
|
Do note that if youre using DRV8825, these values had to be doubled; A4899 = 1/16 step, DRV8825 = 1/32 step
|
||||||
|
You should go to this site to calculate the steps
|
||||||
|
|
||||||
|
```cpp
|
||||||
|
#define DEFAULT_ACCELERATION 1000 // X, Y, Z and E acceleration in mm/s^2 for printing moves
|
||||||
|
#define DEFAULT_RETRACT_ACCELERATION 2000 // E acceleration in mm/s^2 for retracts
|
||||||
|
#define DEFAULT_TRAVEL_ACCELERATION 3000 // X, Y, Z acceleration in mm/s^2 for travel (non printing) moves
|
||||||
|
```
|
||||||
|
These are the default acceleration when movement such as `G0 x20` without `F` are issued (acceleration/speed). Do not set these too high as there are mechanical constraints too that might make your stepper motor make a whining noise or skipping steps when it starts to move or between movements.
|
||||||
|
|
||||||
|
`#define DEFAULT_XYJERK 15.0 // (mm/sec)`
|
||||||
|
|
||||||
|
Jerk works in conjunction with acceleration above. Both of acceleration and jerk will affect your print quality too especially cube and round shape.
|
||||||
|
|
||||||
|
***
|
||||||
|
##Additional Features
|
||||||
|
|
||||||
|
`#define EEPROM_SETTINGS`
|
||||||
|
|
||||||
|
This option are recommended to turn this on (enable). This option enables the EEPROM on your board and you can just change several settings without the need of re-uploading the firmware to your board again such as modifying the z-probe offset value (I often did this). Some of these settings are directly accissble from the lcd panel>control section
|
||||||
|
|
||||||
|
```cpp
|
||||||
|
Several useful command on reading and storing commands are
|
||||||
|
M500 - Save the applied setting
|
||||||
|
M501 - Load/read the saved setting (not from config.h)
|
||||||
|
M502 - Loads the setting from config.h (this are not saved to the eeeprom by default)
|
||||||
|
```
|
||||||
|
***
|
||||||
|
|
||||||
|
```cpp
|
||||||
|
#define PLA_PREHEAT_HOTEND_TEMP 180
|
||||||
|
#define PLA_PREHEAT_HPB_TEMP 70
|
||||||
|
#define PLA_PREHEAT_FAN_SPEED 0 // Insert Value between 0 and 255
|
||||||
|
|
||||||
|
#define ABS_PREHEAT_HOTEND_TEMP 240
|
||||||
|
#define ABS_PREHEAT_HPB_TEMP 110
|
||||||
|
#define ABS_PREHEAT_FAN_SPEED 0 // Insert Value between 0 and 255
|
||||||
|
```
|
||||||
|
|
||||||
|
These are preset when you want to preheat your hotend/bed before printing without the need of going through control>temperature. These option are accessible from Prepare>Preheat ABS/PLA
|
||||||
|
|
||||||
|
***
|
||||||
|
##LCD and SD
|
||||||
|
`#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)`
|
||||||
|
|
||||||
|
This will translate marlin into your preferred language, check language.h for more info
|
||||||
|
|
||||||
|
`#define SDSUPPORT // Enable SD Card Support in Hardware Console`
|
||||||
|
|
||||||
|
If you're using SD printing either from lcd or sdcard module plugged onto your board directly, enable this. Else SD card/printing will not be supported
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue