Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add printer definitions for Sovol SV08. #19477

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Commits on Sep 21, 2024

  1. Add printer definitions for Sovol SV08.

    The SV08 (or SV-08; nomenclature is not completely consistent)
    is a relatively new printed based on Voron 2.4, running Klipper.
    This adds printer, extruder and material definitions for it,
    based on the voron2_base definitions plus Sovol's published profiles
    for Orca Slicer:
    
      https://drive.google.com/drive/folders/1KWjLxwpO_9_Xqi_f6qu84HRxZi26a_GN
    
    Unfortunately, the included STL model for the platform does not have
    texture coordinates, so we cannot use the platform texture (unless someone
    goes to add them manually or otherwise adjusts the model).
    
    The following settings were not carried over, mostly because I could not
    find any obvious equivalent in Cura:
    
      - Machine:
        "retract_before_wipe": [ "0%" ],
        "machine_max_acceleration_extruding": [ "20000" ],
        "machine_max_acceleration_retracting": [ "5000" ],
        "retract_length_toolchange": [ "2" ],
        "wipe_distance": [ "2" ],
        "retract_lift_below": [ "343" ],
        "thumbnails_format": "PNG",
        "before_layer_change_gcode": "TIMELAPSE_TAKE_FRAME\nG92 E0",
    
      - Filament (using ABS as an example; the exact values differ between
        the four material profiles):
        "nozzle_temperature_range_low": [ "190" ],
        "nozzle_temperature_range_high": [ "250" ],
        "overhang_fan_threshold": [ "25%" ],
        "temperature_vitrification": [ "60" ],  # Only used for arranging.
        "close_fan_the_first_x_layers": [ "3" ],
        "full_fan_speed_layer": [ "0" ],  # Inconsistent; effectively 4.
        # Enclosure fan (M106 P3 commands)
        "activate_air_filtration": [ "1" ],
        "complete_print_exhaust_fan_speed": [ "60" ],
        "during_print_exhaust_fan_speed": [ "100" ],
    
      - Process: A bunch (e.g. bridge_flow, elephant_foot_compensation,
        overhang_1_4_speed, etc. etc.), but it's unclear how many are
        printer-specific and how many are just Orca defaults where Cura wants
        to do things differently.
    
    The start and end G-code are mostly copied over verbatim, except that it
    leaves the printer in relative coordinate mode and Cura does not set this
    explicitly back to absolute, so we need an explicit G90 at the end. (Also,
    there seems to be a Klipper issue where G90 does not reset extrusion to
    absolute as well, so we need to send an explicit M82.) We give
    EXTRUDER_TEMP= and BED_TEMP= as parameters to the START_PRINT macro; the
    Sovol stock macros ignore these, but the popular mainline Klipper
    installation can use this to e.g. bed mesh at the correct temperature.
    
    Unfortunately, Cura chooses SS_ as prefix instead of SV08_. I don't know
    if there is a way to override this; the other Sovol printers seem to have
    the same issue.
    
    I've tested this with the standard 0.4mm nozzle and ABS/PLA, using the
    Moonraker plugin. PETG and TPU are untested, in part because the current
    nozzle is said to be unsafe for PETG. The time estimates from Cura are not
    all that good, but klipper_estimator helps. (The Klipper object exclusion
    plugin is also recommended, as it allows the printer to bed mesh a smaller
    area.)
    
    Future work would include supporting the 0.2mm, 0.6mm and 0.8mm nozzles.
    There are separate profiles for them, with different layer height, support
    settings, print speeds, etc. -- and then there is a specific PLA/0.2mm
    profile with lower printing speed and higher fan settings. Also, it would
    be really good to support the enclosure fan (M106 P3, known as
    exhaust_fan in Orca) for printing ABS; it's possible that something could
    be done using the Cura fan control plugin, but it would be better to
    simply have it right in the filament settings. Similarly, the ABS/PETG
    profiles want to turn off the fan entirely the first three layers
    (to improve adhesion), but Cura can only ramp linearly starting from the
    first layer, not hold the first few layers constant.
    Steinar H. Gunderson authored and sesse committed Sep 21, 2024
    Configuration menu
    Copy the full SHA
    cba5ad7 View commit details
    Browse the repository at this point in the history