Merge branch 'master' into skr-mini-e3-v3

This commit is contained in:
Bassam Husain
2023-04-26 13:17:52 -04:00
5 changed files with 82 additions and 9 deletions

12
.vscode/settings.json vendored
View File

@@ -7,12 +7,24 @@
"spellright.documentTypes": ["markdown", "plaintext"],
"cSpell.words": [
"ADXL",
"cfgs",
"Fluidd",
"Fluiddpi",
"gcode",
"githubstar",
"hotend",
"KIAUH",
"Klipper",
"Klipperized",
"lrwxrwxrwx",
"moonraker",
"octahedroflake",
"PARKBED",
"PARKCENTER",
"PARKFRONT",
"PARKFRONTLOW",
"PARKREAR",
"Prusa",
"runout",
"Sovol"
]

View File

@@ -2,9 +2,11 @@
This branch contains the Klipper configuration and firmware for the **Sovol SV06** 3D printer with the **BTT SKR-Mini-E3-V3.0** motherboard.
If you were looking for my OSS Klipper Configuration for the **Sovol SV06** with *completely stock hardware*, please refer to the [master](https://github.com/bassamanator/Sovol-SV06-firmware/tree/master) branch.
For the Sovol SV06 with stock hardware, please refer to the [master](https://github.com/bassamanator/Sovol-SV06-firmware/tree/master) branch.
If you wanted to use the One-Stop-Shop Klipper Configuration for a different printer, please switch to the [any-printer](https://github.com/bassamanator/Sovol-SV06-firmware/tree/any-printer) branch.
For the Sovol SV06 Plus, please refer to the [sv06-plus](https://github.com/bassamanator/Sovol-SV06-firmware/tree/sv06-plus) branch.
For all other 3D printers, please switch to the [any-printer](https://github.com/bassamanator/Sovol-SV06-firmware/tree/any-printer) branch.
I am creating these files for my personal use and cannot be held responsible for what it might do to your printer. Use at your own risk.
@@ -57,7 +59,7 @@ You can choose *either* of the 2 following methods.
### Method 2: Download the ZIP
1. [Download](https://github.com/bassamanator/Sovol-SV06-firmware/archive/refs/heads/skr-mini-e3-v3.zip) the `ZIP` file containing the Klipper configuration.
2. The parent folder in the `ZIP` is `Sovol-SV06-firmware-master`. This is relevant in the next step.
2. The parent folder in the `ZIP` is `Sovol-SV06-firmware-skr-mini-e3-v3`. This is relevant in the next step.
3. Extract **only** the *contents* of the parent folder into `~/printer_data/config`.
#### Once you've cloned or downloaded the configuration, please follow instructions found in [Initial Steps](https://github.com/bassamanator/Sovol-SV06-firmware#initial-steps).

43
cfgs/adxl-rpi-pico-2x.cfg Normal file
View File

@@ -0,0 +1,43 @@
#####################################################################
# Config that supports a print head and a bed sensor at the same time
# This requires a Raspberry Pi Pico.
# Instructions: https://klipper.discourse.group/t/raspberry-pi-pico-adxl345-portable-resonance-measurement/1757/9
# TLDR Instructions: The two sensors should use the spi0a (GPIO 0-3) and spi1a (GPIO 9-12) buses, respectively.
#
# Recommended mounts:
# https://www.printables.com/model/385334-sovol-sv06-adxl345-mount-printhead-and-bed
#
# ADXL345 related Settings
# https://www.klipper3d.org/Measuring_Resonances.html#adxl345
#####################################################################
[mcu RP2040]
baud: 115200
restart_method: command
# Obtain definition by "ls -l /dev/serial/by-id/"
serial: /dev/serial/by-id/usb-Klipper_rp2040_E66138935F154C28-if00
[adxl345 head]
cs_pin: RP2040:gpio1
spi_bus: spi0a
# update axes_map if your sensor is oriented differently. Note the print on your sensor.
# -y, -z, x means that
# - the x axis of your printer corresponds to the sensor's negative y axis
# - the y axis of your printer corresponds to the sensor's negative z axis
# - the z axis of your printer corresponds to the sensor's x axis
axes_map: -y, -z, x
[adxl345 bed]
cs_pin: RP2040:gpio9
spi_bus: spi1a
[resonance_tester]
accel_chip_x: adxl345 head
accel_chip_y: adxl345 bed
probe_points: 111.5, 111.5, 20
[gcode_macro ADX]
description: Shortcut to ACCELEROMETER_QUERY for both sensors
gcode:
ACCELEROMETER_QUERY CHIP=head
ACCELEROMETER_QUERY CHIP=bed

View File

@@ -5,6 +5,11 @@ enable_force_move: True
# [temperature_sensor raspberry_pi]
# sensor_type: temperature_host
# NOTE If you're using a an Orange Pi, you can uncomment the next 2 lines, optionally.
# [temperature_sensor Orange_Pi]
# sensor_type: temperature_host
# sensor_path: /sys/class/thermal/thermal_zone0/temp
[virtual_sdcard]
path: /home/pi/printer_data/gcodes
@@ -122,28 +127,38 @@ gcode:
{% set hotendtemp = params.HOTEND|int %}
{% set chambertemp = params.CHAMBER|default(0)|int %}
# Set safe speeds
{% set maxVelocity = printer.configfile.settings.printer.max_velocity|default(200)|int %}
{% set maxVelocityAdjusted = (0.90 * maxVelocity * 60)|int %}
{% set bedtempAlmost = (bedtemp - 2)|int %}
{% set hotendtempStepOne = 150|int %}
{% set hotendtempStepTwo = 170|int %}
{% if printer.configfile.settings.safe_z_home %}
{% set startX = printer.configfile.settings.safe_z_home.home_xy_position[0]|float %}
{% set startY = printer.configfile.settings.safe_z_home.home_xy_position[1]|float %}
{% endif %}
{% set bedtempAlmost = (bedtemp - 2, 0)|max %}
{% set hotendtempStepOne = ((hotendtemp, printer[printer.toolhead.extruder].temperature|int)|min, 150)|max %}
{% set hotendtempStepTwo = ((hotendtemp, printer[printer.toolhead.extruder].temperature|int)|min, 170)|max %}
BED_MESH_PROFILE LOAD=default ; NOTE if not using a mesh, comment out this line
ADJUST_FILAMENT_SENSOR_STATUS ENABLE=1
G90
G90 ; absolute positioning
M140 S{bedtempAlmost} ; set & don't wait for bed temp
M104 S{hotendtempStepOne} ; set & don't wait for hotend temp
G28 X Y
{% if printer.configfile.settings.safe_z_home %}
G1 X{startX} Y{startY} F{maxVelocityAdjusted}
{% endif %}
M190 S{bedtempAlmost} ; set & wait for bed temp
M104 S{hotendtempStepTwo} ; set & don't wait for hotend temp
M190 S{bedtemp} ; set & wait for bed temp
M104 S{hotendtemp} ; set & don't wait for hotend temp
G28 Z ; final z homing
M109 S{hotendtemp} ; set & wait for hotend temp
G1 X0 Y0 F{maxVelocityAdjusted}
M109 S{hotendtemp} ; set & wait for hotend temp
G1 Z20 F3000 ; move nozzle away from bed

View File

@@ -10,6 +10,7 @@
# NOTE Uncomment the ONE of the following lines if you're using an adxl345
# [include ./cfgs/adxl-rp2040.cfg]
# [include ./cfgs/adxl-rpi-pico-2x.cfg]
# [include ./cfgs/adxl-direct.cfg]
[mcu]