From ae54ba27adf436a802077c95124ab3a6f174d86b Mon Sep 17 00:00:00 2001 From: Sophist <3001893+Sophist-UK@users.noreply.github.com> Date: Sun, 3 Mar 2024 18:37:41 +0000 Subject: [PATCH] Configuration tweaks --- Marlin/Configuration.h | 22 ++++++++++++++-------- Marlin/Configuration_adv.h | 16 ++++++++-------- README.md | 34 +++++++++++++++++++++++++--------- 3 files changed, 47 insertions(+), 25 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index cf0e14f1cad3..71f730ff1231 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1809,17 +1809,19 @@ * | [-] | * O-- FRONT --+ */ +#define NOZZLE_TO_PROBE_OFFSET_X 0 #if ENABLED(DE200_HEAD_STD) - #define NOZZLE_TO_PROBE_OFFSET { 0, 21, 0 } + #define NOZZLE_TO_PROBE_OFFSET_Y 21 #elif ENABLED(DE200_HEAD_STD_BLTOUCH) - #define NOZZLE_TO_PROBE_OFFSET { 0, -21, 0 } + #define NOZZLE_TO_PROBE_OFFSET_Y -21 #elif ENABLED(DE200_HEAD_Z122) - #define NOZZLE_TO_PROBE_OFFSET { 0, -57, 0 } + #define NOZZLE_TO_PROBE_OFFSET_Y -57 #elif ENABLED(DE200_HEAD_Z122_BLTOUCH) - #define NOZZLE_TO_PROBE_OFFSET { 0, -57, 0 } + #define NOZZLE_TO_PROBE_OFFSET_Y -57 #else #error "DE200_HEAD unknown" #endif +#define NOZZLE_TO_PROBE_OFFSET { NOZZLE_TO_PROBE_OFFSET_X, NOZZLE_TO_PROBE_OFFSET_Y, 0 } // 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. @@ -1896,16 +1898,20 @@ * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. */ -#define Z_CLEARANCE_DEPLOY_PROBE 10 // (mm) Z Clearance for Deploy/Stow +#if ENABLED(DE200_HEAD_BLTOUCH_ANY) + #define Z_CLEARANCE_DEPLOY_PROBE 10 // (mm) Z Clearance for Deploy/Stow +#else + #define Z_CLEARANCE_DEPLOY_PROBE 5 // (mm) Z Clearance for Deploy/Stow +#endif #define Z_CLEARANCE_BETWEEN_PROBES 5 // (mm) Z Clearance between probe points -#define Z_CLEARANCE_MULTI_PROBE 2 // (mm) Z Clearance between multiple probes +#define Z_CLEARANCE_MULTI_PROBE 1 // (mm) Z Clearance between multiple probes //#define Z_AFTER_PROBING 5 // (mm) Z position after probing is done #define Z_PROBE_LOW_POINT -2 // (mm) Farthest distance below the trigger-point to go before stopping // For M851 give a range for adjusting the Z probe offset -#define Z_PROBE_OFFSET_RANGE_MIN -20 -#define Z_PROBE_OFFSET_RANGE_MAX 20 +#define Z_PROBE_OFFSET_RANGE_MIN -10 +#define Z_PROBE_OFFSET_RANGE_MAX 0 // Enable the M48 repeatability test to test probe accuracy #define Z_MIN_PROBE_REPEATABILITY_TEST diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 14d34c8a0235..15e60bbd258c 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -1396,7 +1396,7 @@ //#define PROBE_OFFSET_WIZARD_START_Z -4.0 // Set a convenient position to do the calibration (probing point and nozzle/bed-distance) - //#define PROBE_OFFSET_WIZARD_XY_POS { X_CENTER, Y_CENTER } + #define PROBE_OFFSET_WIZARD_XY_POS { (X_CENTER - NOZZLE_TO_PROBE_OFFSET_X), (Y_CENTER - NOZZLE_TO_PROBE_OFFSET_Y } #endif #endif @@ -1442,7 +1442,7 @@ #if EITHER(HAS_DISPLAY, DWIN_LCD_PROUI) // The timeout to return to the status screen from sub-menus - #define LCD_TIMEOUT_TO_STATUS 30000 // (ms) - Dagoma default 10s, Marlin default 15s + #define LCD_TIMEOUT_TO_STATUS 20000 // (ms) - Dagoma default 10s, Marlin default 15s #if ENABLED(SHOW_BOOTSCREEN) #define BOOTSCREEN_TIMEOUT 1000 // (ms) Total Duration to display the boot screen(s) @@ -1652,11 +1652,11 @@ // LCD's font must contain the characters. Check your selected LCD language. //#define UTF_FILENAME_SUPPORT - //#define LONG_FILENAME_HOST_SUPPORT // Get the long filename of a file/folder with 'M33 ' and list long filenames with 'M20 L' - //#define LONG_FILENAME_WRITE_SUPPORT // Create / delete files with long filenames via M28, M30, and Binary Transfer Protocol - //#define M20_TIMESTAMP_SUPPORT // Include timestamps by adding the 'T' flag to M20 commands + #define LONG_FILENAME_HOST_SUPPORT // Get the long filename of a file/folder with 'M33 ' and list long filenames with 'M20 L' + #define LONG_FILENAME_WRITE_SUPPORT // Create / delete files with long filenames via M28, M30, and Binary Transfer Protocol + #define M20_TIMESTAMP_SUPPORT // Include timestamps by adding the 'T' flag to M20 commands - //#define SCROLL_LONG_FILENAMES // Scroll long filenames in the SD card menu + #define SCROLL_LONG_FILENAMES // Scroll long filenames in the SD card menu //#define SD_ABORT_NO_COOLDOWN // Leave the heaters on after Stop Print (not recommended!) @@ -2094,8 +2094,8 @@ //#define BABYSTEP_XY // Also enable X/Y Babystepping. Not supported on DELTA! #define BABYSTEP_INVERT_Z false // Change if Z babysteps should go the other way //#define BABYSTEP_MILLIMETER_UNITS // Specify BABYSTEP_MULTIPLICATOR_(XY|Z) in mm instead of micro-steps - #define BABYSTEP_MULTIPLICATOR_Z 1 // (steps or mm) Steps or millimeter distance for each Z babystep - #define BABYSTEP_MULTIPLICATOR_XY 1 // (steps or mm) Steps or millimeter distance for each XY babystep + #define BABYSTEP_MULTIPLICATOR_Z 10 // (steps or mm) Steps or millimeter distance for each Z babystep + #define BABYSTEP_MULTIPLICATOR_XY 10 // (steps or mm) Steps or millimeter distance for each XY babystep #define DOUBLECLICK_FOR_Z_BABYSTEPPING // Double-click on the Status Screen for Z Babystepping. #if ENABLED(DOUBLECLICK_FOR_Z_BABYSTEPPING) diff --git a/README.md b/README.md index 3fa1bf860f4e..8ca4c942553a 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,13 @@ This repo is a fork of the Marlin repo configured specifically for various versions of the Dagoma DiscoEasy200 3D Printer. +This is based on Marlin v2.1.2.2 which is a lot more developed than the Dagoma stock firmware +that was based on a beta version of Marlin v1.1 with a lot of Dagoma bespoke development +for functionality that was not available in Marlin at the time but now is. + +Consequently you should now be able to achieve a higher quality of printing +and benefit from significantly more advanced functionality. + The intention is to support all Dagoma versions of the DiscoEasy200 including: * Screen / No screen (Dagoma screen is assumed - other screens may be supported in the future) @@ -15,9 +22,15 @@ The intention is to support all Dagoma versions of the DiscoEasy200 including: The configuration settings for these options have been taken directly from the Dagoma soure code and should work. -All these standard Dagoma options are built automatically based on common configuration settings, -so all functionality tested on the author's stock+LCD+White Thermistor DE200 should work fine -on these other variants. +At present only the stock D200 + LCD + White Thermistor has been tested, +however all these standard Dagoma options are built automatically +based on common configuration settings, +so all functionality tested on the author's stock+LCD+White +should work fine on these other variants and, +until someone else has tested the different options +and they are verified here, +you do need to run some tests when you first load +this firmware build onto your DE200. Every combination of the above are compiled automatically for each formal release. @@ -30,11 +43,11 @@ In addition, several selected community enhancements are also supported as optio The configuration settings for these options have been taken from various Thingiverse things and Github repos -that purport to support these modifications, -however none of these configurations have been tested either. +that have previously been built to support these modifications, +however none of these configurations have yet been tested either. -Some combinations of these options with Standard builds are compiled for the release, -but a firmware build every single combination of options can be manually initiated and +Some combinations of these options with Standard builds are compiled automatically for each release, +but an individual build for a single combination of any of these options can be manually initiated and built automatically using the same Github Actions workflow. ### Documentation @@ -43,6 +56,10 @@ There is a [wiki](https://github.com/Marlin-DE200/Marlin-DiscoEasy200/wiki) which already gives a lot more detail about these builds, with an intention to extend this further. +This wiki also gives some guidance on how to test out the firmware for your own variant. +If you want help with testing the build for your variant, +please raise a Github issue and the author will do his best to support you. + ### Open Source The source code is open, and you are welcome to copy this for your own use - @@ -65,8 +82,7 @@ I have comprehensively tested the Stock+LCD+White-Thermistor variant on my own DE200 and use it in production, and all other variants are minor variations of the standard configuration. -However, in the end most versions are untested and, -whilst the author has made reasonable efforts to configure them correctly, +However, whilst the author has made reasonable efforts to configure them correctly, ***you load these version onto your printer and use them at your own risk***. The author will provide support to the best of his ability,