From 42d596c820b6043e036dbee7ab2caa2ed4995899 Mon Sep 17 00:00:00 2001 From: h3n3 Date: Wed, 15 May 2024 22:32:16 +0200 Subject: [PATCH] printer.cfg opgedeeld in diverse bestanden en grootte van het bed aangepast --- .../klipper_config/.moonraker.conf.bkp | 1 + .../klipper_config/KlipperScreen.conf | 3 - .../klipper-macros/optional/bed_mesh.cfg | 18 + .../klipper-macros/optional/lcd_menus.cfg | 969 ++++++++++++++++++ .../klipper_config/leds/neopixel.cfg | 20 + .../klipper_config/leds/neopixels.cfg | 118 +++ .../klipper_config/macros/bed_mesh.cfg | 4 +- .../klipper_config/macros/bed_mesh_org.cfg | 69 ++ .../klipper_config/macros/jschuh_macros_cfg | 56 + .../klipper_config/macros/kiauh_macros.cfg | 59 ++ .../klipper_config/macros/standaardMacros.cfg | 125 +++ .../klipper_config/moonraker.conf | 1 + .../DNV-TPU-Ender3/klipper_config/printer.cfg | 766 +------------- .../klipper_config/scherm/menu.cfg | 586 +++++++++++ .../klipper_config/telegram.conf | 10 +- .../werkzaamhedenEnder3TPU.md | 7 + 16 files changed, 2055 insertions(+), 757 deletions(-) create mode 100644 klipper/DNV-TPU-Ender3/klipper_config/klipper-macros/optional/bed_mesh.cfg create mode 100644 klipper/DNV-TPU-Ender3/klipper_config/klipper-macros/optional/lcd_menus.cfg create mode 100644 klipper/DNV-TPU-Ender3/klipper_config/leds/neopixel.cfg create mode 100644 klipper/DNV-TPU-Ender3/klipper_config/leds/neopixels.cfg create mode 100644 klipper/DNV-TPU-Ender3/klipper_config/macros/bed_mesh_org.cfg create mode 100644 klipper/DNV-TPU-Ender3/klipper_config/macros/jschuh_macros_cfg create mode 100644 klipper/DNV-TPU-Ender3/klipper_config/macros/kiauh_macros.cfg create mode 100644 klipper/DNV-TPU-Ender3/klipper_config/macros/standaardMacros.cfg create mode 100644 klipper/DNV-TPU-Ender3/klipper_config/scherm/menu.cfg create mode 100644 klipper/DNV-TPU-Ender3/klipper_config/werkzaamhedenLog/werkzaamhedenEnder3TPU.md diff --git a/klipper/DNV-TPU-Ender3/klipper_config/.moonraker.conf.bkp b/klipper/DNV-TPU-Ender3/klipper_config/.moonraker.conf.bkp index 6642313..cb5b53f 100644 --- a/klipper/DNV-TPU-Ender3/klipper_config/.moonraker.conf.bkp +++ b/klipper/DNV-TPU-Ender3/klipper_config/.moonraker.conf.bkp @@ -6,6 +6,7 @@ klippy_uds_address = /tmp/klippy_uds [authorization] trusted_clients = 127.0.0.0/8 + 10.11.98.0/24 169.254.0.0/16 FE80::/10 ::1/128 diff --git a/klipper/DNV-TPU-Ender3/klipper_config/KlipperScreen.conf b/klipper/DNV-TPU-Ender3/klipper_config/KlipperScreen.conf index 573ba42..2901ede 100644 --- a/klipper/DNV-TPU-Ender3/klipper_config/KlipperScreen.conf +++ b/klipper/DNV-TPU-Ender3/klipper_config/KlipperScreen.conf @@ -4,7 +4,4 @@ #~# [main] #~# screen_blanking = 900 #~# move_speed_z = 5 -#~# -#~# [graph Printer] -#~# heater_bed = False #~# diff --git a/klipper/DNV-TPU-Ender3/klipper_config/klipper-macros/optional/bed_mesh.cfg b/klipper/DNV-TPU-Ender3/klipper_config/klipper-macros/optional/bed_mesh.cfg new file mode 100644 index 0000000..5080ed8 --- /dev/null +++ b/klipper/DNV-TPU-Ender3/klipper_config/klipper-macros/optional/bed_mesh.cfg @@ -0,0 +1,18 @@ +# Copyright (C) 2022 Justin Schuh +# +# This file may be distributed under the terms of the GNU GPLv3 license. +# +# Credit to original source: +# https://gist.github.com/ChipCE/95fdbd3c2f3a064397f9610f915f7d02 + +[gcode_macro bed_mesh_calibrate] +rename_existing: _KM_BED_MESH_CALIBRATE_BASE +variable_km_override: True +description: Wraps BED_MESH_CALIBRATE, scaling probe count to specified area. + Usage: See Klipper documentation. +gcode: + BED_MESH_CALIBRATE_FAST{%for k in params%}{' '~k~'="'~params[k]~'"'}{%endfor%} + +[gcode_macro g29] +gcode: + BED_MESH_CALIBRATE diff --git a/klipper/DNV-TPU-Ender3/klipper_config/klipper-macros/optional/lcd_menus.cfg b/klipper/DNV-TPU-Ender3/klipper_config/klipper-macros/optional/lcd_menus.cfg new file mode 100644 index 0000000..5a16bba --- /dev/null +++ b/klipper/DNV-TPU-Ender3/klipper_config/klipper-macros/optional/lcd_menus.cfg @@ -0,0 +1,969 @@ +# Copyright (C) 2022 Justin Schuh +# +# This file may be distributed under the terms of the GNU GPLv3 license. + +################################################################################ +# Existing menu refinements. +################################################################################ + +# Hide unused menus + +[menu __main __octoprint] +type: list +name: OctoPrint +enable: {printer["gcode_macro _km_globals"].menu_show_octoprint} + + +# Get the file list out of the SD card menu while printing. +[menu __main __sdcard] +type: list +enable: {'virtual_sdcard' in printer and + printer["gcode_macro _km_globals"].menu_show_sdcard} +name: SD Card + +[menu __main __sdcard __start] +type: command +enable: {printer.virtual_sdcard.file_path and + not printer.virtual_sdcard.is_active and + printer.print_stats.state != "printing" and + printer.print_stats.state != "paused"} +name: Print: {printer.virtual_sdcard.file_path.split('/')|last} +gcode: + M24 + {menu.back()} + +[menu __main __sdcard __select] +type: vsdlist +enable: {not printer.virtual_sdcard.is_active and + printer.print_stats.state != "printing" and + printer.print_stats.state != "paused"} +name: Select file +index: 1 + +[menu __main __sdcard __select __start] +type: command +enable: {printer.virtual_sdcard.file_path and + not printer.virtual_sdcard.is_active} +name: Print: {printer.virtual_sdcard.file_path.split('/')|last} +gcode: + M24 + {menu.back()} + +[menu __main __setup __calib __delta_calib_auto] +type: command +enable: {'delta_calibrate' in printer.configfile.settings and + not printer.idle_timeout.state == "Printing"} +name: Delta cal. auto +gcode: + G28 + DELTA_CALIBRATE + +[menu __main __setup __calib __delta_calib_man] +type: list +enable: {'delta_calibrate' in printer.configfile.settings and + not printer.idle_timeout.state == "Printing"} +name: Delta cal. man + +# Require confirmation for anything that would abort an in-progress print. + +# Steppers off +[menu __main __control __disable] +type: command +name: Steppers off +enable: {printer.idle_timeout.state != "Printing"} +gcode: + M84 + M18 + +[menu __main __control __disable_printing] +type: list +index: 3 +enable: {printer.idle_timeout.state == "Printing"} +name: Steppers off + +[menu __my_main __control __disable_printing __confirm] +type: command +name: Confirm steppers off +gcode: + M84 + M18 + {menu.back()} + +# Add a park menu item. +[menu __main __control __park] +type: command +name: Park toolhead +enable: {printer.idle_timeout.state != "Printing" or + printer.pause_resume.is_paused} +index: 1 +gcode: + G28 O ; Lazy home first. + PARK + +# Octoprint abort +[menu __main __octoprint __abort] +type: list +enable: {printer.idle_timeout.state == "Printing"} +name: Abort printing + +[menu __main __octoprint __abort __confirm] +type: command +name: Confirm abort printing +gcode: + {action_respond_info('action:cancel')} + {menu.back()} + +# SD card cancel +[menu __main __sdcard __cancel] +type: list +enable: {('virtual_sdcard' in printer) and + (printer.print_stats.state == "printing" or + printer.print_stats.state == "paused")} +name: Cancel printing + +[menu __main __sdcard __cancel __confirm] +type: command +name: Confirm cancel printing +gcode: + {% if 'pause_resume' in printer %} + CANCEL_PRINT + {% else %} + M25 + M27 + M26 S0 + TURN_OFF_HEATERS + G91 + G0 Z{(printer.toolhead.position.z, printer.toolhead.axis_maximum.z - 5)|min + } F1000 + G90 + {% endif %} + {menu.back()} + +# Extra setup menu options + +# Shutdown and reboot +[menu __main __setup __restart] +type: list +name: Restart/Shutdown + +[menu __main __setup __restart __reboot] +type: command +name: Reboot host +gcode: + M117 Rebooting host + M118 Rebooting host + {menu.exit()} + G4 S2 ; Let the user see the console message. + {action_call_remote_method("reboot_machine")} ; Try Moonraker. + G4 S1 ; give Moonraker a chance to finish. + {action_respond_info('action:poweroff')} ; Try Octoprint. + +[menu __main __setup __restart __shutdown] +type: command +name: Shutdown host +gcode: + M117 Shutting down + M118 Shutting down + {menu.exit()} + G4 S2 ; Let the user see the console message. + {action_call_remote_method("shutdown_machine")} ; Try Moonraker. + G4 S1 ; give Moonraker a chance to finish. + {action_respond_info('action:poweroff')} ; Try Octoprint. + +# Speed and flow +[menu __main __setup __speed] +type: input +name: Speed: {'%3d' % (menu.input*100)}% +input: {printer.gcode_move.speed_factor} +input_min: 0.01 +input_max: 5 +input_step: 0.01 +realtime: True +index: 4 +gcode: + M220 S{'%d' % (menu.input*100)} + +[menu __main __setup __flow] +type: input +name: Flow: {'%3d' % (menu.input*100)}% +input: {printer.gcode_move.extrude_factor} +input_min: 0.01 +input_max: 2 +input_step: 0.01 +realtime: True +index: 5 +gcode: + M221 S{'%d' % (menu.input*100)} + +################################################################################ +# Replace filament loading with our own macros. +################################################################################ + +[menu __main __filament] +type: list +name: Filament +enable: {printer.idle_timeout.state != "Printing" or + printer.pause_resume.is_paused} + +# Hide the old load/unload commands. +[menu __main __filament __loadf] +type: command +name: Load Fil. fast +enable: False + +[menu __main __filament __loads] +type: command +name: Load Fil. slow +enable: False + +[menu __main __filament __unloadf] +type: command +name: Unload Fil.fast +enable: False + +[menu __main __filament __unloads] +type: command +name: Unload Fil.slow +enable: False + +# Add new load/unload using our macros. +[menu __main __filament __load] +type: command +index: 1 +name: Load Filament +gcode: + LOAD_FILAMENT + +[menu __main __filament __unload] +type: command +index: 2 +name: Unload Filament +gcode: + UNLOAD_FILAMENT + +[menu __main __filament __feed] +type: input +name: Feed: {'%.1f' % menu.input} +input: 0.0 +input_min: -50.0 +input_max: 50.0 +input_step: 1.0 +gcode: + SAVE_GCODE_STATE NAME=_KM_FILAMENT_LOAD + M83 + G1 E{'%.1f' % menu.input + } F{printer["gcode_macro _km_globals"].load_priming_speed} + RESTORE_GCODE_STATE NAME=_KM_FILAMENT_LOAD + +################################################################################ +# Layer triggers. +################################################################################ + +[menu __main __sdcard __pause_layer] +type: input +index: 4 +enable: {('virtual_sdcard' in printer) and + printer.print_stats.state == "printing"} +name: Pause {% set layer = printer["gcode_macro _km_layer_run"].cur_layer %}{% + if layer >= menu.input|int %}layer{% + elif layer + 1 == menu.input|int %}at: next{% + else %}at: {menu.input|int}{% endif %} +input: {printer["gcode_macro _km_layer_run"].cur_layer} +input_min: {printer["gcode_macro _km_layer_run"].cur_layer} +input_max: {printer["gcode_macro _km_layer_run"].tot_layers} +input_step: 1 +gcode: + {% set layers = printer["gcode_macro _km_layer_run"] %} + {% if menu.input|int > layers.cur_layer %} + PAUSE_AT_LAYER LAYER={menu.input} + {% endif %} + +[menu __main __octoprint __pause_layer] +type: input +index: 1 +enable: {printer.idle_timeout.state == "Printing"} +name: Pause {% set layer = printer["gcode_macro _km_layer_run"].cur_layer %}{% + if layer >= menu.input|int %}layer{% + elif layer + 1 == menu.input|int + 1 %}at: next{% + else %}at: {menu.input|int}{% endif %} +input: {printer["gcode_macro _km_layer_run"].cur_layer} +input_min: {printer["gcode_macro _km_layer_run"].cur_layer} +input_max: {printer["gcode_macro _km_layer_run"].tot_layers} +input_step: 1 +gcode: + {% set layers = printer["gcode_macro _km_layer_run"] %} + {% if menu.input|int > layers.cur_layer %} + GCODE_AT_LAYER LAYER={menu.input|int + } COMMAND="RESPOND TYPE=command MSG=action:pause" + {% endif %} + +################################################################################ +# Bed surface. +################################################################################ + +[menu __main __setup __bed_surface] +type: input +name: Bed: {(printer.save_variables.variables.bed_surfaces.available + | list | sort)[menu.input|int]} +input: {% set surfaces = printer.save_variables.variables.bed_surfaces + %}{(surfaces.available | list | sort).index(surfaces.active) | int} +input_min: 0 +input_max: {((printer.save_variables.variables.bed_surfaces.available + | length) - 1)} +input_step: 1 +index: 4 +gcode: + SET_SURFACE_ACTIVE SURFACE={ + (printer.save_variables.variables.bed_surfaces.available + | list | sort)[menu.input|int]} + +[menu __main __setup __offsetz] +type: input +name: Offset Z:{ '%05.3f' % menu.input } +input: {% set surfaces = printer.save_variables.variables.bed_surfaces + %}{ surfaces.available[surfaces.active].offset | float } +input_min: -5 +input_max: 5 +input_step: 0.005 +index: 5 +realtime: True +gcode: + SET_SURFACE_OFFSET OFFSET={menu.input} + +[menu __main __tune __offsetz] +type: input +name: Offset Z:{ '%05.3f' % menu.input } +input: { printer.gcode_move.homing_origin.z } +input_min: -5 +input_max: 5 +input_step: 0.005 +realtime: True +gcode: + SET_SURFACE_OFFSET OFFSET={menu.input} + +################################################################################ +# Heater overrides. +################################################################################ + +### menu temperature ### + +# Hide the original menu +[menu __main __temp] +type: list +name: Temperature +enable: False + +[menu __main __temp_km] +type: list +name: Temperature +index: 4 + +[menu __main __temp_km __hotend0_target] +type: input +enable: {'extruder' in printer} +name: {"Ex0:%3.0f (%4.0f)" % (menu.input, printer.extruder.temperature)} +input: {printer.extruder.target} +input_min: 0 +input_max: {printer.configfile.config.extruder.max_temp} +input_step: 1 +gcode: SET_HEATER_TEMPERATURE HEATER=extruder TARGET={'%.0f' % menu.input} + +[menu __main __temp_km __hotend1_target] +type: input +enable: {'extruder1' in printer} +name: {"Ex1:%3.0f (%4.0f)" % (menu.input, printer.extruder1.temperature)} +input: {printer.extruder1.target} +input_min: 0 +input_max: {printer.configfile.config.extruder1.max_temp} +input_step: 1 +gcode: SET_HEATER_TEMPERATURE HEATER=extruder1 TARGET={'%.0f' % menu.input} + +[menu __main __temp_km __hotbed_target] +type: input +enable: {'heater_bed' in printer} +name: {"Bed:%3.0f (%4.0f)" % (menu.input, printer.heater_bed.temperature)} +input: {printer.heater_bed.target} +input_min: 0 +input_max: {printer.configfile.config.heater_bed.max_temp} +input_step: 1 +gcode: SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={'%.0f' % menu.input} + +# We just create 10 preheat placeholders below, and dynamically enable and fill +# them in from the dictionary in variable_menu_temperature. + +## Pre-heat [0] ## +[menu __main __temp_km __preheat_0] +type: list +name: Preheat {printer["gcode_macro _km_globals"].menu_temperature[0].name} +enable: {printer.idle_timeout.state != "Printing" and + printer["gcode_macro _km_globals"].menu_temperature|length > 0} + +[menu __main __temp_km __preheat_0 __all] +type: command +enable: {printer["gcode_macro _km_globals"].menu_temperature[0] | list | + select('in', ['extruder', 'bed', 'chamber']) | list | length > 1 and + (('extruder' in printer) + ('heater_bed' in printer) + + ('heater_generic chamber' in printer.heaters.available_heaters)) > 1} +name: Preheat all +gcode: + {% set targets = printer["gcode_macro _km_globals"].menu_temperature[0] %} + {% if 'chamber' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={targets.chamber} + {% endif %} + {% if 'bed' in targets and 'heater_bed' in printer %} + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={targets.bed} + {% endif %} + {% if 'extruder' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + targets.extruder} + {% endif %} + +[menu __main __temp_km __preheat_0 __hotend] +type: command +enable: {'extruder' in printer and + 'extruder' in printer["gcode_macro _km_globals"].menu_temperature[0]} +name: Preheat hotend +gcode: + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[0].extruder} + +[menu __main __temp_km __preheat_0 __hotbed] +type: command +enable: {'heater_bed' in printer and + 'bed' in printer["gcode_macro _km_globals"].menu_temperature[0]} +name: Preheat bed +gcode: + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[0].bed} + +[menu __main __temp_km __preheat_0 __chamber] +type: command +enable: {'heater_generic chamber' in printer.heaters.available_heaters and + 'chamber' in printer["gcode_macro _km_globals"].menu_temperature[0]} +name: Preheat chamber +gcode: + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[0].chamber} + +## Pre-heat [1] ## +[menu __main __temp_km __preheat_1] +type: list +name: Preheat {printer["gcode_macro _km_globals"].menu_temperature[1].name} +enable: {printer.idle_timeout.state != "Printing" and + printer["gcode_macro _km_globals"].menu_temperature|length > 1} + +[menu __main __temp_km __preheat_1 __all] +type: command +enable: {printer["gcode_macro _km_globals"].menu_temperature[1] | list | + select('in', ['extruder', 'bed', 'chamber']) | list | length > 1 and + (('extruder' in printer) + ('heater_bed' in printer) + + ('heater_generic chamber' in printer.heaters.available_heaters)) > 1} +name: Preheat all +gcode: + {% set targets = printer["gcode_macro _km_globals"].menu_temperature[1] %} + {% if 'chamber' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={targets.chamber} + {% endif %} + {% if 'bed' in targets and 'heater_bed' in printer %} + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={targets.bed} + {% endif %} + {% if 'extruder' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + targets.extruder} + {% endif %} + +[menu __main __temp_km __preheat_1 __hotend] +type: command +enable: {'extruder' in printer and + 'extruder' in printer["gcode_macro _km_globals"].menu_temperature[1]} +name: Preheat hotend +gcode: + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[1].extruder} + +[menu __main __temp_km __preheat_1 __hotbed] +type: command +enable: {'heater_bed' in printer and + 'bed' in printer["gcode_macro _km_globals"].menu_temperature[1]} +name: Preheat bed +gcode: + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[1].bed} + +[menu __main __temp_km __preheat_1 __chamber] +type: command +enable: {'heater_generic chamber' in printer.heaters.available_heaters and + 'chamber' in printer["gcode_macro _km_globals"].menu_temperature[1]} +name: Preheat chamber +gcode: + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[1].chamber} + +## Pre-heat [2] ## +[menu __main __temp_km __preheat_2] +type: list +name: Preheat {printer["gcode_macro _km_globals"].menu_temperature[2].name} +enable: {printer.idle_timeout.state != "Printing" and + printer["gcode_macro _km_globals"].menu_temperature|length > 2} + +[menu __main __temp_km __preheat_2 __all] +type: command +enable: {printer["gcode_macro _km_globals"].menu_temperature[2] | list | + select('in', ['extruder', 'bed', 'chamber']) | list | length > 1 and + (('extruder' in printer) + ('heater_bed' in printer) + + ('heater_generic chamber' in printer.heaters.available_heaters)) > 1} +name: Preheat all +gcode: + {% set targets = printer["gcode_macro _km_globals"].menu_temperature[2] %} + {% if 'chamber' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={targets.chamber} + {% endif %} + {% if 'bed' in targets and 'heater_bed' in printer %} + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={targets.bed} + {% endif %} + {% if 'extruder' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + targets.extruder} + {% endif %} + +[menu __main __temp_km __preheat_2 __hotend] +type: command +enable: {'extruder' in printer and + 'extruder' in printer["gcode_macro _km_globals"].menu_temperature[2]} +name: Preheat hotend +gcode: + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[2].extruder} + +[menu __main __temp_km __preheat_2 __hotbed] +type: command +enable: {'heater_bed' in printer and + 'bed' in printer["gcode_macro _km_globals"].menu_temperature[2]} +name: Preheat bed +gcode: + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[2].bed} + +[menu __main __temp_km __preheat_2 __chamber] +type: command +enable: {'heater_generic chamber' in printer.heaters.available_heaters and + 'chamber' in printer["gcode_macro _km_globals"].menu_temperature[2]} +name: Preheat chamber +gcode: + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[2].chamber} + +## Pre-heat [3] ## +[menu __main __temp_km __preheat_3] +type: list +name: Preheat {printer["gcode_macro _km_globals"].menu_temperature[3].name} +enable: {printer.idle_timeout.state != "Printing" and + printer["gcode_macro _km_globals"].menu_temperature|length > 3} + +[menu __main __temp_km __preheat_3 __all] +type: command +enable: {printer["gcode_macro _km_globals"].menu_temperature[3] | list | + select('in', ['extruder', 'bed', 'chamber']) | list | length > 1 and + (('extruder' in printer) + ('heater_bed' in printer) + + ('heater_generic chamber' in printer.heaters.available_heaters)) > 1} +name: Preheat all +gcode: + {% set targets = printer["gcode_macro _km_globals"].menu_temperature[3] %} + {% if 'chamber' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={targets.chamber} + {% endif %} + {% if 'bed' in targets and 'heater_bed' in printer %} + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={targets.bed} + {% endif %} + {% if 'extruder' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + targets.extruder} + {% endif %} + +[menu __main __temp_km __preheat_3 __hotend] +type: command +enable: {'extruder' in printer and + 'extruder' in printer["gcode_macro _km_globals"].menu_temperature[3]} +name: Preheat hotend +gcode: + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[3].extruder} + +[menu __main __temp_km __preheat_3 __hotbed] +type: command +enable: {'heater_bed' in printer and + 'bed' in printer["gcode_macro _km_globals"].menu_temperature[3]} +name: Preheat bed +gcode: + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[3].bed} + +[menu __main __temp_km __preheat_3 __chamber] +type: command +enable: {'heater_generic chamber' in printer.heaters.available_heaters and + 'chamber' in printer["gcode_macro _km_globals"].menu_temperature[3]} +name: Preheat chamber +gcode: + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[3].chamber} + +## Pre-heat [4] ## +[menu __main __temp_km __preheat_4] +type: list +name: Preheat {printer["gcode_macro _km_globals"].menu_temperature[4].name} +enable: {printer.idle_timeout.state != "Printing" and + printer["gcode_macro _km_globals"].menu_temperature|length > 4} + +[menu __main __temp_km __preheat_4 __all] +type: command +enable: {printer["gcode_macro _km_globals"].menu_temperature[4] | list | + select('in', ['extruder', 'bed', 'chamber']) | list | length > 1 and + (('extruder' in printer) + ('heater_bed' in printer) + + ('heater_generic chamber' in printer.heaters.available_heaters)) > 1} +name: Preheat all +gcode: + {% set targets = printer["gcode_macro _km_globals"].menu_temperature[4] %} + {% if 'chamber' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={targets.chamber} + {% endif %} + {% if 'bed' in targets and 'heater_bed' in printer %} + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={targets.bed} + {% endif %} + {% if 'extruder' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + targets.extruder} + {% endif %} + +[menu __main __temp_km __preheat_4 __hotend] +type: command +enable: {'extruder' in printer and + 'extruder' in printer["gcode_macro _km_globals"].menu_temperature[4]} +name: Preheat hotend +gcode: + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[4].extruder} + +[menu __main __temp_km __preheat_4 __hotbed] +type: command +enable: {'heater_bed' in printer and + 'bed' in printer["gcode_macro _km_globals"].menu_temperature[4]} +name: Preheat bed +gcode: + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[4].bed} + +[menu __main __temp_km __preheat_4 __chamber] +type: command +enable: {'heater_generic chamber' in printer.heaters.available_heaters and + 'chamber' in printer["gcode_macro _km_globals"].menu_temperature[4]} +name: Preheat chamber +gcode: + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[4].chamber} + +## Pre-heat [5] ## +[menu __main __temp_km __preheat_5] +type: list +name: Preheat {printer["gcode_macro _km_globals"].menu_temperature[5].name} +enable: {printer.idle_timeout.state != "Printing" and + printer["gcode_macro _km_globals"].menu_temperature|length > 5} + +[menu __main __temp_km __preheat_5 __all] +type: command +enable: {printer["gcode_macro _km_globals"].menu_temperature[5] | list | + select('in', ['extruder', 'bed', 'chamber']) | list | length > 1 and + (('extruder' in printer) + ('heater_bed' in printer) + + ('heater_generic chamber' in printer.heaters.available_heaters)) > 1} +name: Preheat all +gcode: + {% set targets = printer["gcode_macro _km_globals"].menu_temperature[5] %} + {% if 'chamber' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={targets.chamber} + {% endif %} + {% if 'bed' in targets and 'heater_bed' in printer %} + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={targets.bed} + {% endif %} + {% if 'extruder' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + targets.extruder} + {% endif %} + +[menu __main __temp_km __preheat_5 __hotend] +type: command +enable: {'extruder' in printer and + 'extruder' in printer["gcode_macro _km_globals"].menu_temperature[5]} +name: Preheat hotend +gcode: + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[5].extruder} + +[menu __main __temp_km __preheat_5 __hotbed] +type: command +enable: {'heater_bed' in printer and + 'bed' in printer["gcode_macro _km_globals"].menu_temperature[5]} +name: Preheat bed +gcode: + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[5].bed} + +[menu __main __temp_km __preheat_5 __chamber] +type: command +enable: {'heater_generic chamber' in printer.heaters.available_heaters and + 'chamber' in printer["gcode_macro _km_globals"].menu_temperature[5]} +name: Preheat chamber +gcode: + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[5].chamber} + +## Pre-heat [6] ## +[menu __main __temp_km __preheat_6] +type: list +name: Preheat {printer["gcode_macro _km_globals"].menu_temperature[6].name} +enable: {printer.idle_timeout.state != "Printing" and + printer["gcode_macro _km_globals"].menu_temperature|length > 6} + +[menu __main __temp_km __preheat_6 __all] +type: command +enable: {printer["gcode_macro _km_globals"].menu_temperature[6] | list | + select('in', ['extruder', 'bed', 'chamber']) | list | length > 1 and + (('extruder' in printer) + ('heater_bed' in printer) + + ('heater_generic chamber' in printer.heaters.available_heaters)) > 1} +name: Preheat all +gcode: + {% set targets = printer["gcode_macro _km_globals"].menu_temperature[6] %} + {% if 'chamber' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={targets.chamber} + {% endif %} + {% if 'bed' in targets and 'heater_bed' in printer %} + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={targets.bed} + {% endif %} + {% if 'extruder' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + targets.extruder} + {% endif %} + +[menu __main __temp_km __preheat_6 __hotend] +type: command +enable: {'extruder' in printer and + 'extruder' in printer["gcode_macro _km_globals"].menu_temperature[6]} +name: Preheat hotend +gcode: + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[6].extruder} + +[menu __main __temp_km __preheat_6 __hotbed] +type: command +enable: {'heater_bed' in printer and + 'bed' in printer["gcode_macro _km_globals"].menu_temperature[6]} +name: Preheat bed +gcode: + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[6].bed} + +[menu __main __temp_km __preheat_6 __chamber] +type: command +enable: {'heater_generic chamber' in printer.heaters.available_heaters and + 'chamber' in printer["gcode_macro _km_globals"].menu_temperature[6]} +name: Preheat chamber +gcode: + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[6].chamber} + +## Pre-heat [7] ## +[menu __main __temp_km __preheat_7] +type: list +name: Preheat {printer["gcode_macro _km_globals"].menu_temperature[7].name} +enable: {printer.idle_timeout.state != "Printing" and + printer["gcode_macro _km_globals"].menu_temperature|length > 7} + +[menu __main __temp_km __preheat_7 __all] +type: command +enable: {printer["gcode_macro _km_globals"].menu_temperature[7] | list | + select('in', ['extruder', 'bed', 'chamber']) | list | length > 1 and + (('extruder' in printer) + ('heater_bed' in printer) + + ('heater_generic chamber' in printer.heaters.available_heaters)) > 1} +name: Preheat all +gcode: + {% set targets = printer["gcode_macro _km_globals"].menu_temperature[7] %} + {% if 'chamber' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={targets.chamber} + {% endif %} + {% if 'bed' in targets and 'heater_bed' in printer %} + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={targets.bed} + {% endif %} + {% if 'extruder' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + targets.extruder} + {% endif %} + +[menu __main __temp_km __preheat_7 __hotend] +type: command +enable: {'extruder' in printer and + 'extruder' in printer["gcode_macro _km_globals"].menu_temperature[7]} +name: Preheat hotend +gcode: + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[7].extruder} + +[menu __main __temp_km __preheat_7 __hotbed] +type: command +enable: {'heater_bed' in printer and + 'bed' in printer["gcode_macro _km_globals"].menu_temperature[7]} +name: Preheat bed +gcode: + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[7].bed} + +[menu __main __temp_km __preheat_7 __chamber] +type: command +enable: {'heater_generic chamber' in printer.heaters.available_heaters and + 'chamber' in printer["gcode_macro _km_globals"].menu_temperature[7]} +name: Preheat chamber +gcode: + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[7].chamber} + +## Pre-heat [8] ## +[menu __main __temp_km __preheat_8] +type: list +name: Preheat {printer["gcode_macro _km_globals"].menu_temperature[8].name} +enable: {printer.idle_timeout.state != "Printing" and + printer["gcode_macro _km_globals"].menu_temperature|length > 8} + +[menu __main __temp_km __preheat_8 __all] +type: command +enable: {printer["gcode_macro _km_globals"].menu_temperature[8] | list | + select('in', ['extruder', 'bed', 'chamber']) | list | length > 1 and + (('extruder' in printer) + ('heater_bed' in printer) + + ('heater_generic chamber' in printer.heaters.available_heaters)) > 1} +name: Preheat all +gcode: + {% set targets = printer["gcode_macro _km_globals"].menu_temperature[8] %} + {% if 'chamber' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={targets.chamber} + {% endif %} + {% if 'bed' in targets and 'heater_bed' in printer %} + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={targets.bed} + {% endif %} + {% if 'extruder' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + targets.extruder} + {% endif %} + +[menu __main __temp_km __preheat_8 __hotend] +type: command +enable: {'extruder' in printer and + 'extruder' in printer["gcode_macro _km_globals"].menu_temperature[8]} +name: Preheat hotend +gcode: + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[8].extruder} + +[menu __main __temp_km __preheat_8 __hotbed] +type: command +enable: {'heater_bed' in printer and + 'bed' in printer["gcode_macro _km_globals"].menu_temperature[8]} +name: Preheat bed +gcode: + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[8].bed} + +[menu __main __temp_km __preheat_8 __chamber] +type: command +enable: {'heater_generic chamber' in printer.heaters.available_heaters and + 'chamber' in printer["gcode_macro _km_globals"].menu_temperature[8]} +name: Preheat chamber +gcode: + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[8].chamber} + +## Pre-heat [9] ## +[menu __main __temp_km __preheat_9] +type: list +name: Preheat {printer["gcode_macro _km_globals"].menu_temperature[9].name} +enable: {printer.idle_timeout.state != "Printing" and + printer["gcode_macro _km_globals"].menu_temperature|length > 9} + +[menu __main __temp_km __preheat_9 __all] +type: command +enable: {printer["gcode_macro _km_globals"].menu_temperature[9] | list | + select('in', ['extruder', 'bed', 'chamber']) | list | length > 1 and + (('extruder' in printer) + ('heater_bed' in printer) + + ('heater_generic chamber' in printer.heaters.available_heaters)) > 1} +name: Preheat all +gcode: + {% set targets = printer["gcode_macro _km_globals"].menu_temperature[9] %} + {% if 'chamber' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={targets.chamber} + {% endif %} + {% if 'bed' in targets and 'heater_bed' in printer %} + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={targets.bed} + {% endif %} + {% if 'extruder' in targets and 'extruder' in printer %} + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + targets.extruder} + {% endif %} + +[menu __main __temp_km __preheat_9 __hotend] +type: command +enable: {'extruder' in printer and + 'extruder' in printer["gcode_macro _km_globals"].menu_temperature[9]} +name: Preheat hotend +gcode: + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[9].extruder} + +[menu __main __temp_km __preheat_9 __hotbed] +type: command +enable: {'heater_bed' in printer and + 'bed' in printer["gcode_macro _km_globals"].menu_temperature[9]} +name: Preheat bed +gcode: + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[9].bed} + +[menu __main __temp_km __preheat_9 __chamber] +type: command +enable: {'heater_generic chamber' in printer.heaters.available_heaters and + 'chamber' in printer["gcode_macro _km_globals"].menu_temperature[9]} +name: Preheat chamber +gcode: + SET_HEATER_TEMPERATURE HEATER=chamber TARGET={ + printer["gcode_macro _km_globals"].menu_temperature[9].chamber} + +## Cooldown ## +[menu __main __temp_km __cooldown_all] +type: command +enable: {printer.idle_timeout.state != "Printing" and + (('extruder' in printer) + ('heater_bed' in printer) + + ('heater_generic chamber' in printer.heaters.available_heaters)) > 1} +name: Cooldown all +gcode: + {% if 'heater_generic chamber' in printer.heaters.available_heaters %} + SET_HEATER_TEMPERATURE HEATER=chamber TARGET=0 + {% endif %} + {% if 'heater_bed' in printer %} + SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET=0 + {% endif %} + {% if 'extruder' in printer%} + SET_HEATER_TEMPERATURE HEATER={printer.toolhead.extruder} TARGET=0 + {% endif %} + +[menu __main __temp_km __cooldown_hotend] +type: command +enable: {printer.idle_timeout.state != "Printing" and 'extruder' in printer} +name: Cooldown hotend +gcode: M104 S0 + +[menu __main __temp_km __cooldown_hotbed] +type: command +enable: {printer.idle_timeout.state != "Printing" and 'heater_bed' in printer} +name: Cooldown bed +gcode: M140 S0 + +[menu __main __temp_km __cooldown_chamber] +type: command +enable: {printer.idle_timeout.state != "Printing" and + 'heater_generic chamber' in printer.heaters.available_heaters} +name: Cooldown chamber +gcode: M141 S0 diff --git a/klipper/DNV-TPU-Ender3/klipper_config/leds/neopixel.cfg b/klipper/DNV-TPU-Ender3/klipper_config/leds/neopixel.cfg new file mode 100644 index 0000000..b6243bf --- /dev/null +++ b/klipper/DNV-TPU-Ender3/klipper_config/leds/neopixel.cfg @@ -0,0 +1,20 @@ +[neopixel ledjes] +pin: PC7 +# The pin connected to the neopixel. This parameter must be +# provided. +chain_count: 6 +# The number of Neopixel chips that are "daisy chained" to the +# provided pin. The default is 1 (which indicates only a single +# Neopixel is connected to the pin). +color_order: GRB +# Set the pixel order required by the LED hardware (using a string +# containing the letters R, G, B, W with W optional). Alternatively, +# this may be a comma separated list of pixel orders - one for each +# LED in the chain. The default is GRB. +initial_RED: 1.0 +initial_GREEN: 1.0 +initial_BLUE: 1.0 +#initial_WHITE: 0.0 +# See the "led" section for information on these parameters. + +#[include neopixels.cfg] diff --git a/klipper/DNV-TPU-Ender3/klipper_config/leds/neopixels.cfg b/klipper/DNV-TPU-Ender3/klipper_config/leds/neopixels.cfg new file mode 100644 index 0000000..2dd37d3 --- /dev/null +++ b/klipper/DNV-TPU-Ender3/klipper_config/leds/neopixels.cfg @@ -0,0 +1,118 @@ +[gcode_macro lighten_rainbow] +gcode: + SET_LED LED=ledjes RED=1 GREEN=0 BLUE=0 INDEX=1 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=1 GREEN=0.5 BLUE=0 INDEX=2 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=1 GREEN=1 BLUE=0 INDEX=3 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0 GREEN=1 BLUE=0 INDEX=4 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=1 INDEX=5 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0.3 GREEN=0 BLUE=0.5 INDEX=6 TRANSMIT=0 SYNC=0 +# SET_LED LED=ledjes RED=0.6 GREEN=0 BLUE=0.8 INDEX=7 TRANSMIT=1 SYNC=0 + +[gcode_macro led_update_temperatures] +gcode: + {% set TRANSMIT = params.TRANSMIT|default(1) %} + + {% set extr_temp = printer.extruder.temperature %} + #if the extruder is off + {% if printer.extruder.target == 0 %} + #Set the LED to red if the extruder is off but is still hot, otherwise + # set the color to OFF + {% if extr_temp > 60.0 %} + SET_LED LED=ledjes RED=1 GREEN=0 BLUE=0 INDEX=3 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=1 GREEN=0 BLUE=0 INDEX=4 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=1 GREEN=0 BLUE=0 INDEX=5 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=1 GREEN=0 BLUE=0 INDEX=6 TRANSMIT=0 SYNC=0 + {% else %} + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=0 INDEX=3 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=0 INDEX=4 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=0 INDEX=5 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=0 INDEX=6 TRANSMIT=0 SYNC=0 + {% endif %} + {% else %} + {% set red = 1 %} + {% set green = 0.003 * extr_temp %} + {% set green = 1 - green %} + {% if green < 0 %} + {% set green = 0 %} + {% endif %} + {% if extr_temp < 61 %} + {% set blue = 1 %} + {% elif extr_temp < 121 %} + {% set blue = 0.8 %} + {% elif extr_temp < 181 %} + {% set blue = 0.7 %} + {% elif extr_temp < 215 %} + {% set blue = 0.5 %} + {% else %} + {% set blue = 0.3 %} + {% endif %} + SET_LED LED=ledjes RED={ red|float * 1 } GREEN={ '%0.1f'| format(green|float) } BLUE={ '%0.1f'| format(blue|float) } INDEX=3 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED={ red|float * 1 } GREEN={ '%0.1f'| format(green|float) } BLUE={ '%0.1f'| format(blue|float) } INDEX=4 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED={ red|float * 1 } GREEN={ '%0.1f'| format(green|float) } BLUE={ '%0.1f'| format(blue|float) } INDEX=5 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED={ red|float * 1 } GREEN={ '%0.1f'| format(green|float) } BLUE={ '%0.1f'| format(blue|float) } INDEX=6 TRANSMIT=0 SYNC=0 + {% endif %} + + {% set bed_temp = printer.heater_bed.temperature %} + #if the hotbed is off + {% if printer.heater_bed.target == 0 %} + #Set the LED to red if the extruder is off but is still hot, otherwise + # set the color to OFF + {% if bed_temp > 34.0 %} + SET_LED LED=ledjes RED=1 GREEN=0 BLUE=0 INDEX=1 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=1 GREEN=0 BLUE=0 INDEX=2 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=1 GREEN=0 BLUE=0 INDEX=3 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=1 GREEN=0 BLUE=0 INDEX=4 TRANSMIT={ TRANSMIT } SYNC=0 + {% else %} + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=0 INDEX=1 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=0 INDEX=2 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=0 INDEX=3 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=0 INDEX=4 TRANSMIT={ TRANSMIT } SYNC=0 + {% endif %} + {% else %} + {% set red = 1 %} + {% set green = 0.003 * bed_temp %} + {% set green = 0,55 - green %} + {% if green < 0 %} + {% set green = 0 %} + {% endif %} + {% if bed_temp < 42 %} + {% set blue = 1 %} + {% elif bed_temp < 55 %} + {% set blue = 0.6 %} + {% elif bed_temp < 68 %} + {% set blue = 0.5 %} + {% else %} + {% set blue = 0.3 %} + {% endif %} + SET_LED LED=ledjes RED={ red|float * 1 } GREEN={ '%0.1f'| format(green|float) } BLUE={ '%0.1f'| format(blue|float) } INDEX=1 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED={ red|float * 1 } GREEN={ '%0.1f'| format(green|float) } BLUE={ '%0.1f'| format(blue|float) } INDEX=2 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED={ red|float * 1 } GREEN={ '%0.1f'| format(green|float) } BLUE={ '%0.1f'| format(blue|float) } INDEX=3 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED={ red|float * 1 } GREEN={ '%0.1f'| format(green|float) } BLUE={ '%0.1f'| format(blue|float) } INDEX=4 TRANSMIT={ TRANSMIT } SYNC=0 + {% endif %} + +[gcode_macro led_update_printer_status] +gcode: + {% set TRANSMIT = params.TRANSMIT|default(1) %} + + {% if printer.idle_timeout.state == "Idle" %} + SET_LED LED=ledjes RED=0 GREEN=1 BLUE=0 INDEX=1 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=0 INDEX=5 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=0 INDEX=6 TRANSMIT=0 SYNC=0 + {% elif printer.idle_timeout.state == "Ready" %} + SET_LED LED=ledjes RED=0 GREEN=1 BLUE=0 INDEX=1 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=1 GREEN=1 BLUE=0 INDEX=5 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=0 GREEN=0 BLUE=0 INDEX=6 TRANSMIT=0 SYNC=0 + {% elif printer.idle_timeout.state == "Printing" %} + SET_LED LED=ledjes RED=0 GREEN=1 BLUE=0 INDEX=1 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=1 GREEN=1 BLUE=0 INDEX=5 TRANSMIT=0 SYNC=0 + SET_LED LED=ledjes RED=1 GREEN=0 BLUE=0 INDEX=6 TRANSMIT=0 SYNC=0 + {% endif %} + + SET_LED LED=ledjes RED=1 GREEN=1 BLUE=1 INDEX=2 TRANSMIT={ TRANSMIT } SYNC=0 + +[delayed_gcode led_update] +initial_duration: 5 +gcode: + led_update_temperatures TRANSMIT=0 + led_update_printer_status TRANSMIT=1 + UPDATE_DELAYED_GCODE ID=led_update DURATION=5 diff --git a/klipper/DNV-TPU-Ender3/klipper_config/macros/bed_mesh.cfg b/klipper/DNV-TPU-Ender3/klipper_config/macros/bed_mesh.cfg index dd150b4..e0bb66a 100644 --- a/klipper/DNV-TPU-Ender3/klipper_config/macros/bed_mesh.cfg +++ b/klipper/DNV-TPU-Ender3/klipper_config/macros/bed_mesh.cfg @@ -1,8 +1,8 @@ [bed_mesh] speed: 100 horizontal_move_z: 5 -mesh_min: 10,10 -mesh_max: 265,230 +mesh_min: 5,5 +mesh_max: 220,195 algorithm: bicubic bicubic_tension: 0.1 probe_count: 7,7 diff --git a/klipper/DNV-TPU-Ender3/klipper_config/macros/bed_mesh_org.cfg b/klipper/DNV-TPU-Ender3/klipper_config/macros/bed_mesh_org.cfg new file mode 100644 index 0000000..6818608 --- /dev/null +++ b/klipper/DNV-TPU-Ender3/klipper_config/macros/bed_mesh_org.cfg @@ -0,0 +1,69 @@ +# Copyright (C) 2022 Justin Schuh +# +# This file may be distributed under the terms of the GNU GPLv3 license. +# +# Credit to original source: +# https://gist.github.com/ChipCE/95fdbd3c2f3a064397f9610f915f7d02 + +[gcode_macro bed_mesh_calibrate] +rename_existing: _KM_BED_MESH_CALIBRATE_BASE +description: Wraps BED_MESH_CALIBRATE, scaling probe count to specified area. + Usage: See Klipper documentation. +gcode: + {% set km = printer["gcode_macro _km_globals"] %} + {% set probe_mesh_padding = km.probe_mesh_padding %} + {% set probe_min_count = km.probe_min_count %} + {% set probe_count_scale = km.probe_count_scale %} + {% set bed_mesh = printer.configfile.config.bed_mesh %} + + # don't have the math functions available to work on a delta bed. + {%if "mesh_radius" not in bed_mesh %} + {% set safe_min_x = bed_mesh.mesh_min.split(",")[0]|float %} + {% set safe_min_y = bed_mesh.mesh_min.split(",")[1]|float %} + {% set safe_max_x = bed_mesh.mesh_max.split(",")[0]|float %} + {% set safe_max_y = bed_mesh.mesh_max.split(",")[1]|float %} + + {% if "MESH_MIN" in params %} + {% set mesh_min_x = (params.MESH_MIN.split(",")[0]|float - + probe_mesh_padding, safe_min_x)|max %} + {% set mesh_min_y = (params.MESH_MIN.split(",")[1]|float - + probe_mesh_padding, safe_min_y)|max %} + {% else %} + {% set mesh_min_x = safe_min_x %} + {% set mesh_min_y = safe_min_y %} + {% endif %} + {% if "MESH_MAX" in params %} + {% set mesh_max_x = (params.MESH_MAX.split(",")[0]|float + + probe_mesh_padding, safe_max_x)|min %} + {% set mesh_max_y = (params.MESH_MAX.split(",")[1]|float + + probe_mesh_padding, safe_max_y)|min %} + {% else %} + {% set mesh_max_x = safe_max_x %} + {% set mesh_max_y = safe_max_y %} + {% endif %} + + {% set max_x_probes = (params.PROBE_COUNT | + default(bed_mesh.probe_count)).split(",")[0]|int %} + {% set max_y_probes = (params.PROBE_COUNT | + default(bed_mesh.probe_count)).split(",")[1]|int %} + + {% set x_probes = (max_x_probes * (mesh_max_x - mesh_min_x) / + (safe_max_x - safe_min_x) * probe_count_scale) + | round(0) | int %} + {% set x_probes = ((x_probes, probe_min_count)|max, max_x_probes)|min %} + + {% set y_probes = (max_y_probes * (mesh_max_y - mesh_min_y ) / + (safe_max_y - safe_min_y) * probe_count_scale ) + | round(0) | int %} + {% set y_probes = ((y_probes, probe_min_count)|max, max_y_probes)|min %} + + {% set dummy = params.__setitem__("MESH_MIN", mesh_min_x~","~mesh_min_y) %} + {% set dummy = params.__setitem__("MESH_MAX", mesh_max_x~","~mesh_max_y) %} + {% set dummy = params.__setitem__("PROBE_COUNT", x_probes~","~y_probes) %} + {% endif %} + _km_bed_mesh_calibrate_base{%for k in params%}{ + ' '~k~'="'~params[k]~'"'}{%endfor%} + +[gcode_macro g29] +gcode: + BED_MESH_CALIBRATE \ No newline at end of file diff --git a/klipper/DNV-TPU-Ender3/klipper_config/macros/jschuh_macros_cfg b/klipper/DNV-TPU-Ender3/klipper_config/macros/jschuh_macros_cfg new file mode 100644 index 0000000..9bdd05d --- /dev/null +++ b/klipper/DNV-TPU-Ender3/klipper_config/macros/jschuh_macros_cfg @@ -0,0 +1,56 @@ +# All customizations are documented in globals.cfg. Just copy a variable from +# there into the section below, and change the value to meet your needs. + +[gcode_macro _km_options] +# These are examples of some likely customizations: +# Any sheets in the below list will be available with a configurable offset. +#variable_bed_surfaces: ['smooth_1','texture_1'] +# Length (in mm) of filament to load (bowden tubes will be longer). +#variable_load_length: 90.0 +# Hide the Octoprint LCD menu since I don't use it. +#variable_menu_show_octoprint: False +# Customize the filament menus (up to 10 entries). +#variable_menu_temperature: [ +# {'name' : 'PLA', 'extruder' : 200.0, 'bed' : 60.0}, +# {'name' : 'PETG', 'extruder' : 230.0, 'bed' : 85.0}, +# {'name' : 'ABS', 'extruder' : 245.0, 'bed' : 110.0, 'chamber' : 60}] +# Length of filament (in millimeters) to purge at print start. +#variable_start_purge_length: 30 # This value works for most setups. +gcode: # This line is required by Klipper. +# Any code you put here will run at klipper startup, after the initialization +# for these macros. For example, you could uncomment the following line to +# automatically adjust your bed surface offsets to account for any changes made +# to your Z endstop or probe offset. +# ADJUST_SURFACE_OFFSETS + +# This line includes all the standard macros. +[include klipper-macros/*.cfg] +# Uncomment to include features that require specific hardware support. +# LCD menu support for features like bed surface selection and pause next layer. +[include klipper-macros/optional/lcd_menus.cfg] +# Optimized bed leveling +[include klipper-macros/optional/bed_mesh.cfg] + +# The sections below here are required for the macros to work. If your config +# already has some of these sections you should merge the duplicates into one +# (or if they are identical just remove one of them). +[idle_timeout] +gcode: + _KM_IDLE_TIMEOUT # This line must be in your idle_timeout section. + +[pause_resume] + +[respond] + +[save_variables] +filename: ~/printer_data/variables.cfg # UPDATE THIS FOR YOUR PATH!!! + +#[virtual_sdcard] +#path: ~/gcode_files # UPDATE THIS FOR YOUR PATH!!! + +[display_status] + +# Uncomment the sections below if Fluidd complains (because it's confused). +#[gcode_macro CANCEL_PRINT] +#rename_existing: CANCEL_PRINT_FAKE_BASE +#gcode: CANCEL_PRINT_FAKE_BASE {rawparams} diff --git a/klipper/DNV-TPU-Ender3/klipper_config/macros/kiauh_macros.cfg b/klipper/DNV-TPU-Ender3/klipper_config/macros/kiauh_macros.cfg new file mode 100644 index 0000000..9f4cf1f --- /dev/null +++ b/klipper/DNV-TPU-Ender3/klipper_config/macros/kiauh_macros.cfg @@ -0,0 +1,59 @@ +################################################################################ +# ~~~~~~~~~~~~~~~~~~~~~~~~ AUTOCREATED WITH KIAUH ~~~~~~~~~~~~~~~~~~~~~~~~~~ # +################################################################################ +# Recommended macros and config entries if you use Mainsail or Fluidd! # +# You can edit or delete those macros if you already defined them elsewhere! # +################################################################################ + +[pause_resume] + +[display_status] + +[gcode_macro CANCEL_PRINT] +rename_existing: BASE_CANCEL_PRINT +gcode: + TURN_OFF_HEATERS + CLEAR_PAUSE + SDCARD_RESET_FILE + BASE_CANCEL_PRINT + +[gcode_macro PAUSE] +rename_existing: BASE_PAUSE +gcode: + ##### set defaults ##### + {% set x = params.X|default(230) %} #edit to your park position + {% set y = params.Y|default(230) %} #edit to your park position + {% set z = params.Z|default(10)|float %} #edit to your park position + {% set e = params.E|default(1) %} #edit to your retract length + ##### calculate save lift position ##### + {% set max_z = printer.toolhead.axis_maximum.z|float %} + {% set act_z = printer.toolhead.position.z|float %} + {% set lift_z = z|abs %} + {% if act_z < (max_z - lift_z) %} + {% set z_safe = lift_z %} + {% else %} + {% set z_safe = max_z - act_z %} + {% endif %} + ##### end of definitions ##### + SAVE_GCODE_STATE NAME=PAUSE_state + BASE_PAUSE + G91 + G1 E-{e} F2100 + G1 Z{z_safe} + G90 + G1 X{x} Y{y} F6000 + + +[gcode_macro RESUME] +rename_existing: BASE_RESUME +gcode: + ##### set defaults ##### + {% set e = params.E|default(1) %} #edit to your retract length + G91 + G1 E{e} F2100 + G90 + RESTORE_GCODE_STATE NAME=PAUSE_state MOVE=1 + BASE_RESUME + +################################################################################ +################################################################################ diff --git a/klipper/DNV-TPU-Ender3/klipper_config/macros/standaardMacros.cfg b/klipper/DNV-TPU-Ender3/klipper_config/macros/standaardMacros.cfg new file mode 100644 index 0000000..8c33cce --- /dev/null +++ b/klipper/DNV-TPU-Ender3/klipper_config/macros/standaardMacros.cfg @@ -0,0 +1,125 @@ +[pause_resume] + +[gcode_macro PAUSE] +description: Pause the actual running print +rename_existing: PAUSE_BASE +# change this if you need more or less extrusion +variable_extrude: 1.0 +gcode: + ##### read E from pause macro ##### + {% set E = printer["gcode_macro PAUSE"].extrude|float %} + ##### set park positon for x and y ##### + # default is your max posion from your printer.cfg + {% set x_park = printer.toolhead.axis_maximum.x|float - 5.0 %} + {% set y_park = printer.toolhead.axis_maximum.y|float - 5.0 %} + ##### calculate save lift position ##### + {% set max_z = printer.toolhead.axis_maximum.z|float %} + {% set act_z = printer.toolhead.position.z|float %} + {% if act_z < (max_z - 2.0) %} + {% set z_safe = 2.0 %} + {% else %} + {% set z_safe = max_z - act_z %} + {% endif %} + ##### end of definitions ##### + PAUSE_BASE + G91 + {% if printer.extruder.can_extrude|lower == 'true' %} + G1 E-{E} F2100 + {% else %} + {action_respond_info("Extruder not hot enough")} + {% endif %} + {% if "xyz" in printer.toolhead.homed_axes %} + G1 Z{z_safe} F900 + G90 + G1 X{x_park} Y{y_park} F6000 + {% else %} + {action_respond_info("Printer not homed")} + {% endif %} + +[gcode_macro RESUME] +description: Resume the actual running print +rename_existing: RESUME_BASE +gcode: + ##### read E from pause macro ##### + {% set E = printer["gcode_macro PAUSE"].extrude|float %} + #### get VELOCITY parameter if specified #### + {% if 'VELOCITY' in params|upper %} + {% set get_params = ('VELOCITY=' + params.VELOCITY) %} + {%else %} + {% set get_params = "" %} + {% endif %} + ##### end of definitions ##### + {% if printer.extruder.can_extrude|lower == 'true' %} + G91 + G1 E{E} F2100 + {% else %} + {action_respond_info("Extruder not hot enough")} + {% endif %} + RESUME_BASE {get_params} + +[gcode_macro CANCEL_PRINT] +description: Cancel the actual running print +rename_existing: CANCEL_PRINT_BASE +gcode: + TURN_OFF_HEATERS + CANCEL_PRINT_BASE + +# The print bed can move so far to the front, that the nozzle can reach the +# plastic cover of the print bed heater cable (only when the bed is moved by +# hand). By homing the Y axis before the X axis, it is ensured the nozzle will +# not melt through the plastic part. +# BEWARE: You will lose the ability to home axes individually. The printer will +# always home all axes for every G28 command. +#[homing_override] +#gcode: +# G28 Y0 +# G28 X0 +# G28 Z0 + +# ================================================================================ +# GCode Macro: START_PRINT +# Add START_PRINT in your slicers starting script. +# ================================================================================ +[gcode_macro START_PRINT] +gcode: + G28; Home all axes + BED_MESH_CALIBRATE + G92 E0; Reset Extruder + G1 Z25.0 F3000; Move Z Axis up little to prevent scratching of Heat Bed + G1 X0.1 Y20 Z0.3 F5000.0; Move to start position + G1 X0.1 Y200.0 Z0.3 F1500.0 E15; Draw the first line + G1 X0.4 Y200.0 Z0.3 F5000.0; Move to side a little + G1 X0.4 Y20 Z0.3 F1500.0 E30; Draw the second line + G92 E0; Reset Extruder + G1 Z25.0 F3000; Move Z Axis up little to prevent scratching of Heat Bed + M118 punt gcode_macro START_PRINT + +# ================================================================================ +# GCode Macro: END_PRINT +# Add END_PRINT in your slicers ending script +# ================================================================================ +[gcode_macro END_PRINT] +gcode: + G91; Relative Positioning + G1 Z+10; Move Z up so it doesn't hit anything + G90; Absolute Positioning + G1 Y190 F1500; bring Y up front +# G10 ; set tool offset? or retract? +# G1 E-10 F300; Retrack-10 + G1 X10 Y220 F2000; Move to X10, Y220 + M104 S0; Turn off Extruder temperature (set it to 0) + M140 S0; Turn off Bed temperature (set it to 0) + M106 S0; turn off cooling fan + M84; Disable steppers +# ================================================================================ +# GCode Macro G29 +# Fires when G29 is sent to the printer +# ================================================================================ +#[gcode_macro G29] +#gcode: +# G1 Z10 F600 +# G4 P200 +# G1 Z10 F600 +# G4 P100 + +### Raspberry Pi als MCU om de GPIO te gebruiken voor in- en output diff --git a/klipper/DNV-TPU-Ender3/klipper_config/moonraker.conf b/klipper/DNV-TPU-Ender3/klipper_config/moonraker.conf index a51ec0f..80222b8 100644 --- a/klipper/DNV-TPU-Ender3/klipper_config/moonraker.conf +++ b/klipper/DNV-TPU-Ender3/klipper_config/moonraker.conf @@ -12,6 +12,7 @@ klippy_uds_address: /tmp/klippy_uds trusted_clients: ; 10.0.0.0/8 127.0.0.0/8 + 10.11.98.0/24 169.254.0.0/16 ; 172.16.0.0/12 ; 192.168.0.0/16 diff --git a/klipper/DNV-TPU-Ender3/klipper_config/printer.cfg b/klipper/DNV-TPU-Ender3/klipper_config/printer.cfg index d54ff3c..810b45e 100644 --- a/klipper/DNV-TPU-Ender3/klipper_config/printer.cfg +++ b/klipper/DNV-TPU-Ender3/klipper_config/printer.cfg @@ -16,8 +16,12 @@ # Met de DropEffect OmniDrop V2.1 is het punt links-beneden (dus het 0-punt): X = 12 en Y = 30 +# Invoegen van de standaard macros, geknipt uit printer.cfg +#[include macros/standaardMacros.cfg] # Invoegen van macros. Deze komen uit: https://github.com/jschuh/klipper-macros [include jschuh_macros.cfg] +[include scherm/menu.cfg] +[include leds/neopixel.cfg] [exclude_object] @@ -46,9 +50,9 @@ enable_pin: !PB11 microsteps: 16 rotation_distance: 40 endstop_pin: ^PC1 -position_endstop: -9 -position_min: -9 -position_max: 226 +position_endstop: -51 +position_min: -51 +position_max: 195 homing_speed: 50 [tmc2209 stepper_y] @@ -95,7 +99,7 @@ screw4: 29,206 speed: 80 horizontal_move_z: 5 mesh_min: 25,10 -mesh_max: 200,170 +mesh_max: 200,150 probe_count: 5,5 [extruder] @@ -155,27 +159,6 @@ max_accel: 3000 max_z_velocity: 5 max_z_accel: 100 -[neopixel ledjes] -pin: PC7 -# The pin connected to the neopixel. This parameter must be -# provided. -chain_count: 6 -# The number of Neopixel chips that are "daisy chained" to the -# provided pin. The default is 1 (which indicates only a single -# Neopixel is connected to the pin). -color_order: GRB -# Set the pixel order required by the LED hardware (using a string -# containing the letters R, G, B, W with W optional). Alternatively, -# this may be a comma separated list of pixel orders - one for each -# LED in the chain. The default is GRB. -initial_RED: 1.0 -initial_GREEN: 1.0 -initial_BLUE: 1.0 -#initial_WHITE: 0.0 -# See the "led" section for information on these parameters. - -#[include neopixels.cfg] - [static_digital_output usb_pullup_enable] pins: !PC13 @@ -203,132 +186,6 @@ path: ~/printer_data/gcodes [display_status] -[pause_resume] - -[gcode_macro PAUSE] -description: Pause the actual running print -rename_existing: PAUSE_BASE -# change this if you need more or less extrusion -variable_extrude: 1.0 -gcode: - ##### read E from pause macro ##### - {% set E = printer["gcode_macro PAUSE"].extrude|float %} - ##### set park positon for x and y ##### - # default is your max posion from your printer.cfg - {% set x_park = printer.toolhead.axis_maximum.x|float - 5.0 %} - {% set y_park = printer.toolhead.axis_maximum.y|float - 5.0 %} - ##### calculate save lift position ##### - {% set max_z = printer.toolhead.axis_maximum.z|float %} - {% set act_z = printer.toolhead.position.z|float %} - {% if act_z < (max_z - 2.0) %} - {% set z_safe = 2.0 %} - {% else %} - {% set z_safe = max_z - act_z %} - {% endif %} - ##### end of definitions ##### - PAUSE_BASE - G91 - {% if printer.extruder.can_extrude|lower == 'true' %} - G1 E-{E} F2100 - {% else %} - {action_respond_info("Extruder not hot enough")} - {% endif %} - {% if "xyz" in printer.toolhead.homed_axes %} - G1 Z{z_safe} F900 - G90 - G1 X{x_park} Y{y_park} F6000 - {% else %} - {action_respond_info("Printer not homed")} - {% endif %} - -[gcode_macro RESUME] -description: Resume the actual running print -rename_existing: RESUME_BASE -gcode: - ##### read E from pause macro ##### - {% set E = printer["gcode_macro PAUSE"].extrude|float %} - #### get VELOCITY parameter if specified #### - {% if 'VELOCITY' in params|upper %} - {% set get_params = ('VELOCITY=' + params.VELOCITY) %} - {%else %} - {% set get_params = "" %} - {% endif %} - ##### end of definitions ##### - {% if printer.extruder.can_extrude|lower == 'true' %} - G91 - G1 E{E} F2100 - {% else %} - {action_respond_info("Extruder not hot enough")} - {% endif %} - RESUME_BASE {get_params} - -[gcode_macro CANCEL_PRINT] -description: Cancel the actual running print -rename_existing: CANCEL_PRINT_BASE -gcode: - TURN_OFF_HEATERS - CANCEL_PRINT_BASE - -# The print bed can move so far to the front, that the nozzle can reach the -# plastic cover of the print bed heater cable (only when the bed is moved by -# hand). By homing the Y axis before the X axis, it is ensured the nozzle will -# not melt through the plastic part. -# BEWARE: You will lose the ability to home axes individually. The printer will -# always home all axes for every G28 command. -#[homing_override] -#gcode: -# G28 Y0 -# G28 X0 -# G28 Z0 - -# ================================================================================ -# GCode Macro: START_PRINT -# Add START_PRINT in your slicers starting script. -# ================================================================================ -[gcode_macro START_PRINT] -gcode: - G28; Home all axes - BED_MESH_CALIBRATE - G92 E0; Reset Extruder - G1 Z25.0 F3000; Move Z Axis up little to prevent scratching of Heat Bed - G1 X0.1 Y20 Z0.3 F5000.0; Move to start position - G1 X0.1 Y200.0 Z0.3 F1500.0 E15; Draw the first line - G1 X0.4 Y200.0 Z0.3 F5000.0; Move to side a little - G1 X0.4 Y20 Z0.3 F1500.0 E30; Draw the second line - G92 E0; Reset Extruder - G1 Z25.0 F3000; Move Z Axis up little to prevent scratching of Heat Bed - M118 punt gcode_macro START_PRINT - -# ================================================================================ -# GCode Macro: END_PRINT -# Add END_PRINT in your slicers ending script -# ================================================================================ -[gcode_macro END_PRINT] -gcode: - G91; Relative Positioning - G1 Z+10; Move Z up so it doesn't hit anything - G90; Absolute Positioning - G1 Y190 F1500; bring Y up front -# G10 ; set tool offset? or retract? -# G1 E-10 F300; Retrack-10 - G1 X10 Y220 F2000; Move to X10, Y220 - M104 S0; Turn off Extruder temperature (set it to 0) - M140 S0; Turn off Bed temperature (set it to 0) - M106 S0; turn off cooling fan - M84; Disable steppers -# ================================================================================ -# GCode Macro G29 -# Fires when G29 is sent to the printer -# ================================================================================ -#[gcode_macro G29] -#gcode: -# G1 Z10 F600 -# G4 P200 -# G1 Z10 F600 -# G4 P100 - -### Raspberry Pi als MCU om de GPIO te gebruiken voor in- en output - [mcu rpi] serial: /tmp/klipper_host_mcu @@ -347,593 +204,6 @@ shaper_type_x: mzv shaper_freq_y: 41.4 shaper_type_y: ei -### menu main ### -[menu __main] -type: list -name: Main - -### menu tune ### -[menu __main __tune] -type: list -enable: {printer.idle_timeout.state == "Printing"} -name: Afstellen - -[menu __main __tune __speed] -type: input -name: Snelheid: {'%3d' % (menu.input*100)}% -input: {printer.gcode_move.speed_factor} -input_min: 0.01 -input_max: 5 -input_step: 0.01 -realtime: True -gcode: - M220 S{'%d' % (menu.input*100)} - -[menu __main __tune __flow] -type: input -name: Flow: {'%3d' % (menu.input*100)}% -input: {printer.gcode_move.extrude_factor} -input_min: 0.01 -input_max: 2 -input_step: 0.01 -realtime: True -gcode: - M221 S{'%d' % (menu.input*100)} - -[menu __main __tune __offsetz] -type: input -name: Offset Z:{'%05.3f' % menu.input} -input: {printer.gcode_move.homing_origin.z} -input_min: -5 -input_max: 5 -input_step: 0.005 -realtime: True -gcode: - SET_GCODE_OFFSET Z={'%.3f' % menu.input} MOVE=1 - -### menu virtual sdcard ### -[menu __main __sdcard] -type: vsdlist -enable: {('virtual_sdcard' in printer)} -name: SD Kaart - -[menu __main __sdcard __start] -type: command -enable: {('virtual_sdcard' in printer) and printer.virtual_sdcard.file_path and not printer.virtual_sdcard.is_active} -name: Start printen -gcode: M24 - -[menu __main __sdcard __resume] -type: command -enable: {('virtual_sdcard' in printer) and printer.print_stats.state == "paused"} -name: Herstart printen -gcode: - {% if "pause_resume" in printer %} - RESUME - {% else %} - M24 - {% endif %} - -[menu __main __sdcard __pause] -type: command -enable: {('virtual_sdcard' in printer) and printer.print_stats.state == "printing"} -name: Pauseer printen -gcode: - {% if "pause_resume" in printer %} - PAUSE - {% else %} - M25 - {% endif %} - -[menu __main __sdcard __cancel] -type: command -enable: {('virtual_sdcard' in printer) and (printer.print_stats.state == "printing" or printer.print_stats.state == "paused")} -name: Annuleer printen -gcode: - {% if 'pause_resume' in printer %} - CANCEL_PRINT - {% else %} - M25 - M27 - M26 S0 - TURN_OFF_HEATERS - {% if printer.toolhead.position.z <= printer.toolhead.axis_maximum.z - 5 %} - G91 - G0 Z5 F1000 - G90 - {% endif %} - {% endif %} - -### menu control ### -[menu __main __control] -type: list -name: Control - -[menu __main __control __home] -type: command -enable: {not printer.idle_timeout.state == "Printing"} -name: Home All -gcode: G28 - -[menu __main __control __homez] -type: command -enable: {not printer.idle_timeout.state == "Printing"} -name: Home Z -gcode: G28 Z - -[menu __main __control __homexy] -type: command -enable: {not printer.idle_timeout.state == "Printing"} -name: Home X/Y -gcode: G28 X Y - -[menu __main __control __disable] -type: command -name: Steppers uit -gcode: - M84 - M18 - -[menu __main __control __fanonoff] -type: input -enable: {'fan' in printer} -name: Koeling: {'ON ' if menu.input else 'OFF'} -input: {printer.fan.speed} -input_min: 0 -input_max: 1 -input_step: 1 -gcode: - M106 S{255 if menu.input else 0} - -[menu __main __control __fanspeed] -type: input -enable: {'fan' in printer} -name: Snelheid koeler: {'%3d' % (menu.input*100)}% -input: {printer.fan.speed} -input_min: 0 -input_max: 1 -input_step: 0.01 -gcode: - M106 S{'%d' % (menu.input*255)} - -[menu __main __control __caselightonoff] -type: input -enable: {'output_pin caselight' in printer} -name: Verlichting: {'ON ' if menu.input else 'OFF'} -input: {printer['output_pin caselight'].value} -input_min: 0 -input_max: 1 -input_step: 1 -gcode: - SET_PIN PIN=caselight VALUE={1 if menu.input else 0} - -[menu __main __control __caselightpwm] -type: input -enable: {'output_pin caselight' in printer} -name: Verlichting: {'%3d' % (menu.input*100)}% -input: {printer['output_pin caselight'].value} -input_min: 0.0 -input_max: 1.0 -input_step: 0.01 -gcode: - SET_PIN PIN=caselight VALUE={menu.input} - -### menu move 10mm ### -[menu __main __control __move_10mm] -type: list -enable: {not printer.idle_timeout.state == "Printing"} -name: Verplaats 10mm - -[menu __main __control __move_10mm __axis_x] -type: input -name: Verplaats X:{'%05.1f' % menu.input} -input: {printer.gcode_move.gcode_position.x} -input_min: {printer.toolhead.axis_minimum.x} -input_max: {printer.toolhead.axis_maximum.x} -input_step: 10.0 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - G90 - G1 X{menu.input} - RESTORE_GCODE_STATE NAME=__move__axis - -[menu __main __control __move_10mm __axis_y] -type: input -name: Verplaats Y:{'%05.1f' % menu.input} -input: {printer.gcode_move.gcode_position.y} -input_min: {printer.toolhead.axis_minimum.y} -input_max: {printer.toolhead.axis_maximum.y} -input_step: 10.0 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - G90 - G1 Y{menu.input} - RESTORE_GCODE_STATE NAME=__move__axis - -[menu __main __control __move_10mm __axis_z] -type: input -enable: {not printer.idle_timeout.state == "Printing"} -name: Verplaats Z:{'%05.1f' % menu.input} -input: {printer.gcode_move.gcode_position.z} -input_min: 0 -input_max: {printer.toolhead.axis_maximum.z} -input_step: 10.0 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - G90 - G1 Z{menu.input} - RESTORE_GCODE_STATE NAME=__move__axis - -[menu __main __control __move_10mm __axis_e] -type: input -enable: {not printer.idle_timeout.state == "Printing"} -name: Draai E:{'%+06.1f' % menu.input} -input: 0 -input_min: -{printer.configfile.config.extruder.max_extrude_only_distance|default(50)} -input_max: {printer.configfile.config.extruder.max_extrude_only_distance|default(50)} -input_step: 10.0 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - M83 - G1 E{menu.input} F240 - RESTORE_GCODE_STATE NAME=__move__axis - -### menu move 1mm ### -[menu __main __control __move_1mm] -type: list -enable: {not printer.idle_timeout.state == "Printing"} -name: Verplaats 1mm - -[menu __main __control __move_1mm __axis_x] -type: input -name: Verplaats X:{'%05.1f' % menu.input} -input: {printer.gcode_move.gcode_position.x} -input_min: {printer.toolhead.axis_minimum.x} -input_max: {printer.toolhead.axis_maximum.x} -input_step: 1.0 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - G90 - G1 X{menu.input} - RESTORE_GCODE_STATE NAME=__move__axis - -[menu __main __control __move_1mm __axis_y] -type: input -name: Verplaats Y:{'%05.1f' % menu.input} -input: {printer.gcode_move.gcode_position.y} -input_min: {printer.toolhead.axis_minimum.y} -input_max: {printer.toolhead.axis_maximum.y} -input_step: 1.0 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - G90 - G1 Y{menu.input} - RESTORE_GCODE_STATE NAME=__move__axis - -[menu __main __control __move_1mm __axis_z] -type: input -enable: {not printer.idle_timeout.state == "Printing"} -name: Verplaats Z:{'%05.1f' % menu.input} -input: {printer.gcode_move.gcode_position.z} -input_min: 0 -input_max: {printer.toolhead.axis_maximum.z} -input_step: 1.0 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - G90 - G1 Z{menu.input} - RESTORE_GCODE_STATE NAME=__move__axis - -[menu __main __control __move_1mm __axis_e] -type: input -enable: {not printer.idle_timeout.state == "Printing"} -name: Draai E:{'%+06.1f' % menu.input} -input: 0 -input_min: -{printer.configfile.config.extruder.max_extrude_only_distance|default(50)} -input_max: {printer.configfile.config.extruder.max_extrude_only_distance|default(50)} -input_step: 1.0 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - M83 - G1 E{menu.input} F240 - RESTORE_GCODE_STATE NAME=__move__axis - -### menu move 0.1mm ### -[menu __main __control __move_01mm] -type: list -enable: {not printer.idle_timeout.state == "Printing"} -name: Verplaats 0.1mm - -[menu __main __control __move_01mm __axis_x] -type: input -name: Verplaats X:{'%05.1f' % menu.input} -input: {printer.gcode_move.gcode_position.x} -input_min: {printer.toolhead.axis_minimum.x} -input_max: {printer.toolhead.axis_maximum.x} -input_step: 0.1 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - G90 - G1 X{menu.input} - RESTORE_GCODE_STATE NAME=__move__axis - -[menu __main __control __move_01mm __axis_y] -type: input -name: Verplaats Y:{'%05.1f' % menu.input} -input: {printer.gcode_move.gcode_position.y} -input_min: {printer.toolhead.axis_minimum.y} -input_max: {printer.toolhead.axis_maximum.y} -input_step: 0.1 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - G90 - G1 Y{menu.input} - RESTORE_GCODE_STATE NAME=__move__axis - -[menu __main __control __move_01mm __axis_z] -type: input -enable: {not printer.idle_timeout.state == "Printing"} -name: Verplaats Z:{'%05.1f' % menu.input} -input: {printer.gcode_move.gcode_position.z} -input_min: 0 -input_max: {printer.toolhead.axis_maximum.z} -input_step: 0.1 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - G90 - G1 Z{menu.input} - RESTORE_GCODE_STATE NAME=__move__axis - -[menu __main __control __move_01mm __axis_e] -type: input -enable: {not printer.idle_timeout.state == "Printing"} -name: Draai E:{'%+06.1f' % menu.input} -input: 0 -input_min: -{printer.configfile.config.extruder.max_extrude_only_distance|default(50)} -input_max: {printer.configfile.config.extruder.max_extrude_only_distance|default(50)} -input_step: 0.1 -gcode: - SAVE_GCODE_STATE NAME=__move__axis - M83 - G1 E{menu.input} F240 - RESTORE_GCODE_STATE NAME=__move__axis - -### menu temperature ### -[menu __main __temp] -type: list -name: Temperatuur - -[menu __main __temp __hotend0_target] -type: input -enable: {('extruder' in printer) and ('extruder' in printer.heaters.available_heaters)} -name: {"Ex0:%3.0f (%4.0f)" % (menu.input, printer.extruder.temperature)} -input: {printer.extruder.target} -input_min: 0 -input_max: {printer.configfile.config.extruder.max_temp} -input_step: 1 -gcode: M104 T0 S{'%.0f' % menu.input} - -[menu __main __temp __hotend1_target] -type: input -enable: {('extruder1' in printer) and ('extruder1' in printer.heaters.available_heaters)} -name: {"Ex1:%3.0f (%4.0f)" % (menu.input, printer.extruder1.temperature)} -input: {printer.extruder1.target} -input_min: 0 -input_max: {printer.configfile.config.extruder1.max_temp} -input_step: 1 -gcode: M104 T1 S{'%.0f' % menu.input} - -[menu __main __temp __hotbed_target] -type: input -enable: {'heater_bed' in printer} -name: {"Bed:%3.0f (%4.0f)" % (menu.input, printer.heater_bed.temperature)} -input: {printer.heater_bed.target} -input_min: 0 -input_max: {printer.configfile.config.heater_bed.max_temp} -input_step: 1 -gcode: M140 S{'%.0f' % menu.input} - -[menu __main __temp __preheat_pla] -type: list -name: Voorverwarmen PLA - -[menu __main __temp __preheat_pla __all] -type: command -enable: {('extruder' in printer) and ('heater_bed' in printer)} -name: Alles voorverwarmen -gcode: - M140 S60 - M104 S200 - -[menu __main __temp __preheat_pla __hotend] -type: command -enable: {'extruder' in printer} -name: Hotend voorverwarmen -gcode: M104 S200 - -[menu __main __temp __preheat_pla __hotbed] -type: command -enable: {'heater_bed' in printer} -name: Hotbed voorverwarmen -gcode: M140 S60 - -[menu __main __temp __preheat_abs] -type: list -name: Voorverwarmen ABS - -[menu __main __temp __preheat_abs __all] -type: command -enable: {('extruder' in printer) and ('heater_bed' in printer)} -name: Alles voorverwarmen -gcode: - M140 S110 - M104 S245 - -[menu __main __temp __preheat_abs __hotend] -type: command -enable: {'extruder' in printer} -name: Hotend voorverwarmen -gcode: M104 S245 - -[menu __main __temp __preheat_abs __hotbed] -type: command -enable: {'heater_bed' in printer} -name: Hotbed voorverwarmen -gcode: M140 S110 - -[menu __main __temp __cooldown] -type: list -name: Afkoelen - -[menu __main __temp __cooldown __all] -type: command -enable: {('extruder' in printer) and ('heater_bed' in printer)} -name: Alles afkoelen -gcode: - M104 S0 - M140 S0 - -[menu __main __temp __cooldown __hotend] -type: command -enable: {'extruder' in printer} -name: Hotend afkoelen -gcode: M104 S0 - -[menu __main __temp __cooldown __hotbed] -type: command -enable: {'heater_bed' in printer} -name: Hotbed afkoelen -gcode: M140 S0 - -### menu filament ### - -[menu __main __filament] -type: list -name: Filament - -[menu __main __filament __hotend0_target] -type: input -enable: {'extruder' in printer} -name: {"Ex0:%3.0f (%4.0f)" % (menu.input, printer.extruder.temperature)} -input: {printer.extruder.target} -input_min: 0 -input_max: {printer.configfile.config.extruder.max_temp} -input_step: 1 -gcode: M104 T0 S{'%.0f' % menu.input} - -[menu __main __filament __loadf] -type: command -name: Fil. snel laden -gcode: - SAVE_GCODE_STATE NAME=__filament__load - M83 - G1 E50 F960 - RESTORE_GCODE_STATE NAME=__filament__load - -[menu __main __filament __loads] -type: command -name: Fil. langzaam laden -gcode: - SAVE_GCODE_STATE NAME=__filament__load - M83 - G1 E50 F240 - RESTORE_GCODE_STATE NAME=__filament__load - -[menu __main __filament __unloadf] -type: command -name: Fil. snel uitwerpen -gcode: - SAVE_GCODE_STATE NAME=__filament__load - M83 - G1 E-50 F960 - RESTORE_GCODE_STATE NAME=__filament__load - -[menu __main __filament __unloads] -type: command -name: Fil. langzaam uitwerpen -gcode: - SAVE_GCODE_STATE NAME=__filament__load - M83 - G1 E-50 F240 - RESTORE_GCODE_STATE NAME=__filament__load - -[menu __main __filament __feed] -type: input -name: Snelheid: {'%.1f' % menu.input} -input: 5 -input_step: 0.1 -gcode: - SAVE_GCODE_STATE NAME=__filament__load - M83 - G1 E{'%.1f' % menu.input} F60 - RESTORE_GCODE_STATE NAME=__filament__load - -### menu setup ### -[menu __main __setup] -type: list -enable: {not printer.idle_timeout.state == "Printing"} -name: Setup - -[menu __main __setup __save_config] -type: command -name: Bewaar configuratie -gcode: SAVE_CONFIG - -[menu __main __setup __restart] -type: list -name: Herstarten - -[menu __main __setup __restart __host_restart] -type: command -enable: {not printer.idle_timeout.state == "Printing"} -name: Herstart host -gcode: RESTART - -[menu __main __setup __restart __firmware_restart] -type: command -enable: {not printer.idle_timeout.state == "Printing"} -name: Herstart FW -gcode: FIRMWARE_RESTART - -[menu __main __setup __tuning] -type: list -name: PID tuning - -[menu __main __setup __tuning __hotend_pid_tuning] -type: command -enable: {(not printer.idle_timeout.state == "Printing") and ('extruder' in printer)} -name: Tune Hotend PID -gcode: PID_CALIBRATE HEATER=extruder TARGET=210 WRITE_FILE=1 - -[menu __main __setup __tuning __hotbed_pid_tuning] -type: command -enable: {(not printer.idle_timeout.state == "Printing") and ('heater_bed' in printer)} -name: Tune Hotbed PID -gcode: PID_CALIBRATE HEATER=heater_bed TARGET=60 WRITE_FILE=1 - -[menu __main __setup __calib] -type: list -name: Calibratie - -[menu __main __setup __calib __bedprobe] -type: command -enable: {not printer.idle_timeout.state == "Printing"} -name: Bed probe -gcode: PROBE - -[menu __main __setup __dump] -type: command -name: Dump parameters -gcode: - {% for name1 in printer %} - {% for name2 in printer[name1] %} - { action_respond_info("printer['%s'].%s = %s" - % (name1, name2, printer[name1][name2])) } - {% else %} - { action_respond_info("printer['%s'] = %s" % (name1, printer[name1])) } - {% endfor %} - {% endfor %} - #*# <---------------------- SAVE_CONFIG ----------------------> #*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. #*# @@ -995,16 +265,18 @@ gcode: #*# [bed_mesh default] #*# version = 1 #*# points = -#*# -0.302500, -0.277500, -0.252500 -#*# -0.277500, -0.267500, -0.252500 -#*# -0.282500, -0.265000, -0.215000 +#*# -0.327500, -0.370000, -0.362500, -0.365000, -0.490000 +#*# -0.285000, -0.327500, -0.385000, -0.417500, -0.482500 +#*# -0.442500, -0.385000, -0.335000, -0.302500, -0.357500 +#*# -0.460000, -0.382500, -0.365000, -0.307500, -0.282500 +#*# -0.405000, -0.302500, -0.257500, -0.222500, -0.240000 #*# tension = 0.2 -#*# min_x = 88.33 +#*# min_x = 25.0 #*# algo = lagrange -#*# y_count = 3 +#*# y_count = 5 #*# mesh_y_pps = 2 -#*# min_y = 88.86 -#*# x_count = 3 -#*# max_y = 132.74 +#*# min_y = 10.0 +#*# x_count = 5 +#*# max_y = 170.0 #*# mesh_x_pps = 2 -#*# max_x = 146.55 +#*# max_x = 200.0 diff --git a/klipper/DNV-TPU-Ender3/klipper_config/scherm/menu.cfg b/klipper/DNV-TPU-Ender3/klipper_config/scherm/menu.cfg new file mode 100644 index 0000000..09657d4 --- /dev/null +++ b/klipper/DNV-TPU-Ender3/klipper_config/scherm/menu.cfg @@ -0,0 +1,586 @@ +### menu main ### +[menu __main] +type: list +name: Main + +### menu tune ### +[menu __main __tune] +type: list +enable: {printer.idle_timeout.state == "Printing"} +name: Afstellen + +[menu __main __tune __speed] +type: input +name: Snelheid: {'%3d' % (menu.input*100)}% +input: {printer.gcode_move.speed_factor} +input_min: 0.01 +input_max: 5 +input_step: 0.01 +realtime: True +gcode: + M220 S{'%d' % (menu.input*100)} + +[menu __main __tune __flow] +type: input +name: Flow: {'%3d' % (menu.input*100)}% +input: {printer.gcode_move.extrude_factor} +input_min: 0.01 +input_max: 2 +input_step: 0.01 +realtime: True +gcode: + M221 S{'%d' % (menu.input*100)} + +[menu __main __tune __offsetz] +type: input +name: Offset Z:{'%05.3f' % menu.input} +input: {printer.gcode_move.homing_origin.z} +input_min: -5 +input_max: 5 +input_step: 0.005 +realtime: True +gcode: + SET_GCODE_OFFSET Z={'%.3f' % menu.input} MOVE=1 + +### menu virtual sdcard ### +[menu __main __sdcard] +type: vsdlist +enable: {('virtual_sdcard' in printer)} +name: SD Kaart + +[menu __main __sdcard __start] +type: command +enable: {('virtual_sdcard' in printer) and printer.virtual_sdcard.file_path and not printer.virtual_sdcard.is_active} +name: Start printen +gcode: M24 + +[menu __main __sdcard __resume] +type: command +enable: {('virtual_sdcard' in printer) and printer.print_stats.state == "paused"} +name: Herstart printen +gcode: + {% if "pause_resume" in printer %} + RESUME + {% else %} + M24 + {% endif %} + +[menu __main __sdcard __pause] +type: command +enable: {('virtual_sdcard' in printer) and printer.print_stats.state == "printing"} +name: Pauseer printen +gcode: + {% if "pause_resume" in printer %} + PAUSE + {% else %} + M25 + {% endif %} + +[menu __main __sdcard __cancel] +type: command +enable: {('virtual_sdcard' in printer) and (printer.print_stats.state == "printing" or printer.print_stats.state == "paused")} +name: Annuleer printen +gcode: + {% if 'pause_resume' in printer %} + CANCEL_PRINT + {% else %} + M25 + M27 + M26 S0 + TURN_OFF_HEATERS + {% if printer.toolhead.position.z <= printer.toolhead.axis_maximum.z - 5 %} + G91 + G0 Z5 F1000 + G90 + {% endif %} + {% endif %} + +### menu control ### +[menu __main __control] +type: list +name: Control + +[menu __main __control __home] +type: command +enable: {not printer.idle_timeout.state == "Printing"} +name: Home All +gcode: G28 + +[menu __main __control __homez] +type: command +enable: {not printer.idle_timeout.state == "Printing"} +name: Home Z +gcode: G28 Z + +[menu __main __control __homexy] +type: command +enable: {not printer.idle_timeout.state == "Printing"} +name: Home X/Y +gcode: G28 X Y + +[menu __main __control __disable] +type: command +name: Steppers uit +gcode: + M84 + M18 + +[menu __main __control __fanonoff] +type: input +enable: {'fan' in printer} +name: Koeling: {'ON ' if menu.input else 'OFF'} +input: {printer.fan.speed} +input_min: 0 +input_max: 1 +input_step: 1 +gcode: + M106 S{255 if menu.input else 0} + +[menu __main __control __fanspeed] +type: input +enable: {'fan' in printer} +name: Snelheid koeler: {'%3d' % (menu.input*100)}% +input: {printer.fan.speed} +input_min: 0 +input_max: 1 +input_step: 0.01 +gcode: + M106 S{'%d' % (menu.input*255)} + +[menu __main __control __caselightonoff] +type: input +enable: {'output_pin caselight' in printer} +name: Verlichting: {'ON ' if menu.input else 'OFF'} +input: {printer['output_pin caselight'].value} +input_min: 0 +input_max: 1 +input_step: 1 +gcode: + SET_PIN PIN=caselight VALUE={1 if menu.input else 0} + +[menu __main __control __caselightpwm] +type: input +enable: {'output_pin caselight' in printer} +name: Verlichting: {'%3d' % (menu.input*100)}% +input: {printer['output_pin caselight'].value} +input_min: 0.0 +input_max: 1.0 +input_step: 0.01 +gcode: + SET_PIN PIN=caselight VALUE={menu.input} + +### menu move 10mm ### +[menu __main __control __move_10mm] +type: list +enable: {not printer.idle_timeout.state == "Printing"} +name: Verplaats 10mm + +[menu __main __control __move_10mm __axis_x] +type: input +name: Verplaats X:{'%05.1f' % menu.input} +input: {printer.gcode_move.gcode_position.x} +input_min: {printer.toolhead.axis_minimum.x} +input_max: {printer.toolhead.axis_maximum.x} +input_step: 10.0 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + G90 + G1 X{menu.input} + RESTORE_GCODE_STATE NAME=__move__axis + +[menu __main __control __move_10mm __axis_y] +type: input +name: Verplaats Y:{'%05.1f' % menu.input} +input: {printer.gcode_move.gcode_position.y} +input_min: {printer.toolhead.axis_minimum.y} +input_max: {printer.toolhead.axis_maximum.y} +input_step: 10.0 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + G90 + G1 Y{menu.input} + RESTORE_GCODE_STATE NAME=__move__axis + +[menu __main __control __move_10mm __axis_z] +type: input +enable: {not printer.idle_timeout.state == "Printing"} +name: Verplaats Z:{'%05.1f' % menu.input} +input: {printer.gcode_move.gcode_position.z} +input_min: 0 +input_max: {printer.toolhead.axis_maximum.z} +input_step: 10.0 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + G90 + G1 Z{menu.input} + RESTORE_GCODE_STATE NAME=__move__axis + +[menu __main __control __move_10mm __axis_e] +type: input +enable: {not printer.idle_timeout.state == "Printing"} +name: Draai E:{'%+06.1f' % menu.input} +input: 0 +input_min: -{printer.configfile.config.extruder.max_extrude_only_distance|default(50)} +input_max: {printer.configfile.config.extruder.max_extrude_only_distance|default(50)} +input_step: 10.0 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + M83 + G1 E{menu.input} F240 + RESTORE_GCODE_STATE NAME=__move__axis + +### menu move 1mm ### +[menu __main __control __move_1mm] +type: list +enable: {not printer.idle_timeout.state == "Printing"} +name: Verplaats 1mm + +[menu __main __control __move_1mm __axis_x] +type: input +name: Verplaats X:{'%05.1f' % menu.input} +input: {printer.gcode_move.gcode_position.x} +input_min: {printer.toolhead.axis_minimum.x} +input_max: {printer.toolhead.axis_maximum.x} +input_step: 1.0 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + G90 + G1 X{menu.input} + RESTORE_GCODE_STATE NAME=__move__axis + +[menu __main __control __move_1mm __axis_y] +type: input +name: Verplaats Y:{'%05.1f' % menu.input} +input: {printer.gcode_move.gcode_position.y} +input_min: {printer.toolhead.axis_minimum.y} +input_max: {printer.toolhead.axis_maximum.y} +input_step: 1.0 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + G90 + G1 Y{menu.input} + RESTORE_GCODE_STATE NAME=__move__axis + +[menu __main __control __move_1mm __axis_z] +type: input +enable: {not printer.idle_timeout.state == "Printing"} +name: Verplaats Z:{'%05.1f' % menu.input} +input: {printer.gcode_move.gcode_position.z} +input_min: 0 +input_max: {printer.toolhead.axis_maximum.z} +input_step: 1.0 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + G90 + G1 Z{menu.input} + RESTORE_GCODE_STATE NAME=__move__axis + +[menu __main __control __move_1mm __axis_e] +type: input +enable: {not printer.idle_timeout.state == "Printing"} +name: Draai E:{'%+06.1f' % menu.input} +input: 0 +input_min: -{printer.configfile.config.extruder.max_extrude_only_distance|default(50)} +input_max: {printer.configfile.config.extruder.max_extrude_only_distance|default(50)} +input_step: 1.0 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + M83 + G1 E{menu.input} F240 + RESTORE_GCODE_STATE NAME=__move__axis + +### menu move 0.1mm ### +[menu __main __control __move_01mm] +type: list +enable: {not printer.idle_timeout.state == "Printing"} +name: Verplaats 0.1mm + +[menu __main __control __move_01mm __axis_x] +type: input +name: Verplaats X:{'%05.1f' % menu.input} +input: {printer.gcode_move.gcode_position.x} +input_min: {printer.toolhead.axis_minimum.x} +input_max: {printer.toolhead.axis_maximum.x} +input_step: 0.1 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + G90 + G1 X{menu.input} + RESTORE_GCODE_STATE NAME=__move__axis + +[menu __main __control __move_01mm __axis_y] +type: input +name: Verplaats Y:{'%05.1f' % menu.input} +input: {printer.gcode_move.gcode_position.y} +input_min: {printer.toolhead.axis_minimum.y} +input_max: {printer.toolhead.axis_maximum.y} +input_step: 0.1 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + G90 + G1 Y{menu.input} + RESTORE_GCODE_STATE NAME=__move__axis + +[menu __main __control __move_01mm __axis_z] +type: input +enable: {not printer.idle_timeout.state == "Printing"} +name: Verplaats Z:{'%05.1f' % menu.input} +input: {printer.gcode_move.gcode_position.z} +input_min: 0 +input_max: {printer.toolhead.axis_maximum.z} +input_step: 0.1 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + G90 + G1 Z{menu.input} + RESTORE_GCODE_STATE NAME=__move__axis + +[menu __main __control __move_01mm __axis_e] +type: input +enable: {not printer.idle_timeout.state == "Printing"} +name: Draai E:{'%+06.1f' % menu.input} +input: 0 +input_min: -{printer.configfile.config.extruder.max_extrude_only_distance|default(50)} +input_max: {printer.configfile.config.extruder.max_extrude_only_distance|default(50)} +input_step: 0.1 +gcode: + SAVE_GCODE_STATE NAME=__move__axis + M83 + G1 E{menu.input} F240 + RESTORE_GCODE_STATE NAME=__move__axis + +### menu temperature ### +[menu __main __temp] +type: list +name: Temperatuur + +[menu __main __temp __hotend0_target] +type: input +enable: {('extruder' in printer) and ('extruder' in printer.heaters.available_heaters)} +name: {"Ex0:%3.0f (%4.0f)" % (menu.input, printer.extruder.temperature)} +input: {printer.extruder.target} +input_min: 0 +input_max: {printer.configfile.config.extruder.max_temp} +input_step: 1 +gcode: M104 T0 S{'%.0f' % menu.input} + +[menu __main __temp __hotend1_target] +type: input +enable: {('extruder1' in printer) and ('extruder1' in printer.heaters.available_heaters)} +name: {"Ex1:%3.0f (%4.0f)" % (menu.input, printer.extruder1.temperature)} +input: {printer.extruder1.target} +input_min: 0 +input_max: {printer.configfile.config.extruder1.max_temp} +input_step: 1 +gcode: M104 T1 S{'%.0f' % menu.input} + +[menu __main __temp __hotbed_target] +type: input +enable: {'heater_bed' in printer} +name: {"Bed:%3.0f (%4.0f)" % (menu.input, printer.heater_bed.temperature)} +input: {printer.heater_bed.target} +input_min: 0 +input_max: {printer.configfile.config.heater_bed.max_temp} +input_step: 1 +gcode: M140 S{'%.0f' % menu.input} + +[menu __main __temp __preheat_pla] +type: list +name: Voorverwarmen PLA + +[menu __main __temp __preheat_pla __all] +type: command +enable: {('extruder' in printer) and ('heater_bed' in printer)} +name: Alles voorverwarmen +gcode: + M140 S60 + M104 S200 + +[menu __main __temp __preheat_pla __hotend] +type: command +enable: {'extruder' in printer} +name: Hotend voorverwarmen +gcode: M104 S200 + +[menu __main __temp __preheat_pla __hotbed] +type: command +enable: {'heater_bed' in printer} +name: Hotbed voorverwarmen +gcode: M140 S60 + +[menu __main __temp __preheat_abs] +type: list +name: Voorverwarmen ABS + +[menu __main __temp __preheat_abs __all] +type: command +enable: {('extruder' in printer) and ('heater_bed' in printer)} +name: Alles voorverwarmen +gcode: + M140 S110 + M104 S245 + +[menu __main __temp __preheat_abs __hotend] +type: command +enable: {'extruder' in printer} +name: Hotend voorverwarmen +gcode: M104 S245 + +[menu __main __temp __preheat_abs __hotbed] +type: command +enable: {'heater_bed' in printer} +name: Hotbed voorverwarmen +gcode: M140 S110 + +[menu __main __temp __cooldown] +type: list +name: Afkoelen + +[menu __main __temp __cooldown __all] +type: command +enable: {('extruder' in printer) and ('heater_bed' in printer)} +name: Alles afkoelen +gcode: + M104 S0 + M140 S0 + +[menu __main __temp __cooldown __hotend] +type: command +enable: {'extruder' in printer} +name: Hotend afkoelen +gcode: M104 S0 + +[menu __main __temp __cooldown __hotbed] +type: command +enable: {'heater_bed' in printer} +name: Hotbed afkoelen +gcode: M140 S0 + +### menu filament ### + +[menu __main __filament] +type: list +name: Filament + +[menu __main __filament __hotend0_target] +type: input +enable: {'extruder' in printer} +name: {"Ex0:%3.0f (%4.0f)" % (menu.input, printer.extruder.temperature)} +input: {printer.extruder.target} +input_min: 0 +input_max: {printer.configfile.config.extruder.max_temp} +input_step: 1 +gcode: M104 T0 S{'%.0f' % menu.input} + +[menu __main __filament __loadf] +type: command +name: Fil. snel laden +gcode: + SAVE_GCODE_STATE NAME=__filament__load + M83 + G1 E50 F960 + RESTORE_GCODE_STATE NAME=__filament__load + +[menu __main __filament __loads] +type: command +name: Fil. langzaam laden +gcode: + SAVE_GCODE_STATE NAME=__filament__load + M83 + G1 E50 F240 + RESTORE_GCODE_STATE NAME=__filament__load + +[menu __main __filament __unloadf] +type: command +name: Fil. snel uitwerpen +gcode: + SAVE_GCODE_STATE NAME=__filament__load + M83 + G1 E-50 F960 + RESTORE_GCODE_STATE NAME=__filament__load + +[menu __main __filament __unloads] +type: command +name: Fil. langzaam uitwerpen +gcode: + SAVE_GCODE_STATE NAME=__filament__load + M83 + G1 E-50 F240 + RESTORE_GCODE_STATE NAME=__filament__load + +[menu __main __filament __feed] +type: input +name: Snelheid: {'%.1f' % menu.input} +input: 5 +input_step: 0.1 +gcode: + SAVE_GCODE_STATE NAME=__filament__load + M83 + G1 E{'%.1f' % menu.input} F60 + RESTORE_GCODE_STATE NAME=__filament__load + +### menu setup ### +[menu __main __setup] +type: list +enable: {not printer.idle_timeout.state == "Printing"} +name: Setup + +[menu __main __setup __save_config] +type: command +name: Bewaar configuratie +gcode: SAVE_CONFIG + +[menu __main __setup __restart] +type: list +name: Herstarten + +[menu __main __setup __restart __host_restart] +type: command +enable: {not printer.idle_timeout.state == "Printing"} +name: Herstart host +gcode: RESTART + +[menu __main __setup __restart __firmware_restart] +type: command +enable: {not printer.idle_timeout.state == "Printing"} +name: Herstart FW +gcode: FIRMWARE_RESTART + +[menu __main __setup __tuning] +type: list +name: PID tuning + +[menu __main __setup __tuning __hotend_pid_tuning] +type: command +enable: {(not printer.idle_timeout.state == "Printing") and ('extruder' in printer)} +name: Tune Hotend PID +gcode: PID_CALIBRATE HEATER=extruder TARGET=210 WRITE_FILE=1 + +[menu __main __setup __tuning __hotbed_pid_tuning] +type: command +enable: {(not printer.idle_timeout.state == "Printing") and ('heater_bed' in printer)} +name: Tune Hotbed PID +gcode: PID_CALIBRATE HEATER=heater_bed TARGET=60 WRITE_FILE=1 + +[menu __main __setup __calib] +type: list +name: Calibratie + +[menu __main __setup __calib __bedprobe] +type: command +enable: {not printer.idle_timeout.state == "Printing"} +name: Bed probe +gcode: PROBE + +[menu __main __setup __dump] +type: command +name: Dump parameters +gcode: + {% for name1 in printer %} + {% for name2 in printer[name1] %} + { action_respond_info("printer['%s'].%s = %s" + % (name1, name2, printer[name1][name2])) } + {% else %} + { action_respond_info("printer['%s'] = %s" % (name1, printer[name1])) } + {% endfor %} + {% endfor %} diff --git a/klipper/DNV-TPU-Ender3/klipper_config/telegram.conf b/klipper/DNV-TPU-Ender3/klipper_config/telegram.conf index 2eaba10..8c74cb3 100644 --- a/klipper/DNV-TPU-Ender3/klipper_config/telegram.conf +++ b/klipper/DNV-TPU-Ender3/klipper_config/telegram.conf @@ -13,8 +13,8 @@ percent: 20 height: 5 #time: 5 -[timelapse] -cleanup: true -height: 0.2 -time: 5 -target_fps: 30 +#[timelapse] +#cleanup: true +#height: 0.2 +#time: 5 +#target_fps: 30 diff --git a/klipper/DNV-TPU-Ender3/klipper_config/werkzaamhedenLog/werkzaamhedenEnder3TPU.md b/klipper/DNV-TPU-Ender3/klipper_config/werkzaamhedenLog/werkzaamhedenEnder3TPU.md new file mode 100644 index 0000000..78f4395 --- /dev/null +++ b/klipper/DNV-TPU-Ender3/klipper_config/werkzaamhedenLog/werkzaamhedenEnder3TPU.md @@ -0,0 +1,7 @@ +## Werkzaamheden uitgevoerd aan de Ender3 TPU printer bijgehouden vanaf 8 mei 2024 + +#### 8 mei 2024 - mei 2024 +* Siliconen sock om de nozzle was verstaft en bij [DropEffect](https://www.dropeffect.com/pages/contact-us) gevraagd waar een nieuwe gehaald kan worden. Zij sturen er 1 op. +* Het bed op de y-as zat iets los, deze strakker gezet. +* De afmeting en het nulpunt van het bed gewijzigd: Het homing-punt zit nu op -13.5 x -51, hierdoor start het nulpunt op 0,42. De bed-grootte is aangepast naar 221.5x195. Door deze wijziging kunnen de clipjes blijven zitten. +* In de homing-macro aangepast dat de kop eerst omhoog gaat zodat deze de clipjes niet meeneemt tijdens het verplaatsen.