Skip to content

Conversation

ziehmon
Copy link
Contributor

@ziehmon ziehmon commented Jul 21, 2025

Description

I have observed collisions on a BambuLab P1S when the print head moves from the load line to the initial coordinate, if the coordinate is on the bottom left side. This happens because the beginning of the load line usually has a larger chunk of filament, and if initial coordinates have a travel path crossing this chunk, the nozzle will scratch it.

Screenshots/Recordings/Graphs

This is the current travel path with an object at the bottom left; the red square marks the collision zone:

grafik

This PR proposes to modify the load line gcode slightly, so that the returning extrusion ends at X(old+5) so there is enough room to pass by any filament chunks on the print bed:

grafik

Tests

I have printed the shown project and was able to reproduce the nozzle collision (in my case, even the print head fell off); using the modified load line gcode, this collision was avoided. For testing/reproducing, I suggest you add a simple object at the bottom left yourself and inspect the travel movements.

Note

This PR currently only changes the gcode for the P1S and the 0.4 nozzle. From my opinion, all core XY machines from Bambu Lab are affected by this (including all nozzles, although 0.2 may have smaller chunks). I wanted to get your opinion on this on a) the approach b) other impact this change may have, before I propose the modification of all gcodes. If you confirm that this proposal is a good solution, I will go ahead.

@ziehmon ziehmon changed the title End load line at X(old+5) top prevent drip collision Prevent collission: end load line at X(old+5) to avoid load line scratching Jul 21, 2025
@ziehmon ziehmon changed the title Prevent collission: end load line at X(old+5) to avoid load line scratching Prevent collision: end load line at X(old+5) to avoid load line scratching Jul 21, 2025
@ziehmon ziehmon changed the title Prevent collision: end load line at X(old+5) to avoid load line scratching Prevent collision: end load line at X(old+5) to avoid nozzle scratching Jul 21, 2025
@ziehmon
Copy link
Contributor Author

ziehmon commented Jul 21, 2025

image

This picture shows said filament chunk and the prevention by making the returning load line shorter.

Copy link
Collaborator

@Noisyfox Noisyfox left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks

@Noisyfox Noisyfox merged commit 7bf79a1 into SoftFever:main Jul 27, 2025
GiacomoGuaresi added a commit to gingeradditive/OrcaSlicer that referenced this pull request Aug 7, 2025
* Add new machines

* profils fixes

* Update VS30ULTRA (0.4 nozzle).json

* accelerations removing

* Fixes

* Acceleration fixes

* Update .gitignore

* EXO/SH profils updates

* Update .gitignore

* Updates VOLUMIC profils

* VOLUMIC profils updates

* VOLUMIC profils update (v0.36)

* Delete Desactive.json

* Create desactive.json

* Add ironing fan speed control (SoftFever#9944)

* Internal bridge fan speed should be applied only if overhang bridge fan control is enabled

* Reduce duplicate code

* Add ironing fan speed control

* Add fuzzy skin painting (SoftFever#9979)

* SPE-2486: Refactor function apply_mm_segmentation() to prepare support for fuzzy skin painting.

(cherry picked from commit 2c06c81)

* SPE-2585: Fix empty layers when multi-material painting and modifiers are used.

(cherry picked from commit 4b3da02ec26d43bfad91897cb34779fb21419e3e)

* Update project structure to match Prusa

* SPE-2486: Add a new gizmo for fuzzy skin painting.

(cherry picked from commit 886faac)

* Fix render

* Remove duplicated painting gizmo `render_triangles` code

* SPE-2486: Extend multi-material segmentation to allow segmentation of any painted faces.

(cherry picked from commit 519f5ee)

---------

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>

* SPE-2486: Implement segmentation of layers based on fuzzy skin painting.

(cherry picked from commit 800b742)

* SPE-2486: Separate fuzzy skin implementation into the separate file.

(cherry picked from commit efd95c1)

* Move more fuzzy code to separate file

* Don't hide fuzzy skin option, so it can be applied to paint on fuzzy

* Fix build

* Add option group for fuzzy skin

* Update icon color

* Fix reset painting

* Update UI style

* Store fuzzy painting in bbs_3mf

* Add missing fuzzy paint code

* SPE-2486: Limit the depth of the painted fuzzy skin regions to make regions cover just external perimeters.

This reduces the possibility of artifacts that could happen during regions merging.

(cherry picked from commit fa2663f)

* Update icons

---------

Co-authored-by: yw4z <ywsyildiz@gmail.com>

* Make the region compatible check a separate function

* Only warn about multi-material if it's truly multi-perimeters

* Improve gizmo UI & tooltips

---------

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
Co-authored-by: yw4z <ywsyildiz@gmail.com>

* Update 3mf key for fuzzy skin painting to match BBS (SoftFever#10169)

* Update OrcaSlicer_pl.po (SoftFever#10186)

* New Fill & Patterns Order (SoftFever#10055)

* New Fill Order

Co-Authored-By: Rodrigo <162915171+RF47@users.noreply.github.com>

* Reorder Wiki

* Support infills grouped

* Update old rectilinear profiles into new ZigZag algorithm.

Co-Authored-By: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>

* Renaming compatibility fix + Rename Wiki

Co-Authored-By: SoftFever <softfeverever@gmail.com>

---------

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>

* Fix ubuntu build - Continous appimagetool (SoftFever#10190)

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>

* Fix build issue caused by renamed fill pattern (SoftFever#10197)

Fix issue caused by renamed fill pattern

* InnovatiQ Vendor Addition (SoftFever#10163)

* Added InnovatiQ Vendor Files

* Cover image corrected

* Corrected Texture Image

* Support Interface Pattern modified

* Fix file name casing

---------

Co-authored-by: MohanS <sibi.mohan@innovatiq.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>

* Replace DEPS_BITS with DEPS_ARCH (SoftFever#10183)

* Replace DEPS_BITS with DEPS_ARCH

* Restore missing DEP_MSVC_GEN

* STREQUAL

* STREQUAL

* Other cmakelists

* webview2 rename

* Disable resonance avoidance in calibration routines + Calibration Reorder (SoftFever#10174)

* Disable resonance avoidance in calibration routines

* Reorder Calibrations

* Moved Tolerance to Handy Models

* Feature: Fuzzy Skin Extrusion Mode (SoftFever#9878)

* Feature: Fuzzy Skin Extrusion Mode

This extension allows you to add new features to the fuzzy skin generator.

* Add auto switch to Arachne mode

* Move dialog to `update_print_fff_config` and update how `is_msg_dlg_already_exist` is used

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>

* Add template metalanguage support for infill rotation template (SoftFever#9996)

* Add some new non-overlapping functions for rotation surfaces/infills

I can't post the entire package of changes yet, but this is just the beginning. These features do not affect the latest changes to the pattern rotation system. They are merely adding new functionality.

* Added relative rotation of the infill according to the template.

* Update PrintConfig.cpp

* Update PrintConfig.cpp

* Update PrintConfig.cpp

* Add height limitation

* Both sparse and solid. +one-time instructions

* implementation v3

need for clean code in future

* + Multiply Instructions

* Add solid layers into sparse infill

* Update Layer.hpp

* Update PrintObject.cpp

* Update Tab.cpp

* Remove some bugs and increase quality

* rename apply_model_direction to align_infill_direction_to_model

* Change the data type of top_surface_direction and bottom_surface_direction to float so that they are consistent with other infill direction parameters.

* remove top_surface_direction and bottom surface_direction options

* clean code

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>

* Feature/add_snapmaker_u1_profiles (SoftFever#10225)

* add snapmaker u1 profiles

* tweak some parameters for U1

* Do not connect to default BBL device during app startup (SoftFever#10214)

* Do not connect to default device during app startup

* Connect to last selected machine automatically even if it's lan machine
Simplify default machine connection logic

* Select last machine automatically when available

* Check for LAN connection state after updating combobox selection.
This matches the logic of `SendPrint.cpp`.

* Avoid showing same error message multiple times until next connection attempt.

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>

* update readme

* Adjust the CAUTION format to make it more visible, as there are more fake websites claim to be official (SoftFever#10230)

Update README.md

* add CLAUDE.md

* udpate locale

* include OrcaSlicer_profile_validator in nightly build (SoftFever#10233)

* include OrcaSlicer_profile_validator in nightly build

* build OrcaSlicer_profile_validator on Win

* create dmg

* fix / add  de locale (SoftFever#10236)

* fix many stings

* fix

* correct winget command --e (SoftFever#10198)

winget seems to accept -e or --exact.  Modified README.md to use --exact.

* Bug fix: avoid crossing perimeters (SoftFever#10185)

* avoid crossing perimeters

avoid crossing perimeters

Timelapse issue

Update GCode.cpp

Update GCode.cpp

Update GCode.cpp

Update GCode.cpp

* Update GCode.cpp

* Update GCode.cpp

Update GCode.cpp

* Update GCode.cpp

Update GCode.cpp

* Replace tab with space

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>

* Prevent collision: end load line at X(old+5) to avoid nozzle scratching (SoftFever#10193)

End load line at X(old+5) top prevent drip collision

* fix an issue that OrcaSlicer_profile_validator for Mac was not published to nightly build

* Introduce a new seam alignment option: Aligned back (SoftFever#10255)

* Introduce a new seam alignment option: spAlignedBack.

* feat: add ABS, PLA, PETg filaments by NIT (SoftFever#10205)

* feat: add ABS, PLA, PETg filaments by NIT

* feat: Set value of default_filament_colour to empty string

* Wiki Update 8 - Lorita (SoftFever#10094)

* Wiki Home

Fix process-others
VFA test

* Add wall GIFs and update documentation

* Quality Overhangs Wiki Basic

Update README.md
Update Home.md

* Better only one wall

* Add infill ghosting image and update wall order

* Updates process options

* Fix calibration step numbering in documentation

Corrected the step numbers in the calibration order list to maintain sequential order.

* Update Calibration.md

* Update wall and surface quality docs with images and details

* Revise Linux build instructions and restructure sections

Co-Authored-By: cefiar <cefiar@gmail.com>

* APA Clarify compatibility notes

Co-Authored-By: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>

* Removed Tolerance test from calibration guide. Keeped as note

Co-Authored-By: Noisyfox <timemanager.rick@gmail.com>

* Copilot Review

---------

Co-authored-by: cefiar <cefiar@gmail.com>
Co-authored-by: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>

* Fix a bug where the maximum line width limit is inconsistent across different checks.
Fixes SoftFever#10188

* Avoid cross perimeter improvements ported from BBS (SoftFever#10220)

* FIX: fix avoid crossing perimeters not work[github issue SoftFever#6597]

jira: STUDIO-11682

github: SoftFever#6597

Change-Id: Ib86fac93280504e0040f1cce44dad4d02f709c01
(cherry picked from commit 35afceb9a7f4e5a3baba97f054d0e6768e4f59cf)

* FIX: optimize avoid crossing wall

jira: STUDIO-11682

Change-Id: I49b6756a5d3aeb482c019813074d8f6f9cc3c6ef
(cherry picked from commit e9b7006db994d78b9153dedfd0f89447c941cb76)

* Sync with latest BBS code

---------

Co-authored-by: huicong.li <huicong.li@bambulab.com>

* Revert "Refactor stagger concentric seams (SoftFever#6432)"

This reverts commit bd8c2ff.

* Revert "Stagger concentric infill seams. (SoftFever#6184)"

This reverts commit 0286c36.

* Add 0.6/0.8 nozzle for tiertime printer. (SoftFever#10264)

* Fix Ironing/Support patterns (SoftFever#10278)

NoisyGoat

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>

* Fix broken freetype-2.12.1.tar.gz link

* Remap filament for pre-colored models (SoftFever#10303)

* Add a new feature to allow users to remap filament for a pre-painted model.

* Fix the color issues to support the theme

* clean up code

* Fix broken freetype-2.12.1.tar.gz link

* feat: support for multi heating zones

* feat: Remove softfever reference from pipeline

* feat: support for multi heating zones

* feat: update repository references from SoftFever to gingeradditive in workflows and source files

* Update translation catalog

* fix: restore pot file

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* feat: migrate to GingerSlicer

feat: Rename project to OrcaSlicer4pellet and update related configurations

feat: Update SVG files to reflect Inkscape version 1.4 and enhance graphical elements

feat: Comment out app signing and notary steps in macOS build workflow; update artifact names to reflect project rename

feat: Update splash logo SVG and replace logo images

fix: Correct app copy path in build_slicer function to match new project structure

feat: Update project references to OrcaSlicer4pellet, including bundle identifier, executable names, and documentation links

chore: Update various project files for consistency and maintainability

feat: change color to #d72828

feat: change "Orca Slicer" to "Ginger Slicer"

feat: change logo

feat: change logo

fix: update artifact paths to use GingerSlicer instead of OrcaSlicer

fix: update build script to copy GingerSlicer.app instead of OrcaSlicer.app

feat: Update SVG files for OrcaSlicer

feat: add desktop entry for GingerSlicer

wip: change brand colors

wip: change brand colors

feat: remove other profiles

fix: update profile validator command in build workflow

feat: update deployment configuration to use repository and tag for nightly builds

feat: add GingerSlicer Flatpak manifest and metadata

fix: update macOS bundle name from OrcaSlicer to GingerSlicer

wip: change brand colors

wip: delete wiki

wip: change reference to GingerSlicer

wip: change reference to GingerSlicer

fix: pipeline release id

wip: remove custom profile

wip: remove BBL setup page

feat: remove calibration and project tab

feat: change preset for camera and gcode window

fix: minor fix

feat: update readme

wip: change cmake project name

fix: name into macosxbundleinfo

fix: mac pipeline

wip: fix missing cache reference

feat: disable flatpack

fix: dep with deps

fix: try fix pipeline

fix orcaslicer.rc

fix: windows pipeline

fix: mac pipeline

fix: condition of Create DMG without notary pipeline

try: fix orcaslicer Run

fix: OrcaSlicer_dep

fix: OrcaSlicer_deps

feat: implement Orca Profile Validator with custom preset generation

fix: typo Gingerslicer to GingerSlicer

fix: Create DMG without notary mac

* fix: image color

* add script for conveting color

* feat: update SoftFever version to 2.3.1.1

* Gingerslicer dev/change slicer field visibility

* feat: change visibility of the fields

* fix: some tab still visible witout parameter in

* fix: minor image color fix

* fix: change override visibility

* Gingerslicer dev/update profiles 19 07 25

* feat: update profiles for Ginger Additive

* feat: merge previous update

* fix: errors using achab

* fix: remove unused file and folder

* fix: errors in profile

* fix: comment out custom presets validation step

* feat: add workflow to promote nightly builds to release

* fix: update nightly artifacts download command in workflow

* fix: correct JSON formatting in fdm_machine_common.json

* fix: notification color

* fix: thumbnail and metadata

* fix: update version to 1.9.1.1 in fdm_machine_common.json

* fix: update version to 2.3.1.1

* fix: temperature in the GcodePreview by parsing the PRINT_START values

* fix: remove unused profiles

* fix: remove unused doc

* fix: SVG colors and merge errors

* fix: CreatePresetsDialog.cpp

---------

Co-authored-by: VOLUMIC <31067164+VOLUMIC@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
Co-authored-by: yw4z <ywsyildiz@gmail.com>
Co-authored-by: KrisMorr <154343071+KrisMorr@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>
Co-authored-by: InnovatiQ <info@innovatiq.com>
Co-authored-by: MohanS <sibi.mohan@innovatiq.com>
Co-authored-by: Jack Boswell <boswelja@outlook.com>
Co-authored-by: π² <pi.squared.studio@gmail.com>
Co-authored-by: Heiko Liebscher <hliebscher@idn.de>
Co-authored-by: Robert M Lugg <robert.lugg@gmail.com>
Co-authored-by: Simon <ziehmon@smtpd.de>
Co-authored-by: Kirill Ziuzin <kirill.zak@gmail.com>
Co-authored-by: cefiar <cefiar@gmail.com>
Co-authored-by: huicong.li <huicong.li@bambulab.com>
Co-authored-by: GuoGeTiertime <97820723+GuoGeTiertime@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants