Skip to content

Instantly share code, notes, and snippets.

View NameOfTheDragon's full-sized avatar
🌟
Freelance .NET developer for hire

Tim Long NameOfTheDragon

🌟
Freelance .NET developer for hire
View GitHub Profile
@NameOfTheDragon
NameOfTheDragon / heat_soak.cfg
Last active December 29, 2023 19:11
Use Z-offset to detect the end of heat soak
# Macros for automating heat soak.
# Will measure the Z-offset using the Auto-Z-Calibration plugin every few minutes.
# Keeps track of how much the offset is changing between measurements.
# When the delta falls below a threshold, stops measuring and starts the print queue.
#
# ASSUMPTIONS
# 1. You are using Klicky Probe (this is a prerequisite for the Auto-Z-Calibration plugin)
# 2. Auto-Z-Calibration plugin is installed and configured
#
# DEFAULTS

I'm on a bit of a crusade to persuade designers of open-source models to include their original CAD models.

There seems to be a trend of including a STEP file and calling it a day. While that has uses, it is only a partial solution and does not represent the "source code", so arguably an open source design must have the original CAD model included.

I am aware that to some people this may appear as if I am being "ungrateful" and truly that is not the case. I am grateful for all the wonderful free models. I am, though, enthusiastic about the idea of remixing, improving, and building upon those ideas. I suspect that many people think that the STEP file is enough for this, but it really isn't, for several reasons.

@NameOfTheDragon
NameOfTheDragon / MultiFilament.cfg
Created June 5, 2022 14:39
Multi-filament support macros for manual filament changes
[gcode_macro LOAD_FILAMENT]
gcode:
{% set LoadSpeed = params.SPEED | default(1800) | int %}
{% set PrimeSpeed = params.PRIME_SPEED | default(400) | int %}
{% set PurgeLength = params.PURGE_LENGTH | default(55) | int %}
SAVE_GCODE_STATE NAME=__filament__load
M83
G1 E5 F75
G1 E50 F{LoadSpeed}
@NameOfTheDragon
NameOfTheDragon / flash_klipper_mcus.sh
Last active May 27, 2022 17:12
BASH script to update Klipper MCUs using a permanently installed SD card
cd ~/klipper
make
~/klipper/scripts/flash-sdcard.sh /dev/serial/by-id/usb-Klipper_lpc1769_0DF0FF0EA69869AF2046415EC42000F5-if00 btt-skr-turbo-v1.4
~/klipper/scripts/flash-sdcard.sh /dev/serial/by-id/usb-Klipper_lpc1769_10D0FF0BA39869AFC04E405EC12000F5-if00 btt-skr-turbo-v1.4
cd ~
[gcode_macro PAUSE]
rename_existing: BASE_PAUSE
gcode:
{% set RetractionDistance = params.E | default(1.7) | float %}
LED_PAUSED
{% set x_park = printer.toolhead.axis_minimum.x|float + 5.0 %}
{% set y_park = printer.toolhead.axis_maximum.y|float - 15.0 %}
{% set max_z = printer.toolhead.axis_maximum.z|float %}
{% set act_z = printer.toolhead.position.z|float %}
@NameOfTheDragon
NameOfTheDragon / PA_Tuner_TPL.cfg
Last active April 26, 2022 13:08
A klipper macro to run Pressure Advance tuning in Klipper (with embedded test object). Originally by Jon Fox (see https://www.facebook.com/groups/klipper/posts/1395848650844501/) [Note: I'm not necessarily recommending this approach, this was just an experiment]
[gcode_macro PA_TUNER]
description: Pressure Advance Tuning with pre-sliced tuning tower
gcode:
# Set your own default parameters here
{% set filament_d = params.FILAMENT_DIAMETER|default(1.75)|float %}
{% set e_width = params.EXTRUSION_WIDTH|default(0.4)|float %}
{% set tool = params.TOOLHEAD|default("") %}
{% set rect_side_len = params.SIDE_LENGTH|default(100.0)|float %}
{% set layer_h = params.LAYER_HEIGHT|default(0.3)|float %}
{% set fspeed = params.FAST_PRINT_SPEED|default(150.0)|float %}
@NameOfTheDragon
NameOfTheDragon / Voron 2.4 Config 0.4mm nozzle.ini
Created August 12, 2021 13:42
High quality print profile for Voron 2.4 based on a PIF profile
# generated by SuperSlicer 2.3.56 on 2021-08-12 at 13:39:50 UTC
allow_empty_layers = 0
avoid_crossing_not_first_layer = 1
avoid_crossing_perimeters = 0
avoid_crossing_perimeters_max_detour = 0
bed_custom_model =
bed_custom_texture =
bed_shape = 0x0,350x0,350x350,0x350
bed_temperature = 50,90,90,90,90
before_layer_gcode = ;BEFORE_LAYER_CHANGE\n;[layer_z]\n\n
@NameOfTheDragon
NameOfTheDragon / filament_dryer.cfg
Last active May 23, 2024 10:33
Klipper macros for drying filament using the heated build plate of a 3D printer
; An idea for using the heated bed of a 3D printer as a filament dryer.
; Adds GCODE command: START_DRYER TIME=T TEMPERATURE=C
; (T is time in seconds, C is bed temperature in Celsuis)
; To stop drying early, use STOP_DRYER.
; Also defined some utility macros: DRY_PLA, DRY_PETG and DRY_ABS.
; Edit these with your own preferred defaults.
[gcode_macro START_DRYER]
description: Start the heated bed filament dryer.
gcode:
M109 S0 ; uncomment to remove set&wait temp gcode added automatically after this start gcode
START_PRINT EXTRUDER_TEMPERATURE={first_layer_temperature[initial_extruder] + extruder_temperature_offset[initial_extruder]} BED_TEMPERATURE=[first_layer_bed_temperature] CHAMBER_TEMPERATURE=[chamber_temperature] EXTRUDER_STANDBY_TEMPERATURE={first_layer_temperature[initial_extruder] - 40}
# Macros for pausing, resuming and changing filament mid-print.
[gcode_macro M600]
gcode:
CHANGE_FILAMENT
[gcode_macro M601]
gcode:
CHANGE_FILAMENT