Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 15 additions & 15 deletions config/examples/FlyingBear/P905H/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@

// Choose the name from boards.h that matches your setup
#ifndef MOTHERBOARD
#define MOTHERBOARD BOARD_MKS_GEN_13
#define MOTHERBOARD BOARD_MKS_GEN_L
#endif

// @section serial
Expand Down Expand Up @@ -1362,7 +1362,7 @@
* Override with M92 (when enabled below)
* X, Y, Z [, I [, J [, K...]]], E0 [, E1[, E2...]]
*/
#define DEFAULT_AXIS_STEPS_PER_UNIT { 100, 100, 800, 94 }
#define DEFAULT_AXIS_STEPS_PER_UNIT { 100, 100, 800, 96 }

/**
* Enable support for M92. Disable to save at least ~530 bytes of flash.
Expand All @@ -1374,7 +1374,7 @@
* Override with M203
* X, Y, Z [, I [, J [, K...]]], E0 [, E1[, E2...]]
*/
#define DEFAULT_MAX_FEEDRATE { 150, 150, 4, 25 }
#define DEFAULT_MAX_FEEDRATE { 150, 150, 5, 25 }

//#define LIMITED_MAX_FR_EDITING // Limit edit via M203 or LCD to DEFAULT_MAX_FEEDRATE * 2
#if ENABLED(LIMITED_MAX_FR_EDITING)
Expand Down Expand Up @@ -1402,9 +1402,9 @@
* M204 R Retract Acceleration
* M204 T Travel Acceleration
*/
#define DEFAULT_ACCELERATION 400 // X, Y, Z and E acceleration for printing moves
#define DEFAULT_RETRACT_ACCELERATION 3000 // E acceleration for retracts
#define DEFAULT_TRAVEL_ACCELERATION 600 // X, Y, Z acceleration for travel (non printing) moves
#define DEFAULT_ACCELERATION 800 // X, Y, Z and E acceleration for printing moves
#define DEFAULT_RETRACT_ACCELERATION 3000 // E acceleration for retracts
#define DEFAULT_TRAVEL_ACCELERATION 1000 // X, Y, Z acceleration for travel (non printing) moves

/**
* Default Jerk limits (mm/s)
Expand All @@ -1414,13 +1414,13 @@
* When changing speed and direction, if the difference is less than the
* value set here, it may happen instantaneously.
*/
// P905H could work with classic jerk too
//#define CLASSIC_JERK
// P905H should work with classic jerk
#define CLASSIC_JERK
#if ENABLED(CLASSIC_JERK)
#define DEFAULT_XJERK 10.0
#define DEFAULT_YJERK 10.0
#define DEFAULT_YJERK 8.0
#define DEFAULT_ZJERK 0.3
#define DEFAULT_EJERK 2.5
#define DEFAULT_EJERK 10.0
//#define DEFAULT_IJERK 0.3
//#define DEFAULT_JJERK 0.3
//#define DEFAULT_KJERK 0.3
Expand Down Expand Up @@ -1748,7 +1748,7 @@

// Most probes should stay away from the edges of the bed, but
// with NOZZLE_AS_PROBE this can be negative for a wider probing area.
#define PROBING_MARGIN 20
#define PROBING_MARGIN 35

// X and Y axis travel speed between probes.
// Leave undefined to use the average of the current XY homing feedrate.
Expand Down Expand Up @@ -1866,10 +1866,10 @@
//#define DELAY_BEFORE_PROBING 200 // (ms) To prevent vibrations from triggering piezo sensors

// Require minimum nozzle and/or bed temperature for probing
//#define PREHEAT_BEFORE_PROBING
#define PREHEAT_BEFORE_PROBING
#if ENABLED(PREHEAT_BEFORE_PROBING)
#define PROBING_NOZZLE_TEMP 120 // (°C) Only applies to E0 at this time
#define PROBING_BED_TEMP 50
#define PROBING_NOZZLE_TEMP 100 // (°C) Only applies to E0 at this time
#define PROBING_BED_TEMP 60
#endif

// @section stepper drivers
Expand Down Expand Up @@ -2585,7 +2585,7 @@
#define PREHEAT_1_FAN_SPEED 0 // Value from 0 to 255

#define PREHEAT_2_LABEL "ABS"
#define PREHEAT_2_TEMP_HOTEND 230
#define PREHEAT_2_TEMP_HOTEND 200
#define PREHEAT_2_TEMP_BED 100
#define PREHEAT_2_TEMP_CHAMBER 35
#define PREHEAT_2_FAN_SPEED 0 // Value from 0 to 255
Expand Down
9 changes: 6 additions & 3 deletions config/examples/FlyingBear/P905H/Configuration_adv.h
Original file line number Diff line number Diff line change
Expand Up @@ -1583,7 +1583,7 @@
//#define DISABLE_REDUCED_ACCURACY_WARNING

#if HAS_MANUAL_MOVE_MENU
#define MANUAL_FEEDRATE { 50*60, 50*60, 4*60, 2*60 } // (mm/min) Feedrates for manual moves along X, Y, Z, E from panel
#define MANUAL_FEEDRATE { 50*60, 50*60, 4*60, 4*60 } // (mm/min) Feedrates for manual moves along X, Y, Z, E from panel
#define FINE_MANUAL_MOVE 0.025 // (mm) Smallest manual move (< 0.1mm) applying to Z on most machines
#if IS_ULTIPANEL
#define MANUAL_E_MOVES_RELATIVE // Display extruder move distance rather than "position"
Expand Down Expand Up @@ -2476,13 +2476,16 @@
*
* See https://marlinfw.org/docs/features/lin_advance.html for full instructions.
*/
//#define LIN_ADVANCE

#define LIN_ADVANCE

#if ANY(LIN_ADVANCE, FT_MOTION)
#if ENABLED(DISTINCT_E_FACTORS)
#define ADVANCE_K { 0.22 } // (mm) Compression length per 1mm/s extruder speed, per extruder. Override with 'M900 T<tool> K<mm>'.
#else
#define ADVANCE_K 0.22 // (mm) Compression length for all extruders. Override with 'M900 K<mm>'.
// For P905H 0.4 is a bare minimum but optimal values are in the range 0.8-1.0
// NOTE: With non zero value it lags on a speed > 90mm/s
#define ADVANCE_K 0.4 // (mm) Compression length for all extruders. Override with 'M900 K<mm>'.
#endif
//#define ADVANCE_K_EXTRA // Add a second linear advance constant, configurable with 'M900 L'.
#endif
Expand Down
19 changes: 8 additions & 11 deletions config/examples/FlyingBear/P905H/README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,11 @@
# Flying Bear P905H configuration
# Flying Bear P905H

This configuration is for a P905H with **a single extruder and inductive Z-sensor**. It's been thoroughly tested, and I've tried to make the printer work smoothly, so this configuration is more focused on print quality than speed.
Configuration is based on P905H with **a single extruder and inductive Z-sensor**.

- Use this firmware as a baseline for other P905 modifications.
- Find other notes in the config files by searching for "P905H".
I've tried to adapt original Marlin 1.x limits to Marlin 2.1.x with classical jerk and linear advance enabled.

## Build Instructions
- Get Visual Studio Code and install the "Auto Build Marlin" extension.
- Download the [Marlin source code](//marlinfw.org/meta/download/).
- Copy the two Configuration files from this folder into the 'Marlin' folder (replacing the existing files).
- Open the 'MarlinFirmware' project folder in Visual Studio Code.
- Click the "Auto Build Marlin" button and then the Upload button.
- Don't forget to reset your EEPROM with `M502` and `M500` after flashing.
- Linear advance is working but CPU can not handle high speed (more than 90 mm/s or even less)
- Because P905 has heavy X and even heavier Y mass you should consider lower jerk values compared to other printers
- Turning off linear advance/jerk could let you print faster but you should lower print acceleration to 200 (as it was in manufacturer config)

There are some comments in the code that you can find by "P905H" keyword.
Loading