From cf544f43cdc7c183cdd9b3531cb1649b109465eb Mon Sep 17 00:00:00 2001 From: Bassam Husain Date: Wed, 22 Nov 2023 21:04:08 -0500 Subject: [PATCH 01/11] Update klipper.bin. --- README.md | 4 ++++ images/make-menuconfig.png | Bin 0 -> 74070 bytes misc/klipper-v0.11.0-148-g52f4e20c.bin | Bin 24244 -> 0 bytes misc/klipper-v0.12.0-10-gea2f6bc0.bin | Bin 0 -> 26092 bytes 4 files changed, 4 insertions(+) create mode 100644 images/make-menuconfig.png delete mode 100755 misc/klipper-v0.11.0-148-g52f4e20c.bin create mode 100644 misc/klipper-v0.12.0-10-gea2f6bc0.bin diff --git a/README.md b/README.md index 9690417..634dac7 100644 --- a/README.md +++ b/README.md @@ -343,6 +343,10 @@ Some tips: - Pay close attention throughout the run, so that you can click ${\small{\textcolor{red}{\texttt{EMERGENCY STOP}}}}$ at a moment's notice. - This macro will simply help you determine the maximum speed your printhead and bed can reliably move at, not necessarily print at. The bottleneck for my SV06, for example, is the 15mm/s^2 that the hotend maxes out at (well under 200mm/s actual print speed). +### How do I compile my own firmware? + +Please see [this discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions/111). + ## Useful Resources - [Everything Sovol SV06](https://github.com/bassamanator/everything-sovol-sv06) diff --git a/images/make-menuconfig.png b/images/make-menuconfig.png new file mode 100644 index 0000000000000000000000000000000000000000..644263629294cc15c8ef5815c1f935b4a2610d38 GIT binary patch literal 74070 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 uyd);t!ZT?bj~} Date: Thu, 23 Nov 2023 01:19:26 -0500 Subject: [PATCH 02/11] Update issue templates --- .github/ISSUE_TEMPLATE/bug_report.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index e6411c7..631bb83 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -36,5 +36,14 @@ If applicable, add screenshots to help explain your problem. **Is your local copy of this configuration up to date?** - This configuration changes all the time, when did you install it? Are you sure you're running the latest version? +**What slicer are you using?** +- PrusaSlicer, SuperSlicer, etc. + +**Are you using the config bundles from this repo?** +- Yes/No. + +**Did you [Adjust your slicer](https://github.com/bassamanator/Sovol-SV06-firmware#adjust-your-slicer)? +- Yes/No + **Additional context** Add any other context about the problem here. From 189a612e33b6e668b3a82dae0f40e9f31e703c90 Mon Sep 17 00:00:00 2001 From: Bassam Husain Date: Thu, 23 Nov 2023 01:32:40 -0500 Subject: [PATCH 03/11] Adjust bug_report. --- .github/ISSUE_TEMPLATE/bug_report.md | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 631bb83..20b225a 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -12,6 +12,7 @@ A clear and concise description of what the bug is. **To Reproduce** Steps to reproduce the behavior: + 1. Go to '...' 2. Click on '....' 3. Scroll down to '....' @@ -24,26 +25,38 @@ A clear and concise description of what you expected to happen. If applicable, add screenshots to help explain your problem. **What printer are you using?** + - SV06, SV06 Plus, etc. **What kind of device are you using to host Klipper?** - - OS: [e.g. old laptop, PC, Raspberry Pi] - - Version: [] + +- OS: [e.g. old laptop, PC, Raspberry Pi] +- Version: [] **How did you install Klipper?** - - Manual install, KIAUH, MainsailOS, FluiddPi, etc. + +- Manual install, KIAUH, MainsailOS, FluiddPi, etc. **Is your local copy of this configuration up to date?** + - This configuration changes all the time, when did you install it? Are you sure you're running the latest version? **What slicer are you using?** -- PrusaSlicer, SuperSlicer, etc. + +- [ ] PrusaSlicer +- [ ] SuperSlicer +- [ ] Cura +- [ ] OrcaSlicer **Are you using the config bundles from this repo?** -- Yes/No. -**Did you [Adjust your slicer](https://github.com/bassamanator/Sovol-SV06-firmware#adjust-your-slicer)? -- Yes/No +- [ ] Yes +- [ ] No + +**Did you [Adjust your slicer](https://github.com/bassamanator/Sovol-SV06-firmware#adjust-your-slicer)**? + +- [ ] Yes +- [ ] No **Additional context** Add any other context about the problem here. From 8347290f9fa141bcb2a0d77bea71f92f606d3c00 Mon Sep 17 00:00:00 2001 From: Bassam Husain Date: Thu, 23 Nov 2023 04:36:15 -0500 Subject: [PATCH 04/11] Adjust kamp settings: include line_purge; adjust printer.cfg accordingly; adjust readme.md, slicer and kamp sections. --- README.md | 19 +++++++++++++------ cfgs/kamp/KAMP_Settings.cfg | 2 +- printer.cfg | 2 +- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 634dac7..629c27b 100644 --- a/README.md +++ b/README.md @@ -200,10 +200,15 @@ But first, adjust your slicer. You need to adjust the start and end gcode in your slicer. The relevant macros are `PRINT_START` and `PRINT_END`. Find instructions [here](https://ellis3dp.com/Print-Tuning-Guide/articles/passing_slicer_variables.html#slicer-start-g-code). -If you would like to print a purge line before your print starts, at the end of your start gcode, on a new line add `PURGE_LINE`. +### Line Purge + +If you would like to print a purge line before your print starts, at the end of your start gcode, on a new line, add one of the following: + +- `PURGE_LINE`; prints a standard purge line. +- `LINE_PURGE`; prints KAMP's purge line. ⚠️ Do not attempt to use without reading [this section](#how-do-i-enable-kamp-klipper-adaptive-meshing--purging). ```yaml -# 🗒️ This is just an example +# 🗒️ This is just an example Start G-Code PRINT_START ... PURGE_LINE ``` @@ -314,13 +319,15 @@ The printhead is now parked front center waiting for you to insert filament. You ### How do I enable KAMP (Klipper Adaptive Meshing & Purging)? -Although this repo contains all the code from the KAMP repository, only the `mesh` functionality of KAMP has been configured and tested. To enable other functionality, adjust `/cfgs/kamp/KAMP_Settings.cfg`. +⚠️ No KAMP functionality can be used on low-powered devices such as the Raspberry Pi Zero. -The [Label objects setting](https://docs.mainsail.xyz/overview/features/exclude-objects#enable-the-label-objects-setting-in-your-slicer) in your slicer must be enabled for KAMP to work. +⚠️ If KAMP is disabled, and there is no `default` mesh, `PRINT_START` will crash. -⚠️ If KAMP is disabled, and you don't have a `default` mesh stored in your `printer.cfg`, `PRINT_START` will crash. +🗒️ The [Label objects setting](https://docs.mainsail.xyz/overview/features/exclude-objects#enable-the-label-objects-setting-in-your-slicer) in your slicer must be enabled for KAMP to work. -⚠️ KAMP cannot be used with low-powered devices such as the Raspberry Pi Zero. +🗒️ `LINE_PURGE` is useable (on appropriate devices) even if KAMP is disabled. + +This repo contains all the code from the KAMP repository, however, only the `adaptive meshing` and `LINE_PURGE` functionality of KAMP has been configured and tested for use. To enable other functionality, adjust `/cfgs/kamp/KAMP_Settings.cfg`. Adjust behaviour according to your needs. diff --git a/cfgs/kamp/KAMP_Settings.cfg b/cfgs/kamp/KAMP_Settings.cfg index 401b91b..40b389c 100644 --- a/cfgs/kamp/KAMP_Settings.cfg +++ b/cfgs/kamp/KAMP_Settings.cfg @@ -2,7 +2,7 @@ # NOTE bassamanator: uncomment the functionality that you want to use from KAMP [include ./Adaptive_Meshing.cfg] # Include to enable adaptive meshing configuration. -# [include ./Line_Purge.cfg] # Include to enable adaptive line purging configuration. +[include ./Line_Purge.cfg] # Include to enable adaptive line purging configuration. # [include ./Voron_Purge.cfg] # Include to enable adaptive Voron logo purging configuration. # [include ./Smart_Park.cfg] # Include to enable the Smart Park function, which parks the printhead near the print area for final heating. diff --git a/printer.cfg b/printer.cfg index bbfe350..8a51bbb 100644 --- a/printer.cfg +++ b/printer.cfg @@ -109,7 +109,7 @@ pid_ki: 1.326 min_temp: 0 max_temp: 300 max_extrude_only_distance: 150.0 -# max_extrude_cross_section: 5 # NOTE Uncomment this line if you intend on using KAMP pruge +max_extrude_cross_section: 5 # NOTE Needed for KAMP purge [tmc2209 extruder] uart_pin: PC14 From 6b69ba9479f005219c8f018155c9aa884ff20cc1 Mon Sep 17 00:00:00 2001 From: Bassam Husain Date: Thu, 23 Nov 2023 14:06:09 -0500 Subject: [PATCH 05/11] Adjust config bundles. --- misc/PrusaSlicer_config_bundle-SV06-Both.ini | 6 +++--- misc/SuperSlicer_config_bundle-SV06-Both.ini | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/misc/PrusaSlicer_config_bundle-SV06-Both.ini b/misc/PrusaSlicer_config_bundle-SV06-Both.ini index 00e687a..ce24ab9 100644 --- a/misc/PrusaSlicer_config_bundle-SV06-Both.ini +++ b/misc/PrusaSlicer_config_bundle-SV06-Both.ini @@ -1,4 +1,4 @@ -# generated by PrusaSlicer 2.6.1+linux-x64-GTK3 on 2023-11-20 at 02:32:36 UTC +# generated by PrusaSlicer 2.6.1+linux-x64-GTK3 on 2023-11-23 at 18:53:35 UTC [print:0.20mm QUALITY SV06 Ellis] avoid_crossing_curled_overhangs = 0 @@ -2610,7 +2610,7 @@ retract_restart_extra_toolchange = 0 retract_speed = 40 silent_mode = 0 single_extruder_multi_material = 0 -start_gcode = M104 S0 ; Stops PS/SS from sending temp waits separately\r\nM140 S0\nM117\r\nPRINT_START BED=[first_layer_bed_temperature] HOTEND=[first_layer_temperature[initial_extruder]]\r\nPURGE_LINE\n\n;; If you are passing variables to PRINT_START, comment out above line and uncomment the last 3 lines instead. (I already did this)\n;; Guide: https://github.com/AndrewEllis93/Print-Tuning-Guide/blob/main/articles/passing_slicer_variables.md\n;; Make sure the variable names match (for example if you use "EXTRUDER" instead of "HOTEND") +start_gcode = M104 S0 ; Stops PS/SS from sending temp waits separately\r\nM140 S0\nM117\r\nPRINT_START BED=[first_layer_bed_temperature] HOTEND=[first_layer_temperature[initial_extruder]]\r\nPURGE_LINE\n\n;; Guide: https://ellis3dp.com/Print-Tuning-Guide/articles/passing_slicer_variables.html#slicer-start-g-code template_custom_gcode = thumbnails = 32x32,400x300 thumbnails_format = PNG @@ -2691,7 +2691,7 @@ retract_restart_extra_toolchange = 0 retract_speed = 40 silent_mode = 0 single_extruder_multi_material = 0 -start_gcode = M104 S0 ; Stops PS/SS from sending temp waits separately\r\nM140 S0\nM117\r\nPRINT_START BED=[first_layer_bed_temperature] HOTEND=[first_layer_temperature[initial_extruder]]\r\nPURGE_LINE\n\n;; If you are passing variables to PRINT_START, comment out above line and uncomment the last 3 lines instead. (I already did this)\n;; Guide: https://github.com/AndrewEllis93/Print-Tuning-Guide/blob/main/articles/passing_slicer_variables.md\n;; Make sure the variable names match (for example if you use "EXTRUDER" instead of "HOTEND") +start_gcode = M104 S0 ; Stops PS/SS from sending temp waits separately\r\nM140 S0\nM117\r\nPRINT_START BED=[first_layer_bed_temperature] HOTEND=[first_layer_temperature[initial_extruder]]\r\nPURGE_LINE\n\n;; Guide: https://ellis3dp.com/Print-Tuning-Guide/articles/passing_slicer_variables.html#slicer-start-g-code template_custom_gcode = thumbnails = 32x32,400x300 thumbnails_format = PNG diff --git a/misc/SuperSlicer_config_bundle-SV06-Both.ini b/misc/SuperSlicer_config_bundle-SV06-Both.ini index 717e60a..c31c8a2 100644 --- a/misc/SuperSlicer_config_bundle-SV06-Both.ini +++ b/misc/SuperSlicer_config_bundle-SV06-Both.ini @@ -1,4 +1,4 @@ -# generated by SuperSlicer 2.4 on 2023-08-23 at 23:28:35 UTC +# generated by SuperSlicer 2.4 on 2023-11-23 at 19:03:00 UTC [print:Ellis_Decorative_45_Degree_15mm3] allow_empty_layers = 0 @@ -3707,7 +3707,7 @@ retract_speed = 40 seam_gap = 15% silent_mode = 0 single_extruder_multi_material = 0 -start_gcode = M104 S0 ; Stops PS/SS from sending temp waits separately\r\nM140 S0\nM117\r\nPRINT_START BED=[first_layer_bed_temperature] HOTEND={first_layer_temperature[initial_extruder]+extruder_temperature_offset[initial_extruder]} CHAMBER=[chamber_temperature]\r\nPURGE_LINE\n\n;; If you are passing variables to PRINT_START, comment out above line and uncomment the last 3 lines instead. (I already did this)\n;; Guide: https://github.com/AndrewEllis93/Print-Tuning-Guide/blob/main/articles/passing_slicer_variables.md\n;; Make sure the variable names match (for example if you use "EXTRUDER" instead of "HOTEND")\n +start_gcode = M104 S0 ; Stops PS/SS from sending temp waits separately\r\nM140 S0\nM117\r\nPRINT_START BED=[first_layer_bed_temperature] HOTEND={first_layer_temperature[initial_extruder]+extruder_temperature_offset[initial_extruder]} CHAMBER=[chamber_temperature]\r\nPURGE_LINE\n\n;; Guide: https://ellis3dp.com/Print-Tuning-Guide/articles/passing_slicer_variables.html#slicer-start-g-code start_gcode_manual = 0 template_custom_gcode = thumbnails = 32x32,400x300 @@ -3832,7 +3832,7 @@ retract_speed = 40 seam_gap = 15% silent_mode = 0 single_extruder_multi_material = 0 -start_gcode = M104 S0 ; Stops PS/SS from sending temp waits separately\r\nM140 S0\nM117\r\nPRINT_START BED=[first_layer_bed_temperature] HOTEND={first_layer_temperature[initial_extruder]+extruder_temperature_offset[initial_extruder]} CHAMBER=[chamber_temperature]\r\nPURGE_LINE\n\n;; If you are passing variables to PRINT_START, comment out above line and uncomment the last 3 lines instead. (I already did this)\n;; Guide: https://github.com/AndrewEllis93/Print-Tuning-Guide/blob/main/articles/passing_slicer_variables.md\n;; Make sure the variable names match (for example if you use "EXTRUDER" instead of "HOTEND")\n +start_gcode = M104 S0 ; Stops PS/SS from sending temp waits separately\r\nM140 S0\nM117\r\nPRINT_START BED=[first_layer_bed_temperature] HOTEND={first_layer_temperature[initial_extruder]+extruder_temperature_offset[initial_extruder]} CHAMBER=[chamber_temperature]\r\nPURGE_LINE\n\n;; Guide: https://ellis3dp.com/Print-Tuning-Guide/articles/passing_slicer_variables.html#slicer-start-g-code start_gcode_manual = 0 template_custom_gcode = thumbnails = 32x32,400x300 From e4a2ce3480ca2cf658ebf4cae5e06f33057237de Mon Sep 17 00:00:00 2001 From: Bassam Husain Date: Fri, 24 Nov 2023 17:09:54 -0500 Subject: [PATCH 06/11] Create compile howto. --- misc/compile-how-to.md | 43 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 misc/compile-how-to.md diff --git a/misc/compile-how-to.md b/misc/compile-how-to.md new file mode 100644 index 0000000..33bdf54 --- /dev/null +++ b/misc/compile-how-to.md @@ -0,0 +1,43 @@ +${\small{\textcolor{green}{\texttt{2 minute read}}}}$ + +#### Do I need to re-flash the motherboard? + +You will _almost never_ need to re-flash `klipper.bin`. When this is needed, your dashboard will explicitly tell you that you need to re-flash. + +#### Where does Klipper live? + +1. On the motherboard. +2. On the host device (Raspberry Pi, etc.). + +🗒️ These 2 versions of klipper can rightly differ. + +#### Should I update Klipper, moonraker, etc.? + +I always update everything on the host device via the dashboard. I don't want to miss out on improvements, especially those that improve safety. What this means is that on some occasions, there will be breaking changes: you will need to change a few things in your config **before you can print**. I would suggest that if you absolutely have to get something printed immediately and there's an update, perhaps wait till after the print completes to do the update. + +Others will argue that 'if it ain't broke, don't fix it'. + +You have to decide what camp you want to be apart off. + +#### How-To + +##### Update Klipper repo first + +It's always best to update the Klipper repository that lives on the host before compiling. This ensures that your `klipper.bin` will be as 'fresh' as possible. + +- In `Fluidd`, you can do this from `Settings` > `Software Updates`. +- In `Mainsail`, you can do this from `Machine` > `Update Manager`. + +##### Compile `klipper.bin` + +🗒️ The `compilation settings` you see in the image below apply only the the `SV06/Plus` boards, but the steps for compilation apply to any board. + +1. `ssh` into the Klipper host (i.e., RPi, OrangePi, etc.). +2. `cd ~/klipper` +3. `make menuconfig` +4. Set things up to look as follows: + ![make-menuconfig](https://github.com/bassamanator/Sovol-SV06-firmware/assets/61985779/22298d47-2604-4231-ad10-7d6793be7904) +5. `make clean` + - Clears `~/klipper/out/` +6. `make` + - Compiles `klipper.bin` and puts it in `~/klipper/out/` From 18552711c5e71db50d2445fed0de0bbc12c17db9 Mon Sep 17 00:00:00 2001 From: Bassam Husain Date: Fri, 24 Nov 2023 18:56:57 -0500 Subject: [PATCH 07/11] Adjust printer.cfg: axis_twist_compensation section. --- printer.cfg | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/printer.cfg b/printer.cfg index 8a51bbb..4096966 100644 --- a/printer.cfg +++ b/printer.cfg @@ -164,6 +164,11 @@ fade_start: 1 fade_end: 10 fade_target: 0 +[axis_twist_compensation] +calibrate_start_x: 27 +calibrate_end_x: 195 +calibrate_y: 115 + ##################################################################### # Fans ##################################################################### From 4600107faf2458204e9933f4eee505c3ce8b7c73 Mon Sep 17 00:00:00 2001 From: Bassam Husain Date: Sun, 26 Nov 2023 04:19:43 -0500 Subject: [PATCH 08/11] Adjust readme: add back to top to all sections. --- README.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/README.md b/README.md index 629c27b..ee2ae92 100644 --- a/README.md +++ b/README.md @@ -50,6 +50,8 @@ I am creating these files for my personal use and cannot be held responsible for - `TEST_SPEED` macro. Find instructions [here](#how-do-i-use-the-test_speed-macro). - Klipper Adaptive Meshing & Purging (KAMP) integrated. Read about it [here](#how-do-i-enable-kamp-klipper-adaptive-meshing--purging). +[⏮️ Back to top](#outline) + ## Stay Up-to-Date ⭐ ${\normalsize{\textcolor{goldenrod}{\texttt{Star this project}}}}$ @@ -58,10 +60,14 @@ Watch for releases and updates. github star +[⏮️ Back to top](#outline) + ## Preface Although I've made switching over to Klipper as easy as is possible, it can still be a challenge for some, especially considering that most of you have likely never used GNU+Linux. Save yourself the frustration, and _fully read all the documentation on this page_. Also note that Klipper is not a _must_, and is not for everyone. You can stick with Marlin, and have a fine 3D printing experience. +[⏮️ Back to top](#outline) + ## Before You Begin - This entire page is a **13 minute read**. Save yourself _hours of troubleshooting_ and read this documentation fully. @@ -77,6 +83,8 @@ Although I've made switching over to Klipper as easy as is possible, it can stil - Your question has probably been answered already, but if it hasn't, please post in the [Discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions) section. - I would recommend searching for the word `NOTE` in this repository. There are roughly half a dozen short points amongst the various files that you should be aware of if you're using this configuration. +[⏮️ Back to top](#outline) + ## Klipper Installation ### Flash Firmware @@ -109,6 +117,8 @@ Please note: ⏲️ At this point, it's not possible to tell with certainty whether your flash was successful, continue on with the guide. +[⏮️ Back to top](#outline) + ### Download OSS Klipper Configuration You can choose _either_ of the 2 following methods. @@ -128,6 +138,8 @@ You can choose _either_ of the 2 following methods. 3. The parent folder in the `ZIP` is `Sovol-SV06-firmware-master`. This is relevant in the next step. 4. Extract **only** the _contents_ of the parent folder into `~/printer_data/config`. +[⏮️ Back to top](#outline) + ## Initial Steps ### Adjust Configuration with MCU Path @@ -153,6 +165,8 @@ You can choose _either_ of the 2 following methods. If the Klipper flash that you did earlier was successful, and you've done everything else correctly, you should see no errors or warnings in the Mainsail/Fluidd dashboard. **Klipper has successfully been installed on your printer!** +[⏮️ Back to top](#outline) + ### Configure Your Printer ❗☠️ **Your finger should be on the power switch for most of these steps** ☠️❗ @@ -194,6 +208,8 @@ You will be pasting/typing these commands into the Mainsail/Fluidd console. But first, adjust your slicer. +[⏮️ Back to top](#outline) + ## Adjust Your Slicer 💡 If you are using the config bundles found on this repo, you can skip this step. @@ -213,12 +229,16 @@ PRINT_START ... PURGE_LINE ``` +[⏮️ Back to top](#outline) + ## Support Me Please ⭐ star this repository! If you found my work useful, consider buying me a [Ko-fi](https://ko-fi.com/bassamanator). +[⏮️ Back to top](#outline) + ## Directory Structure This repository contains many files and folders. Some are _necessary_ for this Klipper configuration to work, others are not. @@ -244,6 +264,8 @@ This repository contains many files and folders. Some are _necessary_ for this K └── .vscode/ ❌ ``` +[⏮️ Back to top](#outline) + ## FAQ ### How do I import a configuration bundle into SuperSlicer/PrusaSlicer? @@ -354,6 +376,8 @@ Some tips: Please see [this discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions/111). +[⏮️ Back to top](#outline) + ## Useful Resources - [Everything Sovol SV06](https://github.com/bassamanator/everything-sovol-sv06) @@ -361,12 +385,16 @@ Please see [this discussion](https://github.com/bassamanator/Sovol-SV06-firmware - ⭐⭐⭐⭐⭐ [Ellis' Print Tuning Guide](https://ellis3dp.com/Print-Tuning-Guide) - [Simplify3D Print Quality Troubleshooting Guide](https://www.simplify3d.com/resources/print-quality-troubleshooting/) +[⏮️ Back to top](#outline) + ## Sovol Official Links - [SV06 Marlin Source Code](https://github.com/Sovol3d/Sv06-Source-Code) - [SV06 Models](https://github.com/Sovol3d/SV06-Fully-Open-Source) - [SV06 Plus Marlin Source Code and Models](https://github.com/Sovol3d/SV06-PLUS) +[⏮️ Back to top](#outline) + ## Sources - [https://www.klipper3d.org](https://www.klipper3d.org) @@ -379,3 +407,5 @@ Please see [this discussion](https://github.com/bassamanator/Sovol-SV06-firmware - [PrusaSlicer Print Settings](https://github.com/mjonuschat/PrusaSlicer-Profiles) [![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/H2H0HIHTH) + +[⏮️ Back to top](#outline) From 53a45ea14c174076e04af2cd928f13bd34deb179 Mon Sep 17 00:00:00 2001 From: Bassam Husain Date: Sun, 26 Nov 2023 23:28:35 -0500 Subject: [PATCH 09/11] Adjust back icon, create update-hot-to.md. --- README.md | 30 +++++++++--------- misc/update-hot-to.md | 73 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 88 insertions(+), 15 deletions(-) create mode 100644 misc/update-hot-to.md diff --git a/README.md b/README.md index ee2ae92..7f77efc 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ I am creating these files for my personal use and cannot be held responsible for - `TEST_SPEED` macro. Find instructions [here](#how-do-i-use-the-test_speed-macro). - Klipper Adaptive Meshing & Purging (KAMP) integrated. Read about it [here](#how-do-i-enable-kamp-klipper-adaptive-meshing--purging). -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## Stay Up-to-Date @@ -60,13 +60,13 @@ Watch for releases and updates. github star -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## Preface Although I've made switching over to Klipper as easy as is possible, it can still be a challenge for some, especially considering that most of you have likely never used GNU+Linux. Save yourself the frustration, and _fully read all the documentation on this page_. Also note that Klipper is not a _must_, and is not for everyone. You can stick with Marlin, and have a fine 3D printing experience. -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## Before You Begin @@ -83,7 +83,7 @@ Although I've made switching over to Klipper as easy as is possible, it can stil - Your question has probably been answered already, but if it hasn't, please post in the [Discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions) section. - I would recommend searching for the word `NOTE` in this repository. There are roughly half a dozen short points amongst the various files that you should be aware of if you're using this configuration. -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## Klipper Installation @@ -117,7 +117,7 @@ Please note: ⏲️ At this point, it's not possible to tell with certainty whether your flash was successful, continue on with the guide. -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ### Download OSS Klipper Configuration @@ -138,7 +138,7 @@ You can choose _either_ of the 2 following methods. 3. The parent folder in the `ZIP` is `Sovol-SV06-firmware-master`. This is relevant in the next step. 4. Extract **only** the _contents_ of the parent folder into `~/printer_data/config`. -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## Initial Steps @@ -165,7 +165,7 @@ You can choose _either_ of the 2 following methods. If the Klipper flash that you did earlier was successful, and you've done everything else correctly, you should see no errors or warnings in the Mainsail/Fluidd dashboard. **Klipper has successfully been installed on your printer!** -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ### Configure Your Printer @@ -208,7 +208,7 @@ You will be pasting/typing these commands into the Mainsail/Fluidd console. But first, adjust your slicer. -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## Adjust Your Slicer @@ -229,7 +229,7 @@ PRINT_START ... PURGE_LINE ``` -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## Support Me @@ -237,7 +237,7 @@ Please ⭐ star this repository! If you found my work useful, consider buying me a [Ko-fi](https://ko-fi.com/bassamanator). -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## Directory Structure @@ -264,7 +264,7 @@ This repository contains many files and folders. Some are _necessary_ for this K └── .vscode/ ❌ ``` -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## FAQ @@ -376,7 +376,7 @@ Some tips: Please see [this discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions/111). -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## Useful Resources @@ -385,7 +385,7 @@ Please see [this discussion](https://github.com/bassamanator/Sovol-SV06-firmware - ⭐⭐⭐⭐⭐ [Ellis' Print Tuning Guide](https://ellis3dp.com/Print-Tuning-Guide) - [Simplify3D Print Quality Troubleshooting Guide](https://www.simplify3d.com/resources/print-quality-troubleshooting/) -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## Sovol Official Links @@ -393,7 +393,7 @@ Please see [this discussion](https://github.com/bassamanator/Sovol-SV06-firmware - [SV06 Models](https://github.com/Sovol3d/SV06-Fully-Open-Source) - [SV06 Plus Marlin Source Code and Models](https://github.com/Sovol3d/SV06-PLUS) -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) ## Sources @@ -408,4 +408,4 @@ Please see [this discussion](https://github.com/bassamanator/Sovol-SV06-firmware [![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/H2H0HIHTH) -[⏮️ Back to top](#outline) +[🔼 Back to top](#outline) diff --git a/misc/update-hot-to.md b/misc/update-hot-to.md new file mode 100644 index 0000000..c296256 --- /dev/null +++ b/misc/update-hot-to.md @@ -0,0 +1,73 @@ +\*\* _Flashing the firmware is not required for any method_ + +## Should You Update? + +I treat this config like software, and like any piece of modern software, it will require periodic updates to fix issues, add features, improve functionality, etc. So, if you want to have the latest and greatest, I recommend you periodically pull the changes from this repo. + +### What Changes Should You Be Concerned With + +The only changes you need to be concerned with relate to the `.cfg` and `.conf` files; all changes to `.md` files (these are markdown files, the text that you see when you visit this repo) can be ignored. + +### Git Users + +If you do a `git diff origin/master --name-only` and it shows you that a `.cfg` file has changed, you might want to pull in those changes (but you don't have to). + +### Non-Git Users + +Unfortunately, there's no simple way for you to ascertain whether there have been changes. I simply recommend that you update your config via the instructions below from time to time. + +## Hot to Update + +There are three methods to accomplish this: + +1. The correct method, using `git`. +2. The mostly acceptable method, without using `git`. +3. The start-from-scratch method. _Recommended for non-git users and those who haven't made many changes to their configuration._ + +### The `git` method. + +⚠️ This method is only intended for those who already know how to use `git`. + +🗒️ In this example, I'm using the `master` branch which applies to SV06 users only. Be sure to use the appropriate branch for your printer. + +🗒️ The assumption is that you didn't change branches after the initial setup, so you are in `master`, and there are many untracked changes. + +1. `ssh` into your Klipper host. +2. `cd ~/printer_data/config` +3. `git checkout -b my-settings` +4. `git add .` +5. `git commit -m "Saving my settings."` +6. `git checkout master` +7. `git pull` +8. `git checkout my-settings` +9. `git merge master --no-ff --no-commit` +10. Deal with comparing and pulling in incoming changes from `master` using your favourite code editor. You can also do this from the command line via `git commit --interactive`, however, only advanced `git` users should attempt this, though it is easy enough. +11. Add all welcomed changes to the staging area, and discard all other changes. +12. `git commit -m "Update with upstream."` + +You should push your branch to your own fork of this repo. + +For any future updates, you can run through the same process again, however, you cannot re-create the `my-settings` branch as you did in `step 3`, because it already exists. Simply omit the `-b` flag in `step 3` next time you update. + +### The mostly acceptable method. + +This method has shortcomings, because it relies on the user's memory, and requires more manual edits. Perfectly functional method, however. + +1. Read all the documentation. +2. Backup your current configuration, essentially everything inside `~/printer_data/config`. +3. Repeat steps in [Download OSS Klipper Configuration](https://github.com/bassamanator/Sovol-SV06-firmware#download-oss-klipper-configuration), and [Adjust Configuration with MCU Path](https://github.com/bassamanator/Sovol-SV06-firmware#adjust-configuration-with-mcu-path). +4. Copy everything from `#*# <---------------------- SAVE_CONFIG ---------------------->` onward and paste into new `printer.cfg`, inclusive. +5. Copy any other changes you might have made into the new configuration. Maybe you had adjusted the size of your printer (`position_max`), or other such changes. + +### The start-from-scratch method. + +1. Delete the folder `~/printer_data/config`. +2. Recreate the folder `~/printer_data/config` via `mkdir ~/printer_data/config`. +3. Start the Klipper installation process starting from `Download OSS Klipper Configuration` in the appropriate branch. + +## Linux Tips + +- In linux, you can delete files via `rm fileName` and directories via `rmdir directoryName`. +- In linux, you can list files and folders via `ls -lah`. + +You are now up-to-date with this repo, and have added your personal settings on top. From 2bafa87c92a545eb647ba1a007e8172c3aa8a971 Mon Sep 17 00:00:00 2001 From: Bassam Husain Date: Mon, 27 Nov 2023 01:20:03 -0500 Subject: [PATCH 10/11] Adjust readme. --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 7f77efc..dfa8771 100644 --- a/README.md +++ b/README.md @@ -54,9 +54,9 @@ I am creating these files for my personal use and cannot be held responsible for ## Stay Up-to-Date -⭐ ${\normalsize{\textcolor{goldenrod}{\texttt{Star this project}}}}$ +${\normalsize{\textcolor{goldenrod}{\texttt{Star ⭐ this project}}}}$ -Watch for releases and updates. +Watch for releases and updates. Please see this [discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions/37). github star @@ -270,11 +270,11 @@ This repository contains many files and folders. Some are _necessary_ for this K ### How do I import a configuration bundle into SuperSlicer/PrusaSlicer? -Please see [this discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions/13). +Please see this [discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions/13). ### How do I print using SuperSlicer? -Please see [this discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions/14). +Please see this [discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions/14). ### When does beeping occur? @@ -374,7 +374,7 @@ Some tips: ### How do I compile my own firmware? -Please see [this discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions/111). +Please see this [discussion](https://github.com/bassamanator/Sovol-SV06-firmware/discussions/111). [🔼 Back to top](#outline) From b2d13a44387d30a0497bbcf65d0620c608948948 Mon Sep 17 00:00:00 2001 From: Bassam Husain Date: Mon, 27 Nov 2023 01:24:38 -0500 Subject: [PATCH 11/11] Add comments to printer.cfg. --- printer.cfg | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/printer.cfg b/printer.cfg index 4096966..3fcf7de 100644 --- a/printer.cfg +++ b/printer.cfg @@ -156,8 +156,8 @@ z_hop_speed: 15 [bed_mesh] speed: 175 -mesh_min: 27, 6 -mesh_max: 222, 203 +mesh_min: 27, 6 # probe as close to origin as functionally possible +mesh_max: 222, 203 # (x.position_max - 1), (y.position_max - abs(y_offset)) probe_count: 5,5 algorithm: bicubic fade_start: 1 @@ -165,8 +165,8 @@ fade_end: 10 fade_target: 0 [axis_twist_compensation] -calibrate_start_x: 27 -calibrate_end_x: 195 +calibrate_start_x: 27 # probe x coor at furthest left ; abs(x_offset) +calibrate_end_x: 195 # probe x coor at furthest right ; (x.position_max - abs(x_offset) - 1) calibrate_y: 115 #####################################################################