Sevene61 Posté(e) Juin 16, 2024 Posté(e) Juin 16, 2024 Bonjour, je me suis lancée et j'ai enfin franchie le cap de l'installation Guilouz pour ma V400 (carte mère nano v2.1), mais à la fin j'obtiens ceci : (voir image) je ne comprends où sa cloche !? Quels fichiers je dois vous copier pour que vous jetiez un œil ?, j'ai refais l'installation 2 fois et toujours pareil (je n'ai pas oublié de flasher ma carte mère). >Pour le dossier config j'ai choisi le mks robin nano 2.0 - trianglelab chc (ne sachant pas vraiment si c'est le bon), Pouvez vous m'aider ? merci Séverine
papagalak Posté(e) Juin 16, 2024 Posté(e) Juin 16, 2024 il y a 12 minutes, Sevene61 a dit : Bonjour, je me suis lancée et j'ai enfin franchie le cap de l'installation Guilouz pour ma V400 (carte mère nano v2.1), mais à la fin j'obtiens ceci : (voir image) je ne comprends où sa cloche !? Quels fichiers je dois vous copier pour que vous jetiez un œil ?, j'ai refais l'installation 2 fois et toujours pareil (je n'ai pas oublié de flasher ma carte mère). >Pour le dossier config j'ai choisi le mks robin nano 2.0 - trianglelab chc (ne sachant pas vraiment si c'est le bon), Pouvez vous m'aider ? merci Séverine Dans le printer cfg il te faut déclarer la carte mère Exemple: serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 1
Sevene61 Posté(e) Juin 16, 2024 Auteur Posté(e) Juin 16, 2024 J'y ai pensé, j'ai ça [mcu] serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method: command Mais j'ai un truc qui me chiffonne : dans le fichier moonraker.conf ligne 2 host 0.0.0.0 c'est normal ?! FICHIER LOG MOONRAKER : Révélation -------------------- Log Start | Sun Jun 16 12:25:46 2024 -------------------- platform: Linux-4.9.191-aarch64-with-glibc2.31 data_path: /home/pi/printer_data is_default_data_path: False config_file: /home/pi/printer_data/config/moonraker.conf startup_warnings: [] verbose: False debug: False asyncio_debug: False is_backup_config: False is_python_package: False instance_uuid: 5042d2eac3814555a45c547938ef75a2 unix_socket_path: /home/pi/printer_data/comms/moonraker.sock software_version: v0.8.0-379-g346a3d7 git_branch: master git_remote: origin git_repo_url: https://github.com/Arksine/moonraker.git modified_files: [] unofficial_components: [] log_file: /home/pi/printer_data/logs/moonraker.log python_version: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] launch_args: /home/pi/moonraker-env/bin/python /home/pi/moonraker/moonraker/moonraker.py -d /home/pi/printer_data msgspec_enabled: False uvloop_enabled: False 2024-06-16 14:25:46,593 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 446 B 2024-06-16 14:25:46,593 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 14:25:46,765 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 14:25:46,775 [server.py:load_component()] - Component (template) loaded 2024-06-16 14:25:46,786 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 14:25:47,420 [server.py:load_component()] - Component (application) loaded 2024-06-16 14:25:47,462 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 14:25:47,535 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 14:25:47,610 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 14:25:47,639 [server.py:add_log_rollover_item()] - Created default SQL table namespace_store 2024-06-16 14:25:47,647 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 0 2024-06-16 14:25:47,658 [server.py:load_component()] - Component (database) loaded 2024-06-16 14:25:47,790 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 14:25:47,827 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 14:25:47,890 [database.py:register_table()] - Creating table authorized_users... 2024-06-16 14:25:47,918 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 14:25:47,924 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 14:25:47,941 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 14:25:48,392 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 14:25:48,409 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 14:25:48,410 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 14:25:48,424 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 14:25:48,424 [server.py:load_component()] - Component (machine) loaded 2024-06-16 14:25:48,435 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 14:25:48,451 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 14:25:48,452 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 14:25:48,458 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 14:25:48,474 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 14:25:48,498 [database.py:register_table()] - Creating table job_history... 2024-06-16 14:25:48,516 [database.py:register_table()] - Creating table job_totals... 2024-06-16 14:25:48,524 [history.py:migrate()] - Migrating history totals from moonraker namespace... 2024-06-16 14:25:48,542 [server.py:load_component()] - Component (history) loaded 2024-06-16 14:25:48,566 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 14:25:48,599 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 14:25:48,620 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 14:25:48,633 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 14:25:48,651 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 14:25:48,887 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 14:25:48,892 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 14:25:48,901 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 14:25:48,903 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 14:25:48,922 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 14:25:48,933 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 14:25:48,934 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 14:25:48,936 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 14:25:48,938 [machine.py:update_usb_ids()] - Fetching latest usb.ids file... 2024-06-16 14:25:48,949 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 14:25:49,271 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 14:25:49,292 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 14:25:49,295 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 14:25:49,384 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'network-online.target', 'sysinit.target'] **After=['basic.target', 'systemd-journald.socket', 'system.slice', '-.mount', 'network-online.target', 'sysinit.target'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 14:25:49,384 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 14:25:49,384 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 14:25:49,415 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 14:25:49,422 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 14:25:49,422 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 14:25:49,425 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 14:25:49,425 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 14:25:49,476 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 14:25:49,492 [confighelper.py:create_backup()] - Backing up last working configuration to '/home/pi/printer_data/config/.moonraker.conf.bkp' 2024-06-16 14:25:49,497 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 14:25:49,502 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 14:25:49,504 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 14:25:49,759 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 14:25:49,854 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target'] **After=['basic.target', 'systemd-journald.socket', 'system.slice', '-.mount', 'network-online.target', 'sysinit.target'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 14:25:50,108 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 14:25:50,126 [machine.py:update_usb_ids()] - Writing usb.ids file... 2024-06-16 14:25:50,148 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 14:25:50,152 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 14:25:50,155 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 14:25:51,818 [base_deploy.py:log_info()] - PackageKit: Detected 0 package updates: 2024-06-16 14:25:51,852 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker status --porcelain -b) successfully finished 2024-06-16 14:25:51,875 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker branch --list --no-color) successfully finished 2024-06-16 14:25:51,917 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker remote get-url origin) successfully finished 2024-06-16 14:25:52,914 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker fetch origin --prune --progress) successfully finished 2024-06-16 14:25:52,959 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker merge-base --is-ancestor HEAD origin/master) successfully finished 2024-06-16 14:25:52,982 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker rev-parse HEAD) successfully finished 2024-06-16 14:25:53,027 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker describe --always --tags --long --dirty --abbrev=8) successfully finished 2024-06-16 14:25:53,048 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker rev-parse origin/master) successfully finished 2024-06-16 14:25:53,089 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker describe origin/master --always --tags --long --abbrev=8) successfully finished 2024-06-16 14:25:53,112 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker rev-list HEAD..346a3d7c9dca6499bdef2957ca39a23c702b0268 --count) successfully finished 2024-06-16 14:25:53,113 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:25:53,113 [base_deploy.py:log_info()] - Git Repo moonraker: Channel: dev 2024-06-16 14:25:53,114 [base_deploy.py:log_info()] - Git Repo moonraker: Validity check for git repo passed 2024-06-16 14:25:53,204 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper status --porcelain -b) successfully finished 2024-06-16 14:25:53,227 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper branch --list --no-color) successfully finished 2024-06-16 14:25:53,269 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper remote get-url origin) successfully finished 2024-06-16 14:25:53,878 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper fetch origin --prune --progress) successfully finished 2024-06-16 14:25:53,901 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper merge-base --is-ancestor HEAD origin/master) successfully finished 2024-06-16 14:25:53,923 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper rev-parse HEAD) successfully finished 2024-06-16 14:25:54,128 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper describe --always --tags --long --dirty --abbrev=8) successfully finished 2024-06-16 14:25:54,152 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper rev-parse origin/master) successfully finished 2024-06-16 14:25:54,327 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper describe origin/master --always --tags --long --abbrev=8) successfully finished 2024-06-16 14:25:54,353 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper rev-list HEAD..433fcb6f249406c8b5e2f25d1e870809beeafb40 --count) successfully finished 2024-06-16 14:25:54,354 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:25:54,354 [base_deploy.py:log_info()] - Git Repo klipper: Channel: dev 2024-06-16 14:25:54,354 [base_deploy.py:log_info()] - Git Repo klipper: Validity check for git repo passed 2024-06-16 14:26:02,445 [server.py:_handle_term_signal()] - Exiting with signal SIGTERM 2024-06-16 14:26:02,548 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 14:26:02,576 [server.py:main()] - Server Shutdown -------------------- Log Start | Sun Jun 16 12:26:03 2024 -------------------- platform: Linux-4.9.191-aarch64-with-glibc2.31 data_path: /home/pi/printer_data is_default_data_path: False config_file: /home/pi/printer_data/config/moonraker.conf startup_warnings: [] verbose: False debug: False asyncio_debug: False is_backup_config: False is_python_package: False instance_uuid: 5042d2eac3814555a45c547938ef75a2 unix_socket_path: /home/pi/printer_data/comms/moonraker.sock software_version: v0.8.0-379-g346a3d7 git_branch: master git_remote: origin git_repo_url: https://github.com/Arksine/moonraker.git modified_files: [] unofficial_components: [] log_file: /home/pi/printer_data/logs/moonraker.log python_version: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] launch_args: /home/pi/moonraker-env/bin/python /home/pi/moonraker/moonraker/moonraker.py -d /home/pi/printer_data msgspec_enabled: False uvloop_enabled: False 2024-06-16 14:26:03,470 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 545 B 2024-06-16 14:26:03,471 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 14:26:03,596 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 14:26:03,604 [server.py:load_component()] - Component (template) loaded 2024-06-16 14:26:03,615 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 14:26:04,138 [server.py:load_component()] - Component (application) loaded 2024-06-16 14:26:04,164 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 14:26:04,227 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 14:26:04,238 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 14:26:04,242 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 0 2024-06-16 14:26:04,247 [server.py:load_component()] - Component (database) loaded 2024-06-16 14:26:04,274 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 14:26:04,310 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 14:26:04,341 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 14:26:04,345 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 14:26:04,351 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 14:26:04,358 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 14:26:04,710 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 14:26:04,714 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 14:26:04,714 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 14:26:04,730 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 14:26:04,730 [server.py:load_component()] - Component (machine) loaded 2024-06-16 14:26:04,734 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 14:26:04,737 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 14:26:04,738 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 14:26:04,740 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 14:26:04,747 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 14:26:04,750 [database.py:register_table()] - Found registered table job_history 2024-06-16 14:26:04,751 [database.py:register_table()] - Found registered table job_totals 2024-06-16 14:26:04,755 [server.py:load_component()] - Component (history) loaded 2024-06-16 14:26:04,763 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 14:26:04,770 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 14:26:04,775 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 14:26:04,780 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 14:26:04,855 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 14:26:04,860 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 14:26:04,871 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 14:26:04,879 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 14:26:04,881 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 14:26:04,899 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 14:26:04,917 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 14:26:04,918 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 14:26:04,921 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 14:26:04,922 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 14:26:05,230 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 14:26:05,249 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 14:26:05,252 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 14:26:05,339 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'network-online.target', 'sysinit.target'] **After=['basic.target', 'systemd-journald.socket', 'system.slice', '-.mount', 'network-online.target', 'sysinit.target'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 14:26:05,339 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 14:26:05,339 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 14:26:05,365 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 14:26:05,372 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 14:26:05,373 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 14:26:05,377 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 14:26:05,377 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 14:26:05,381 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target'] **After=['basic.target', 'systemd-journald.socket', 'system.slice', '-.mount', 'network-online.target', 'sysinit.target'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 14:26:05,429 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 14:26:05,431 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:26:05,434 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:26:05,440 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 23 Hours, 59 Minutes, 46 Seconds 2024-06-16 14:26:05,440 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 23 Hours, 59 Minutes, 48 Seconds 2024-06-16 14:26:05,440 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 23 Hours, 59 Minutes, 49 Seconds 2024-06-16 14:26:05,447 [confighelper.py:create_backup()] - Backing up last working configuration to '/home/pi/printer_data/config/.moonraker.conf.bkp' 2024-06-16 14:26:05,451 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 14:26:05,453 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 14:26:05,454 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 14:26:05,571 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 14:26:05,709 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 14:26:06,089 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 14:26:06,135 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 14:26:06,137 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 14:26:06,140 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 14:44:49,944 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 14:44:49,963 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 6.04ms 2024-06-16 14:44:49,964 [websockets.py:open()] - Websocket Opened: ID: 4101408440, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 14:44:50,030 [websockets.py:_handle_identify()] - Websocket 4101408440 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 14:44:55,566 [server.py:_handle_term_signal()] - Exiting with signal SIGTERM 2024-06-16 14:44:55,626 [websockets.py:on_close()] - Websocket Closed: ID: 4101408440 Close Code: None, Close Reason: None, Pong Time Elapsed: 5.67 2024-06-16 14:44:55,628 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 14:44:55,694 [server.py:main()] - Server Shutdown -------------------- Log Start | Sun Jun 16 12:45:22 2024 -------------------- platform: Linux-4.9.191-aarch64-with-glibc2.31 data_path: /home/pi/printer_data is_default_data_path: False config_file: /home/pi/printer_data/config/moonraker.conf startup_warnings: [] verbose: False debug: False asyncio_debug: False is_backup_config: False is_python_package: False instance_uuid: 5042d2eac3814555a45c547938ef75a2 unix_socket_path: /home/pi/printer_data/comms/moonraker.sock software_version: v0.8.0-379-g346a3d7 git_branch: master git_remote: origin git_repo_url: https://github.com/Arksine/moonraker.git modified_files: [] unofficial_components: [] log_file: /home/pi/printer_data/logs/moonraker.log python_version: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] launch_args: /home/pi/moonraker-env/bin/python /home/pi/moonraker/moonraker/moonraker.py -d /home/pi/printer_data msgspec_enabled: False uvloop_enabled: False 2024-06-16 14:45:22,075 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 545 B 2024-06-16 14:45:22,076 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 14:45:22,257 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 14:45:22,268 [server.py:load_component()] - Component (template) loaded 2024-06-16 14:45:22,280 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 14:45:23,035 [server.py:load_component()] - Component (application) loaded 2024-06-16 14:45:23,067 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 14:45:23,170 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 14:45:23,188 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 14:45:23,195 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 0 2024-06-16 14:45:23,203 [server.py:load_component()] - Component (database) loaded 2024-06-16 14:45:23,241 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 14:45:23,281 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 14:45:23,326 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 14:45:23,330 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 14:45:23,337 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 14:45:23,345 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 14:45:23,765 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 14:45:23,768 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 14:45:23,769 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 14:45:23,785 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 14:45:23,785 [server.py:load_component()] - Component (machine) loaded 2024-06-16 14:45:23,790 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 14:45:23,794 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 14:45:23,796 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 14:45:23,798 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 14:45:23,805 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 14:45:23,809 [database.py:register_table()] - Found registered table job_history 2024-06-16 14:45:23,810 [database.py:register_table()] - Found registered table job_totals 2024-06-16 14:45:23,814 [server.py:load_component()] - Component (history) loaded 2024-06-16 14:45:23,824 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 14:45:23,832 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 14:45:23,837 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 14:45:23,842 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 14:45:23,927 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 14:45:23,932 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 14:45:23,943 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 14:45:23,951 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 14:45:23,953 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 14:45:24,019 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 14:45:24,031 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 14:45:24,033 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 14:45:24,036 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 14:45:24,038 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 14:45:24,447 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 14:45:24,472 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 14:45:24,475 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 14:45:24,560 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['network-online.target', 'sysinit.target', 'system.slice'] **After=['sysinit.target', '-.mount', 'network-online.target', 'system.slice', 'systemd-journald.socket', 'basic.target'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 14:45:24,560 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 14:45:24,560 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 14:45:24,593 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 14:45:24,600 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 14:45:24,600 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 14:45:24,604 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 14:45:24,605 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 14:45:24,609 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target'] **After=['basic.target', 'systemd-journald.socket', 'system.slice', '-.mount', 'network-online.target', 'sysinit.target'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 14:45:24,844 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 14:45:24,847 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:45:24,849 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:45:24,856 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 14:45:24,857 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 23 Hours, 40 Minutes, 27 Seconds 2024-06-16 14:45:24,857 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 23 Hours, 40 Minutes, 28 Seconds 2024-06-16 14:45:24,857 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 23 Hours, 40 Minutes, 29 Seconds 2024-06-16 14:45:24,857 [base_deploy.py:log_info()] - Web Client mainsail: Next refresh in: 6 Days, 23 Hours, 40 Minutes, 41 Seconds 2024-06-16 14:45:24,862 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 14:45:24,863 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 14:45:24,865 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 14:45:25,118 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 14:45:25,209 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['sysinit.target', 'system.slice'] **After=['sysinit.target', '-.mount', 'network-online.target', 'system.slice', 'systemd-journald.socket', 'basic.target'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 14:45:25,467 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 14:45:31,248 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 14:45:31,268 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 8.45ms 2024-06-16 14:45:31,269 [websockets.py:open()] - Websocket Opened: ID: 4083067464, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 14:45:31,395 [websockets.py:_handle_identify()] - Websocket 4083067464 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 14:46:29,841 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 192.168.1.128 2024-06-16 14:46:29,846 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 8.77ms 2024-06-16 14:46:29,847 [websockets.py:open()] - Websocket Opened: ID: 4083067392, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 14:46:29,875 [websockets.py:_handle_identify()] - Websocket 4083067392 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 14:46:30,368 [application.py:log_request()] - 404 GET /server/files/config/.theme/default.json?time=1718541989803 (192.168.1.128) [_TRUSTED_USER_] 11.86ms 2024-06-16 14:46:30,371 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718541989804 (192.168.1.128) [_TRUSTED_USER_] 13.04ms 2024-06-16 14:46:52,947 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 14:46:52,954 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 14:46:52,962 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 14:47:24,308 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryQzqZFveAb1BpsZRQ 2024-06-16 14:47:24,347 [application.py:post()] - Processing Uploaded File: moonraker.conf 2024-06-16 14:47:24,364 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 59.31ms 2024-06-16 14:47:24,483 [websockets.py:on_close()] - Websocket Closed: ID: 4083067464 Close Code: 1000, Close Reason: None, Pong Time Elapsed: 3.21 2024-06-16 14:47:24,488 [websockets.py:on_close()] - Websocket Closed: ID: 4083067392 Close Code: 1001, Close Reason: Server Shutdown, Pong Time Elapsed: 4.63 2024-06-16 14:47:24,493 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 14:47:25,029 [server.py:main()] - Attempting Server Restart... 2024-06-16 14:47:25,045 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 855 B 2024-06-16 14:47:25,046 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail [update_manager KlipperScreen] type = git_repo path = ~/KlipperScreen origin = https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git virtualenv = ~/.KlipperScreen-env requirements = scripts/KlipperScreen-requirements.txt system_dependencies = scripts/system-dependencies.json managed_services = KlipperScreen ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 14:47:25,051 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 14:47:25,052 [server.py:load_component()] - Component (template) loaded 2024-06-16 14:47:25,056 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 14:47:25,059 [server.py:load_component()] - Component (application) loaded 2024-06-16 14:47:25,060 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 14:47:25,062 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 14:47:25,064 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 14:47:25,068 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 0 2024-06-16 14:47:25,070 [server.py:load_component()] - Component (database) loaded 2024-06-16 14:47:25,074 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 14:47:25,105 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 14:47:25,105 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 14:47:25,108 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 14:47:25,111 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 14:47:25,112 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 14:47:25,146 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 14:47:25,146 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 14:47:25,147 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 14:47:25,153 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 14:47:25,154 [server.py:load_component()] - Component (machine) loaded 2024-06-16 14:47:25,155 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 14:47:25,156 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 14:47:25,157 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 14:47:25,157 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 14:47:25,159 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 14:47:25,160 [database.py:register_table()] - Found registered table job_history 2024-06-16 14:47:25,161 [database.py:register_table()] - Found registered table job_totals 2024-06-16 14:47:25,163 [server.py:load_component()] - Component (history) loaded 2024-06-16 14:47:25,164 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 14:47:25,172 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 14:47:25,173 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 14:47:25,174 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 14:47:25,181 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 14:47:25,187 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 14:47:25,194 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Detected virtualenv: /home/pi/.KlipperScreen-env 2024-06-16 14:47:25,198 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 14:47:25,201 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 14:47:25,203 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 14:47:25,219 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 14:47:25,231 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 14:47:25,232 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 14:47:25,234 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 14:47:25,236 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 14:47:25,506 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 14:47:25,525 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 14:47:25,528 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 14:47:25,614 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['network-online.target', 'sysinit.target', 'system.slice'] **After=['sysinit.target', '-.mount', 'network-online.target', 'system.slice', 'systemd-journald.socket', 'basic.target'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 14:47:25,614 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 14:47:25,614 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 14:47:25,638 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 14:47:25,645 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 14:47:25,646 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 14:47:25,649 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 14:47:25,649 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 14:47:25,652 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['sysinit.target', 'system.slice'] **After=['sysinit.target', '-.mount', 'network-online.target', 'system.slice', 'systemd-journald.socket', 'basic.target'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 14:47:25,702 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 14:47:25,705 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:47:25,707 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:47:25,713 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 14:47:25,716 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 23 Hours, 38 Minutes, 26 Seconds 2024-06-16 14:47:25,716 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 23 Hours, 38 Minutes, 27 Seconds 2024-06-16 14:47:25,716 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 23 Hours, 38 Minutes, 29 Seconds 2024-06-16 14:47:25,716 [base_deploy.py:log_info()] - Web Client mainsail: Next refresh in: 6 Days, 23 Hours, 38 Minutes, 40 Seconds 2024-06-16 14:47:25,738 [confighelper.py:create_backup()] - Backing up last working configuration to '/home/pi/printer_data/config/.moonraker.conf.bkp' 2024-06-16 14:47:25,743 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 14:47:25,744 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 14:47:25,746 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 14:47:25,776 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen status --porcelain -b) successfully finished 2024-06-16 14:47:25,798 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen branch --list --no-color) successfully finished 2024-06-16 14:47:25,838 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen remote get-url origin) successfully finished 2024-06-16 14:47:25,999 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 14:47:26,374 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 14:47:26,389 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 14:47:26,392 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 14:47:26,395 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 14:47:26,472 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen fetch origin --prune --progress) successfully finished 2024-06-16 14:47:26,507 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen merge-base --is-ancestor HEAD origin/master) successfully finished 2024-06-16 14:47:26,536 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen rev-parse HEAD) successfully finished 2024-06-16 14:47:26,593 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen describe --always --tags --long --dirty --abbrev=8) successfully finished 2024-06-16 14:47:26,614 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen rev-parse origin/master) successfully finished 2024-06-16 14:47:26,644 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen describe origin/master --always --tags --long --abbrev=8) successfully finished 2024-06-16 14:47:26,667 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen rev-list HEAD..e8fc0dbb0765ffa40619755561d0e09ec5bd8658 --count) successfully finished 2024-06-16 14:47:26,668 [git_deploy.py:log_repo_info()] - Git Repo KlipperScreen Detected: Owner: Guilouz Repository Name: KlipperScreen-Flsun-Speeder-Pad Path: /home/pi/KlipperScreen Remote: origin Branch: master Remote URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Recovery URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Current Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Upstream Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Current Version: v0.4.1-16-ge8fc0dbb Upstream Version: v0.4.1-16-ge8fc0dbb Rollback Commit: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Rollback Branch: master Rollback Version: v0.4.1-16-ge8fc0dbb Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:47:26,668 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Channel: dev 2024-06-16 14:47:26,668 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Validity check for git repo passed 2024-06-16 14:47:29,376 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 14:47:29,404 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 6.76ms 2024-06-16 14:47:29,405 [websockets.py:open()] - Websocket Opened: ID: 4072612024, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 14:47:29,501 [websockets.py:_handle_identify()] - Websocket 4072612024 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 14:47:41,609 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 192.168.1.128 2024-06-16 14:47:41,620 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 14.54ms 2024-06-16 14:47:41,621 [websockets.py:open()] - Websocket Opened: ID: 4072227816, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 14:47:41,642 [websockets.py:_handle_identify()] - Websocket 4072227816 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 14:47:41,694 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718542061542 (192.168.1.128) [_TRUSTED_USER_] 7.77ms -------------------- Log Start | Sun Jun 16 12:56:26 2024 -------------------- platform: Linux-4.9.191-aarch64-with-glibc2.31 data_path: /home/pi/printer_data is_default_data_path: False config_file: /home/pi/printer_data/config/moonraker.conf startup_warnings: [] verbose: False debug: False asyncio_debug: False is_backup_config: False is_python_package: False instance_uuid: 5042d2eac3814555a45c547938ef75a2 unix_socket_path: /home/pi/printer_data/comms/moonraker.sock software_version: v0.8.0-379-g346a3d7 git_branch: master git_remote: origin git_repo_url: https://github.com/Arksine/moonraker.git modified_files: [] unofficial_components: [] log_file: /home/pi/printer_data/logs/moonraker.log python_version: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] launch_args: /home/pi/moonraker-env/bin/python /home/pi/moonraker/moonraker/moonraker.py -d /home/pi/printer_data msgspec_enabled: False uvloop_enabled: False 2024-06-16 14:56:26,069 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 855 B 2024-06-16 14:56:26,070 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail [update_manager KlipperScreen] type = git_repo path = ~/KlipperScreen origin = https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git virtualenv = ~/.KlipperScreen-env requirements = scripts/KlipperScreen-requirements.txt system_dependencies = scripts/system-dependencies.json managed_services = KlipperScreen ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 14:56:26,254 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 14:56:26,265 [server.py:load_component()] - Component (template) loaded 2024-06-16 14:56:26,276 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 14:56:27,020 [server.py:load_component()] - Component (application) loaded 2024-06-16 14:56:27,053 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 14:56:27,156 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 14:56:27,173 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 14:56:27,179 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 1 2024-06-16 14:56:27,184 [server.py:load_component()] - Component (database) loaded 2024-06-16 14:56:27,228 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 14:56:27,269 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 14:56:27,308 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 14:56:27,312 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 14:56:27,322 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 14:56:27,331 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 14:56:27,743 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 14:56:27,749 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 14:56:27,750 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 14:56:27,765 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 14:56:27,765 [server.py:load_component()] - Component (machine) loaded 2024-06-16 14:56:27,769 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 14:56:27,772 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 14:56:27,774 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 14:56:27,776 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 14:56:27,783 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 14:56:27,788 [database.py:register_table()] - Found registered table job_history 2024-06-16 14:56:27,789 [database.py:register_table()] - Found registered table job_totals 2024-06-16 14:56:27,794 [server.py:load_component()] - Component (history) loaded 2024-06-16 14:56:27,805 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 14:56:27,816 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 14:56:27,823 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 14:56:27,828 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 14:56:27,838 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 14:56:27,924 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 14:56:27,929 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 14:56:27,937 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Detected virtualenv: /home/pi/.KlipperScreen-env 2024-06-16 14:56:27,947 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 14:56:27,949 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 14:56:28,016 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 14:56:28,029 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 14:56:28,031 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 14:56:28,033 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 14:56:28,035 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 14:56:28,448 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 14:56:28,473 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 14:56:28,476 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 14:56:28,563 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target', 'network-online.target'] **After=['network-online.target', 'systemd-journald.socket', '-.mount', 'basic.target', 'sysinit.target', 'system.slice'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 14:56:28,563 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 14:56:28,564 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 14:56:28,591 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 14:56:28,599 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 14:56:28,600 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 14:56:28,604 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 14:56:28,604 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 14:56:28,608 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['sysinit.target', 'system.slice'] **After=['sysinit.target', '-.mount', 'network-online.target', 'system.slice', 'systemd-journald.socket', 'basic.target'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 14:56:28,909 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 14:56:28,913 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:56:28,916 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:56:28,924 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 14:56:28,928 [git_deploy.py:log_repo_info()] - Git Repo KlipperScreen Detected: Owner: Guilouz Repository Name: KlipperScreen-Flsun-Speeder-Pad Path: /home/pi/KlipperScreen Remote: origin Branch: master Remote URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Recovery URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Current Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Upstream Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Current Version: v0.4.1-16-ge8fc0dbb Upstream Version: v0.4.1-16-ge8fc0dbb Rollback Commit: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Rollback Branch: master Rollback Version: v0.4.1-16-ge8fc0dbb Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 14:56:28,928 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 23 Hours, 29 Minutes, 23 Seconds 2024-06-16 14:56:28,929 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 23 Hours, 29 Minutes, 24 Seconds 2024-06-16 14:56:28,929 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 23 Hours, 29 Minutes, 25 Seconds 2024-06-16 14:56:28,929 [base_deploy.py:log_info()] - Web Client mainsail: Next refresh in: 6 Days, 23 Hours, 29 Minutes, 37 Seconds 2024-06-16 14:56:28,929 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Next refresh in: 6 Days, 23 Hours, 50 Minutes, 58 Seconds 2024-06-16 14:56:28,934 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 14:56:28,936 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 14:56:28,938 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 14:56:29,191 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 14:56:29,282 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['sysinit.target', 'system.slice'] **After=['network-online.target', 'systemd-journald.socket', '-.mount', 'basic.target', 'sysinit.target', 'system.slice'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 14:56:29,537 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 14:56:31,620 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 192.168.1.128 2024-06-16 14:56:31,625 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 7.07ms 2024-06-16 14:56:31,626 [websockets.py:open()] - Websocket Opened: ID: 4085156328, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 14:56:31,638 [websockets.py:_handle_identify()] - Websocket 4085156328 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 14:56:31,696 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718542591532 (192.168.1.128) [_TRUSTED_USER_] 10.36ms 2024-06-16 14:56:35,256 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 14:56:35,274 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 3.10ms 2024-06-16 14:56:35,275 [websockets.py:open()] - Websocket Opened: ID: 4085155824, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 14:56:35,405 [websockets.py:_handle_identify()] - Websocket 4085155824 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 14:57:56,961 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 14:57:56,967 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 14:57:56,976 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 14:59:25,882 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 7.65ms 2024-06-16 14:59:25,883 [websockets.py:open()] - Websocket Opened: ID: 4085153880, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 14:59:25,926 [websockets.py:_handle_identify()] - Websocket 4085153880 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 14:59:26,398 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718542765826 (192.168.1.128) [_TRUSTED_USER_] 4.23ms 2024-06-16 14:59:56,978 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryiOQnzH0FvIyRZyAt 2024-06-16 14:59:57,012 [application.py:post()] - Processing Uploaded File: adxl345_fysetc.cfg 2024-06-16 14:59:57,027 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 52.79ms 2024-06-16 14:59:57,047 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryZRQx2ENZ2zEsZWvh 2024-06-16 14:59:57,065 [application.py:post()] - Processing Uploaded File: adxl345_pico.cfg 2024-06-16 14:59:57,076 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 30.62ms 2024-06-16 14:59:57,096 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryOokBHy29d45yrZEX 2024-06-16 14:59:57,114 [application.py:post()] - Processing Uploaded File: KlipperScreen.conf 2024-06-16 14:59:57,125 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 31.43ms 2024-06-16 14:59:57,144 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundary1PjbnrbPfzyoEsld 2024-06-16 14:59:57,164 [application.py:post()] - Processing Uploaded File: macros.cfg 2024-06-16 14:59:57,175 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 33.02ms 2024-06-16 14:59:57,198 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryGqfluydDlm1axCvw 2024-06-16 14:59:57,218 [application.py:post()] - Processing Uploaded File: neopixels.cfg 2024-06-16 14:59:57,229 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 32.75ms 2024-06-16 14:59:57,247 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundarymJfY8A4HZoo8gxz5 2024-06-16 14:59:57,267 [application.py:post()] - Processing Uploaded File: printer.cfg 2024-06-16 14:59:57,280 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 34.06ms 2024-06-16 15:01:20,466 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryaKeYegev9Qf85CQu 2024-06-16 15:01:20,501 [application.py:post()] - Processing Uploaded File: printer.cfg 2024-06-16 15:01:20,509 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 46.89ms 2024-06-16 15:01:21,570 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:01:21,827 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:01:44,365 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryCNP8iCWrB14BRw4T 2024-06-16 15:01:44,404 [application.py:post()] - Processing Uploaded File: moonraker.conf 2024-06-16 15:01:44,427 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 65.52ms 2024-06-16 15:01:44,563 [websockets.py:on_close()] - Websocket Closed: ID: 4085155824 Close Code: 1000, Close Reason: None, Pong Time Elapsed: 9.28 2024-06-16 15:01:44,571 [websockets.py:on_close()] - Websocket Closed: ID: 4085156328 Close Code: 1001, Close Reason: Server Shutdown, Pong Time Elapsed: 2.92 2024-06-16 15:01:44,574 [websockets.py:on_close()] - Websocket Closed: ID: 4085153880 Close Code: 1001, Close Reason: Server Shutdown, Pong Time Elapsed: 8.68 2024-06-16 15:01:44,580 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:01:45,114 [server.py:main()] - Attempting Server Restart... 2024-06-16 15:01:45,129 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 855 B 2024-06-16 15:01:45,131 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail [update_manager KlipperScreen] type = git_repo path = ~/KlipperScreen origin = https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git virtualenv = ~/.KlipperScreen-env requirements = scripts/KlipperScreen-requirements.txt system_dependencies = scripts/system-dependencies.json managed_services = KlipperScreen ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 15:01:45,135 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 15:01:45,136 [server.py:load_component()] - Component (template) loaded 2024-06-16 15:01:45,143 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 15:01:45,149 [server.py:load_component()] - Component (application) loaded 2024-06-16 15:01:45,151 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 15:01:45,156 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 15:01:45,159 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 15:01:45,164 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 1 2024-06-16 15:01:45,169 [server.py:load_component()] - Component (database) loaded 2024-06-16 15:01:45,175 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 15:01:45,216 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 15:01:45,218 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 15:01:45,222 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 15:01:45,226 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 15:01:45,228 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 15:01:45,267 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 15:01:45,268 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 15:01:45,268 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 15:01:45,276 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 15:01:45,276 [server.py:load_component()] - Component (machine) loaded 2024-06-16 15:01:45,278 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 15:01:45,278 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 15:01:45,279 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 15:01:45,280 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 15:01:45,282 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 15:01:45,283 [database.py:register_table()] - Found registered table job_history 2024-06-16 15:01:45,284 [database.py:register_table()] - Found registered table job_totals 2024-06-16 15:01:45,286 [server.py:load_component()] - Component (history) loaded 2024-06-16 15:01:45,287 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 15:01:45,290 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 15:01:45,292 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 15:01:45,293 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 15:01:45,297 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 15:01:45,304 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 15:01:45,310 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 15:01:45,318 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Detected virtualenv: /home/pi/.KlipperScreen-env 2024-06-16 15:01:45,324 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 15:01:45,325 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 15:01:45,345 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 15:01:45,357 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 15:01:45,359 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 15:01:45,361 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 15:01:45,363 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 15:01:45,643 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 15:01:45,662 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 15:01:45,665 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 15:01:45,753 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target', 'network-online.target'] **After=['network-online.target', 'systemd-journald.socket', '-.mount', 'basic.target', 'sysinit.target', 'system.slice'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 15:01:45,753 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 15:01:45,753 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 15:01:45,777 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 15:01:45,784 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 15:01:45,784 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 15:01:45,788 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 15:01:45,788 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 15:01:45,791 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['sysinit.target', 'system.slice'] **After=['network-online.target', 'systemd-journald.socket', '-.mount', 'basic.target', 'sysinit.target', 'system.slice'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 15:01:45,984 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 15:01:45,987 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 15:01:45,989 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 15:01:45,994 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 15:01:45,997 [git_deploy.py:log_repo_info()] - Git Repo KlipperScreen Detected: Owner: Guilouz Repository Name: KlipperScreen-Flsun-Speeder-Pad Path: /home/pi/KlipperScreen Remote: origin Branch: master Remote URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Recovery URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Current Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Upstream Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Current Version: v0.4.1-16-ge8fc0dbb Upstream Version: v0.4.1-16-ge8fc0dbb Rollback Commit: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Rollback Branch: master Rollback Version: v0.4.1-16-ge8fc0dbb Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 15:01:45,997 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 23 Hours, 24 Minutes, 6 Seconds 2024-06-16 15:01:45,997 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 23 Hours, 24 Minutes, 7 Seconds 2024-06-16 15:01:45,997 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 23 Hours, 24 Minutes, 8 Seconds 2024-06-16 15:01:45,998 [base_deploy.py:log_info()] - Web Client mainsail: Next refresh in: 6 Days, 23 Hours, 24 Minutes, 20 Seconds 2024-06-16 15:01:45,998 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Next refresh in: 6 Days, 23 Hours, 45 Minutes, 41 Seconds 2024-06-16 15:01:46,001 [confighelper.py:create_backup()] - Backing up last working configuration to '/home/pi/printer_data/config/.moonraker.conf.bkp' 2024-06-16 15:01:46,006 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 15:01:46,008 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 15:01:46,009 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 15:01:46,264 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:01:46,654 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 15:01:47,268 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 192.168.1.128 2024-06-16 15:01:47,273 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 8.31ms 2024-06-16 15:01:47,274 [websockets.py:open()] - Websocket Opened: ID: 4074325544, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 15:01:47,283 [websockets.py:_handle_identify()] - Websocket 4074325544 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 15:01:47,347 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718542907184 (192.168.1.128) [_TRUSTED_USER_] 7.32ms 2024-06-16 15:01:49,549 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 15:01:49,574 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 6.19ms 2024-06-16 15:01:49,576 [websockets.py:open()] - Websocket Opened: ID: 4074327896, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 15:01:49,657 [websockets.py:_handle_identify()] - Websocket 4074327896 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 15:01:58,896 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryWePeqxTPK80qYbmd 2024-06-16 15:01:58,938 [application.py:post()] - Processing Uploaded File: KlipperScreen.conf 2024-06-16 15:01:58,962 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 68.76ms 2024-06-16 15:01:59,093 [websockets.py:write_to_socket()] - Websocket closed while writing: 4074327896 2024-06-16 15:01:59,094 [websockets.py:on_close()] - Websocket Closed: ID: 4074327896 Close Code: None, Close Reason: None, Pong Time Elapsed: 9.52 2024-06-16 15:02:03,457 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 3.55ms 2024-06-16 15:02:03,458 [websockets.py:open()] - Websocket Opened: ID: 4074359536, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 15:02:03,523 [websockets.py:_handle_identify()] - Websocket 4074359536 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 15:02:12,650 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:02:13,915 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:02:37,863 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundarytNZ9p298zIE0dO0U 2024-06-16 15:02:37,901 [application.py:post()] - Processing Uploaded File: variables.cfg 2024-06-16 15:02:37,917 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 57.54ms 2024-06-16 15:02:37,936 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:02:39,201 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:02:57,430 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:02:58,698 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:04:15,202 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryFZiP6Pmx7Va6VAPB 2024-06-16 15:04:15,246 [application.py:post()] - Processing Uploaded File: KlipperScreen.conf 2024-06-16 15:04:15,270 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 71.36ms 2024-06-16 15:04:15,331 [websockets.py:write_to_socket()] - Websocket closed while writing: 4074359536 2024-06-16 15:04:15,331 [websockets.py:on_close()] - Websocket Closed: ID: 4074359536 Close Code: None, Close Reason: None, Pong Time Elapsed: 1.87 2024-06-16 15:04:21,689 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 2.97ms 2024-06-16 15:04:21,690 [websockets.py:open()] - Websocket Opened: ID: 4074301208, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 15:04:21,756 [websockets.py:_handle_identify()] - Websocket 4074301208 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 15:04:29,113 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 15:04:29,120 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 15:04:29,129 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 15:07:49,778 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryZGiZeKkBBCmr8jPP 2024-06-16 15:07:49,817 [application.py:post()] - Processing Uploaded File: moonraker.conf 2024-06-16 15:07:49,834 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 59.67ms 2024-06-16 15:07:49,961 [websockets.py:on_close()] - Websocket Closed: ID: 4074301208 Close Code: 1000, Close Reason: None, Pong Time Elapsed: 8.27 2024-06-16 15:07:49,967 [websockets.py:on_close()] - Websocket Closed: ID: 4074325544 Close Code: 1001, Close Reason: Server Shutdown, Pong Time Elapsed: 2.68 2024-06-16 15:07:49,972 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:07:50,509 [server.py:main()] - Attempting Server Restart... 2024-06-16 15:07:50,524 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 855 B 2024-06-16 15:07:50,525 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail [update_manager KlipperScreen] type = git_repo path = ~/KlipperScreen origin = https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git virtualenv = ~/.KlipperScreen-env requirements = scripts/KlipperScreen-requirements.txt system_dependencies = scripts/system-dependencies.json managed_services = KlipperScreen ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 15:07:50,530 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 15:07:50,531 [server.py:load_component()] - Component (template) loaded 2024-06-16 15:07:50,541 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 15:07:50,546 [server.py:load_component()] - Component (application) loaded 2024-06-16 15:07:50,548 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 15:07:50,552 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 15:07:50,555 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 15:07:50,563 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 1 2024-06-16 15:07:50,568 [server.py:load_component()] - Component (database) loaded 2024-06-16 15:07:50,574 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 15:07:50,617 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 15:07:50,618 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 15:07:50,623 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 15:07:50,627 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 15:07:50,629 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 15:07:50,666 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 15:07:50,667 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 15:07:50,667 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 15:07:50,675 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 15:07:50,675 [server.py:load_component()] - Component (machine) loaded 2024-06-16 15:07:50,676 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 15:07:50,677 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 15:07:50,678 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 15:07:50,678 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 15:07:50,681 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 15:07:50,681 [database.py:register_table()] - Found registered table job_history 2024-06-16 15:07:50,682 [database.py:register_table()] - Found registered table job_totals 2024-06-16 15:07:50,684 [server.py:load_component()] - Component (history) loaded 2024-06-16 15:07:50,685 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 15:07:50,687 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 15:07:50,689 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 15:07:50,690 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 15:07:50,693 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 15:07:50,701 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 15:07:50,707 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 15:07:50,715 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Detected virtualenv: /home/pi/.KlipperScreen-env 2024-06-16 15:07:50,721 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 15:07:50,723 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 15:07:50,742 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 15:07:50,755 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 15:07:50,757 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 15:07:50,759 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 15:07:50,761 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 15:07:51,125 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 15:07:51,145 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 15:07:51,147 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 15:07:51,235 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target', 'network-online.target'] **After=['network-online.target', 'systemd-journald.socket', '-.mount', 'basic.target', 'sysinit.target', 'system.slice'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 15:07:51,235 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 15:07:51,235 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 15:07:51,259 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 15:07:51,267 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 15:07:51,267 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 15:07:51,271 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 15:07:51,271 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 15:07:51,277 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['sysinit.target', 'system.slice'] **After=['network-online.target', 'systemd-journald.socket', '-.mount', 'basic.target', 'sysinit.target', 'system.slice'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 15:07:51,455 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 15:07:51,457 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 15:07:51,464 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 15:07:51,471 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 15:07:51,474 [git_deploy.py:log_repo_info()] - Git Repo KlipperScreen Detected: Owner: Guilouz Repository Name: KlipperScreen-Flsun-Speeder-Pad Path: /home/pi/KlipperScreen Remote: origin Branch: master Remote URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Recovery URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Current Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Upstream Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Current Version: v0.4.1-16-ge8fc0dbb Upstream Version: v0.4.1-16-ge8fc0dbb Rollback Commit: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Rollback Branch: master Rollback Version: v0.4.1-16-ge8fc0dbb Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 15:07:51,474 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 23 Hours, 18 Minutes 2024-06-16 15:07:51,474 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 23 Hours, 18 Minutes, 2 Seconds 2024-06-16 15:07:51,474 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 23 Hours, 18 Minutes, 3 Seconds 2024-06-16 15:07:51,475 [base_deploy.py:log_info()] - Web Client mainsail: Next refresh in: 6 Days, 23 Hours, 18 Minutes, 14 Seconds 2024-06-16 15:07:51,475 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Next refresh in: 6 Days, 23 Hours, 39 Minutes, 35 Seconds 2024-06-16 15:07:51,478 [confighelper.py:create_backup()] - Backing up last working configuration to '/home/pi/printer_data/config/.moonraker.conf.bkp' 2024-06-16 15:07:51,483 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 15:07:51,485 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 15:07:51,486 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 15:07:51,741 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:07:52,094 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 192.168.1.128 2024-06-16 15:07:52,098 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 7.79ms 2024-06-16 15:07:52,100 [websockets.py:open()] - Websocket Opened: ID: 4104093120, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 15:07:52,114 [websockets.py:_handle_identify()] - Websocket 4104093120 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 15:07:52,141 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 15:07:52,176 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718543271990 (192.168.1.128) [_TRUSTED_USER_] 6.28ms 2024-06-16 15:07:52,189 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 15:07:52,192 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 15:07:52,195 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 15:07:54,518 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 15:07:54,544 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 6.26ms 2024-06-16 15:07:54,545 [websockets.py:open()] - Websocket Opened: ID: 4103796360, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 15:07:54,634 [websockets.py:_handle_identify()] - Websocket 4103796360 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 15:10:26,156 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryRBNH54ausWzZdM5f 2024-06-16 15:10:26,191 [application.py:post()] - Processing Uploaded File: printer.cfg 2024-06-16 15:10:26,199 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 46.73ms 2024-06-16 15:10:26,229 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:10:27,493 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:11:57,878 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 15:11:57,885 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 15:11:57,895 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 15:12:31,257 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:12:32,525 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:12:44,403 [websockets.py:write_to_socket()] - Websocket closed while writing: 4103796360 2024-06-16 15:12:44,404 [websockets.py:on_close()] - Websocket Closed: ID: 4103796360 Close Code: None, Close Reason: None, Pong Time Elapsed: 9.86 2024-06-16 15:12:48,804 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 3.25ms 2024-06-16 15:12:48,805 [websockets.py:open()] - Websocket Opened: ID: 4072184320, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 15:12:48,867 [websockets.py:_handle_identify()] - Websocket 4072184320 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 15:13:42,870 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundary0akClgogOVlS7jPU 2024-06-16 15:13:42,901 [application.py:post()] - Processing Uploaded File: KlipperScreen.conf 2024-06-16 15:13:42,918 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 51.25ms 2024-06-16 15:13:42,998 [websockets.py:write_to_socket()] - Websocket closed while writing: 4072184320 2024-06-16 15:13:42,998 [websockets.py:on_close()] - Websocket Closed: ID: 4072184320 Close Code: None, Close Reason: None, Pong Time Elapsed: 4.19 2024-06-16 15:13:47,263 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 2.75ms 2024-06-16 15:13:47,264 [websockets.py:open()] - Websocket Opened: ID: 4072266168, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 15:13:47,325 [websockets.py:_handle_identify()] - Websocket 4072266168 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 15:14:03,114 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 15:14:03,117 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 15:14:03,121 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 15:14:04,648 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryToa4KtG1yVTqrU24 2024-06-16 15:14:04,685 [application.py:post()] - Processing Uploaded File: moonraker.conf 2024-06-16 15:14:04,702 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 57.13ms 2024-06-16 15:14:04,822 [websockets.py:on_close()] - Websocket Closed: ID: 4072266168 Close Code: 1000, Close Reason: None, Pong Time Elapsed: 7.55 2024-06-16 15:14:04,829 [websockets.py:on_close()] - Websocket Closed: ID: 4104093120 Close Code: 1001, Close Reason: Server Shutdown, Pong Time Elapsed: 2.72 2024-06-16 15:14:04,835 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:14:05,368 [server.py:main()] - Attempting Server Restart... 2024-06-16 15:14:05,378 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 855 B 2024-06-16 15:14:05,380 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail [update_manager KlipperScreen] type = git_repo path = ~/KlipperScreen origin = https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git virtualenv = ~/.KlipperScreen-env requirements = scripts/KlipperScreen-requirements.txt system_dependencies = scripts/system-dependencies.json managed_services = KlipperScreen ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 15:14:05,384 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 15:14:05,386 [server.py:load_component()] - Component (template) loaded 2024-06-16 15:14:05,395 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 15:14:05,400 [server.py:load_component()] - Component (application) loaded 2024-06-16 15:14:05,403 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 15:14:05,407 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 15:14:05,411 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 15:14:05,417 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 1 2024-06-16 15:14:05,422 [server.py:load_component()] - Component (database) loaded 2024-06-16 15:14:05,428 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 15:14:05,471 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 15:14:05,473 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 15:14:05,477 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 15:14:05,480 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 15:14:05,482 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 15:14:05,520 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 15:14:05,521 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 15:14:05,521 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 15:14:05,529 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 15:14:05,529 [server.py:load_component()] - Component (machine) loaded 2024-06-16 15:14:05,530 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 15:14:05,531 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 15:14:05,532 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 15:14:05,532 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 15:14:05,534 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 15:14:05,535 [database.py:register_table()] - Found registered table job_history 2024-06-16 15:14:05,536 [database.py:register_table()] - Found registered table job_totals 2024-06-16 15:14:05,538 [server.py:load_component()] - Component (history) loaded 2024-06-16 15:14:05,540 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 15:14:05,542 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 15:14:05,544 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 15:14:05,545 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 15:14:05,549 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 15:14:05,556 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 15:14:05,562 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 15:14:05,570 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Detected virtualenv: /home/pi/.KlipperScreen-env 2024-06-16 15:14:05,575 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 15:14:05,576 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 15:14:05,594 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 15:14:05,605 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 15:14:05,607 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 15:14:05,609 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 15:14:05,611 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 15:14:05,886 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 15:14:05,905 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 15:14:05,908 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 15:14:05,995 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target', 'network-online.target'] **After=['network-online.target', 'systemd-journald.socket', '-.mount', 'basic.target', 'sysinit.target', 'system.slice'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 15:14:05,995 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 15:14:05,996 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 15:14:06,020 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 15:14:06,028 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 15:14:06,028 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 15:14:06,031 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 15:14:06,032 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 15:14:06,036 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['sysinit.target', 'system.slice'] **After=['network-online.target', 'systemd-journald.socket', '-.mount', 'basic.target', 'sysinit.target', 'system.slice'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 15:14:06,208 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 15:14:06,210 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 15:14:06,213 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 15:14:06,218 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 15:14:06,221 [git_deploy.py:log_repo_info()] - Git Repo KlipperScreen Detected: Owner: Guilouz Repository Name: KlipperScreen-Flsun-Speeder-Pad Path: /home/pi/KlipperScreen Remote: origin Branch: master Remote URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Recovery URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Current Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Upstream Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Current Version: v0.4.1-16-ge8fc0dbb Upstream Version: v0.4.1-16-ge8fc0dbb Rollback Commit: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Rollback Branch: master Rollback Version: v0.4.1-16-ge8fc0dbb Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 15:14:06,221 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 23 Hours, 11 Minutes, 46 Seconds 2024-06-16 15:14:06,221 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 23 Hours, 11 Minutes, 47 Seconds 2024-06-16 15:14:06,221 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 23 Hours, 11 Minutes, 48 Seconds 2024-06-16 15:14:06,222 [base_deploy.py:log_info()] - Web Client mainsail: Next refresh in: 6 Days, 23 Hours, 11 Minutes, 59 Seconds 2024-06-16 15:14:06,222 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Next refresh in: 6 Days, 23 Hours, 33 Minutes, 20 Seconds 2024-06-16 15:14:06,225 [confighelper.py:create_backup()] - Backing up last working configuration to '/home/pi/printer_data/config/.moonraker.conf.bkp' 2024-06-16 15:14:06,231 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 15:14:06,232 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 15:14:06,234 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 15:14:06,489 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:14:06,881 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 15:14:06,925 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 15:14:06,928 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 15:14:06,934 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 15:14:09,518 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 15:14:09,545 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 6.52ms 2024-06-16 15:14:09,546 [websockets.py:open()] - Websocket Opened: ID: 4074141272, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 15:14:09,638 [websockets.py:_handle_identify()] - Websocket 4074141272 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 15:14:11,567 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 192.168.1.128 2024-06-16 15:14:11,572 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 7.46ms 2024-06-16 15:14:11,573 [websockets.py:open()] - Websocket Opened: ID: 4074139832, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 15:14:11,581 [websockets.py:_handle_identify()] - Websocket 4074139832 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 15:14:11,642 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718543651466 (192.168.1.128) [_TRUSTED_USER_] 7.56ms 2024-06-16 15:16:14,846 [websockets.py:on_close()] - Websocket Closed: ID: 4074139832 Close Code: 1001, Close Reason: None, Pong Time Elapsed: 3.26 2024-06-16 15:16:15,374 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 7.59ms 2024-06-16 15:16:15,375 [websockets.py:open()] - Websocket Opened: ID: 4074143384, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 15:16:15,391 [websockets.py:_handle_identify()] - Websocket 4074143384 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 15:16:15,861 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718543775264 (192.168.1.128) [_TRUSTED_USER_] 5.22ms 2024-06-16 15:18:35,852 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:18:37,122 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:19:08,532 [websockets.py:on_close()] - Websocket Closed: ID: 4074143384 Close Code: 1001, Close Reason: None, Pong Time Elapsed: 3.15 2024-06-16 15:20:07,621 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 15:20:07,627 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 15:20:07,636 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 15:29:45,514 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:29:46,781 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:31:17,122 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 15:31:17,130 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 15:31:17,139 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 15:32:57,298 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 7.51ms 2024-06-16 15:32:57,300 [websockets.py:open()] - Websocket Opened: ID: 4074087328, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 15:32:57,329 [websockets.py:_handle_identify()] - Websocket 4074087328 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 15:32:57,784 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718544777195 (192.168.1.128) [_TRUSTED_USER_] 5.25ms 2024-06-16 15:54:31,339 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 7.89ms 2024-06-16 15:54:31,340 [websockets.py:open()] - Websocket Opened: ID: 4085204952, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 15:54:31,379 [websockets.py:_handle_identify()] - Websocket 4085204952 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 15:54:31,845 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718546071220 (192.168.1.128) [_TRUSTED_USER_] 4.51ms 2024-06-16 15:54:45,732 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundary45chc5NyI1j8thQH 2024-06-16 15:54:45,765 [application.py:post()] - Processing Uploaded File: adxl345_fysetc.cfg 2024-06-16 15:54:45,781 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 53.54ms 2024-06-16 15:54:45,814 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundary5NY61NA88VRvtEDe 2024-06-16 15:54:45,832 [application.py:post()] - Processing Uploaded File: adxl345_pico.cfg 2024-06-16 15:54:45,844 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 31.27ms 2024-06-16 15:54:45,863 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryklDTy4zfcPA7C1YH 2024-06-16 15:54:45,882 [application.py:post()] - Processing Uploaded File: KlipperScreen.conf 2024-06-16 15:54:45,895 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 33.83ms 2024-06-16 15:54:45,912 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundarywoqfxneFBrsIE6EI 2024-06-16 15:54:45,930 [application.py:post()] - Processing Uploaded File: macros.cfg 2024-06-16 15:54:45,940 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 29.31ms 2024-06-16 15:54:45,993 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundary9GE0GGiW5f4EYbNW 2024-06-16 15:54:46,010 [application.py:post()] - Processing Uploaded File: neopixels.cfg 2024-06-16 15:54:46,020 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 28.92ms 2024-06-16 15:54:46,058 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryXpTqnGDPAb8uGhFy 2024-06-16 15:54:46,080 [application.py:post()] - Processing Uploaded File: printer.cfg 2024-06-16 15:54:46,092 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 35.98ms 2024-06-16 15:54:59,829 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryYUq1Pzsjl3vMJOoH 2024-06-16 15:54:59,864 [application.py:post()] - Processing Uploaded File: printer.cfg 2024-06-16 15:54:59,880 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 53.92ms 2024-06-16 15:54:59,912 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:54:59,917 [common.py:build_error()] - JSON-RPC Request Error - Requested Method: printer.info, Code: 503, Message: Klippy Host not connected 2024-06-16 15:55:01,181 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:55:03,088 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryjk1n3NddAAwgZHiP 2024-06-16 15:55:03,123 [application.py:post()] - Processing Uploaded File: adxl345_fysetc.cfg 2024-06-16 15:55:03,140 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 54.11ms 2024-06-16 15:55:03,161 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:55:04,430 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:56:34,969 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 15:56:34,972 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 15:56:34,977 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 15:57:43,556 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryGfEpAB3FRh9GI4F4 2024-06-16 15:57:43,594 [application.py:post()] - Processing Uploaded File: adxl345_pico.cfg 2024-06-16 15:57:43,612 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 59.25ms 2024-06-16 15:57:43,635 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:57:44,904 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:59:06,503 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundary2BmJBvEAxyzq6Ox6 2024-06-16 15:59:06,535 [application.py:post()] - Processing Uploaded File: printer.cfg 2024-06-16 15:59:06,553 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 53.20ms 2024-06-16 15:59:06,573 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:59:07,839 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:59:30,068 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryGtCuEMbbsE7z5TPl 2024-06-16 15:59:30,100 [application.py:post()] - Processing Uploaded File: adxl345_fysetc.cfg 2024-06-16 15:59:30,117 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 51.43ms 2024-06-16 15:59:30,144 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:59:31,413 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:59:40,623 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryS5GX1Y7aHubG3WcB 2024-06-16 15:59:40,659 [application.py:post()] - Processing Uploaded File: adxl345_pico.cfg 2024-06-16 15:59:40,675 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 54.65ms 2024-06-16 15:59:40,728 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 15:59:41,997 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 15:59:57,397 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundary2yWRYyqaTXxRmu2M 2024-06-16 15:59:57,434 [application.py:post()] - Processing Uploaded File: KlipperScreen.conf 2024-06-16 15:59:57,452 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 58.09ms 2024-06-16 15:59:57,533 [websockets.py:write_to_socket()] - Websocket closed while writing: 4074141272 2024-06-16 15:59:57,534 [websockets.py:on_close()] - Websocket Closed: ID: 4074141272 Close Code: None, Close Reason: None, Pong Time Elapsed: 7.98 2024-06-16 16:00:01,822 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 3.29ms 2024-06-16 16:00:01,823 [websockets.py:open()] - Websocket Opened: ID: 4072188704, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 16:00:01,887 [websockets.py:_handle_identify()] - Websocket 4072188704 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 16:00:07,331 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryvaGwdrMngBUnLBfi 2024-06-16 16:00:07,367 [application.py:post()] - Processing Uploaded File: macros.cfg 2024-06-16 16:00:07,384 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 55.55ms 2024-06-16 16:00:07,404 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:00:08,670 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:00:22,563 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundarySKDkuGGLwc2kVKuO 2024-06-16 16:00:22,606 [application.py:post()] - Processing Uploaded File: neopixels.cfg 2024-06-16 16:00:22,630 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 70.18ms 2024-06-16 16:00:22,659 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:00:23,929 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:00:29,758 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundary4mZAnnBhAP4G4als 2024-06-16 16:00:29,797 [application.py:post()] - Processing Uploaded File: printer.cfg 2024-06-16 16:00:29,815 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 59.60ms 2024-06-16 16:00:29,848 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:00:31,113 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:00:50,304 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:00:51,601 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:02:25,159 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 16:02:25,166 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 16:02:25,178 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 16:04:05,975 [websockets.py:on_close()] - Websocket Closed: ID: 4074087328 Close Code: 1001, Close Reason: None, Pong Time Elapsed: 8.66 2024-06-16 16:04:06,305 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 7.37ms 2024-06-16 16:04:06,306 [websockets.py:open()] - Websocket Opened: ID: 4074090400, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 16:04:06,322 [websockets.py:_handle_identify()] - Websocket 4074090400 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 16:04:06,804 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718546646154 (192.168.1.128) [_TRUSTED_USER_] 4.33ms 2024-06-16 16:04:56,039 [websockets.py:on_close()] - Websocket Closed: ID: 4074090400 Close Code: 1001, Close Reason: None, Pong Time Elapsed: 9.72 2024-06-16 16:14:39,741 [websockets.py:on_close()] - Websocket Closed: ID: 4072188704 Close Code: None, Close Reason: None, Pong Time Elapsed: 7.91 2024-06-16 16:14:46,330 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 3.21ms 2024-06-16 16:14:46,331 [websockets.py:open()] - Websocket Opened: ID: 4072318096, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 16:14:46,399 [websockets.py:_handle_identify()] - Websocket 4072318096 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display -------------------- Log Start | Sun Jun 16 14:16:20 2024 -------------------- platform: Linux-4.9.191-aarch64-with-glibc2.31 data_path: /home/pi/printer_data is_default_data_path: False config_file: /home/pi/printer_data/config/moonraker.conf startup_warnings: [] verbose: False debug: False asyncio_debug: False is_backup_config: False is_python_package: False instance_uuid: 5042d2eac3814555a45c547938ef75a2 unix_socket_path: /home/pi/printer_data/comms/moonraker.sock software_version: v0.8.0-379-g346a3d7 git_branch: master git_remote: origin git_repo_url: https://github.com/Arksine/moonraker.git modified_files: [] unofficial_components: [] log_file: /home/pi/printer_data/logs/moonraker.log python_version: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] launch_args: /home/pi/moonraker-env/bin/python /home/pi/moonraker/moonraker/moonraker.py -d /home/pi/printer_data msgspec_enabled: False uvloop_enabled: False 2024-06-16 16:16:20,348 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 855 B 2024-06-16 16:16:20,348 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail [update_manager KlipperScreen] type = git_repo path = ~/KlipperScreen origin = https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git virtualenv = ~/.KlipperScreen-env requirements = scripts/KlipperScreen-requirements.txt system_dependencies = scripts/system-dependencies.json managed_services = KlipperScreen ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 16:16:20,537 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 16:16:20,548 [server.py:load_component()] - Component (template) loaded 2024-06-16 16:16:20,559 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 16:16:21,337 [server.py:load_component()] - Component (application) loaded 2024-06-16 16:16:21,374 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 16:16:21,483 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 16:16:21,502 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 16:16:21,508 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 2 2024-06-16 16:16:21,514 [server.py:load_component()] - Component (database) loaded 2024-06-16 16:16:21,552 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 16:16:21,600 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 16:16:21,642 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 16:16:21,646 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 16:16:21,654 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 16:16:21,663 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 16:16:22,083 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 16:16:22,087 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 16:16:22,088 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 16:16:22,103 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 16:16:22,104 [server.py:load_component()] - Component (machine) loaded 2024-06-16 16:16:22,108 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 16:16:22,111 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 16:16:22,113 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 16:16:22,115 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 16:16:22,122 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 16:16:22,126 [database.py:register_table()] - Found registered table job_history 2024-06-16 16:16:22,127 [database.py:register_table()] - Found registered table job_totals 2024-06-16 16:16:22,131 [server.py:load_component()] - Component (history) loaded 2024-06-16 16:16:22,142 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 16:16:22,151 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 16:16:22,158 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 16:16:22,163 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 16:16:22,176 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 16:16:22,260 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 16:16:22,265 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 16:16:22,273 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Detected virtualenv: /home/pi/.KlipperScreen-env 2024-06-16 16:16:22,286 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 16:16:22,288 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 16:16:22,352 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 16:16:22,365 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 16:16:22,367 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 16:16:22,370 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 16:16:22,372 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 16:16:22,784 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 16:16:22,809 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 16:16:22,812 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 16:16:22,897 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'network-online.target', 'sysinit.target'] **After=['basic.target', '-.mount', 'network-online.target', 'sysinit.target', 'system.slice', 'systemd-journald.socket'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 16:16:22,897 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 16:16:22,898 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 16:16:22,923 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 16:16:22,930 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 16:16:22,931 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 16:16:22,934 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 16:16:22,935 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 16:16:22,938 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['sysinit.target', 'system.slice'] **After=['network-online.target', 'systemd-journald.socket', '-.mount', 'basic.target', 'sysinit.target', 'system.slice'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 16:16:23,170 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 16:16:23,174 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:16:23,178 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:16:23,185 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 16:16:23,188 [git_deploy.py:log_repo_info()] - Git Repo KlipperScreen Detected: Owner: Guilouz Repository Name: KlipperScreen-Flsun-Speeder-Pad Path: /home/pi/KlipperScreen Remote: origin Branch: master Remote URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Recovery URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Current Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Upstream Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Current Version: v0.4.1-16-ge8fc0dbb Upstream Version: v0.4.1-16-ge8fc0dbb Rollback Commit: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Rollback Branch: master Rollback Version: v0.4.1-16-ge8fc0dbb Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:16:23,189 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 22 Hours, 9 Minutes, 29 Seconds 2024-06-16 16:16:23,189 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 22 Hours, 9 Minutes, 30 Seconds 2024-06-16 16:16:23,189 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 22 Hours, 9 Minutes, 31 Seconds 2024-06-16 16:16:23,190 [base_deploy.py:log_info()] - Web Client mainsail: Next refresh in: 6 Days, 22 Hours, 9 Minutes, 42 Seconds 2024-06-16 16:16:23,190 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Next refresh in: 6 Days, 22 Hours, 31 Minutes, 3 Seconds 2024-06-16 16:16:23,193 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 16:16:23,194 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 16:16:23,196 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 16:16:23,452 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:16:23,582 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target'] **After=['basic.target', '-.mount', 'network-online.target', 'sysinit.target', 'system.slice', 'systemd-journald.socket'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 16:16:23,841 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 16:16:29,423 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 16:16:29,443 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 8.85ms 2024-06-16 16:16:29,444 [websockets.py:open()] - Websocket Opened: ID: 4092970944, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 16:16:29,569 [websockets.py:_handle_identify()] - Websocket 4092970944 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 16:17:51,878 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 16:17:51,886 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 16:17:51,894 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 16:18:05,503 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:18:05,505 [server.py:_handle_term_signal()] - Exiting with signal SIGTERM 2024-06-16 16:18:05,559 [websockets.py:on_close()] - Websocket Closed: ID: 4092970944 Close Code: None, Close Reason: None, Pong Time Elapsed: 6.11 2024-06-16 16:18:05,630 [server.py:main()] - Server Shutdown -------------------- Log Start | Sun Jun 16 14:18:35 2024 -------------------- platform: Linux-4.9.191-aarch64-with-glibc2.31 data_path: /home/pi/printer_data is_default_data_path: False config_file: /home/pi/printer_data/config/moonraker.conf startup_warnings: [] verbose: False debug: False asyncio_debug: False is_backup_config: False is_python_package: False instance_uuid: 5042d2eac3814555a45c547938ef75a2 unix_socket_path: /home/pi/printer_data/comms/moonraker.sock software_version: v0.8.0-379-g346a3d7 git_branch: master git_remote: origin git_repo_url: https://github.com/Arksine/moonraker.git modified_files: [] unofficial_components: [] log_file: /home/pi/printer_data/logs/moonraker.log python_version: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] launch_args: /home/pi/moonraker-env/bin/python /home/pi/moonraker/moonraker/moonraker.py -d /home/pi/printer_data msgspec_enabled: False uvloop_enabled: False 2024-06-16 16:18:35,044 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 855 B 2024-06-16 16:18:35,044 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail [update_manager KlipperScreen] type = git_repo path = ~/KlipperScreen origin = https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git virtualenv = ~/.KlipperScreen-env requirements = scripts/KlipperScreen-requirements.txt system_dependencies = scripts/system-dependencies.json managed_services = KlipperScreen ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 16:18:35,238 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 16:18:35,248 [server.py:load_component()] - Component (template) loaded 2024-06-16 16:18:35,259 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 16:18:36,021 [server.py:load_component()] - Component (application) loaded 2024-06-16 16:18:36,058 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 16:18:36,164 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 16:18:36,188 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 16:18:36,194 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 2 2024-06-16 16:18:36,201 [server.py:load_component()] - Component (database) loaded 2024-06-16 16:18:36,243 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 16:18:36,294 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 16:18:36,337 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 16:18:36,341 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 16:18:36,349 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 16:18:36,358 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 16:18:36,781 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 16:18:36,785 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 16:18:36,785 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 16:18:36,801 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 16:18:36,801 [server.py:load_component()] - Component (machine) loaded 2024-06-16 16:18:36,806 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 16:18:36,809 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 16:18:36,810 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 16:18:36,813 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 16:18:36,820 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 16:18:36,823 [database.py:register_table()] - Found registered table job_history 2024-06-16 16:18:36,824 [database.py:register_table()] - Found registered table job_totals 2024-06-16 16:18:36,828 [server.py:load_component()] - Component (history) loaded 2024-06-16 16:18:36,839 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 16:18:36,847 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 16:18:36,852 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 16:18:36,857 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 16:18:36,866 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 16:18:36,953 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 16:18:36,958 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 16:18:36,967 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Detected virtualenv: /home/pi/.KlipperScreen-env 2024-06-16 16:18:36,977 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 16:18:36,980 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 16:18:37,047 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 16:18:37,059 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 16:18:37,062 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 16:18:37,064 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 16:18:37,066 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 16:18:37,482 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 16:18:37,507 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 16:18:37,510 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 16:18:37,596 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'network-online.target', 'sysinit.target'] **After=['sysinit.target', 'basic.target', 'network-online.target', 'systemd-journald.socket', '-.mount', 'system.slice'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 16:18:37,596 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 16:18:37,597 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 16:18:37,622 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 16:18:37,629 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 16:18:37,630 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 16:18:37,634 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 16:18:37,634 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 16:18:37,638 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target'] **After=['basic.target', '-.mount', 'network-online.target', 'sysinit.target', 'system.slice', 'systemd-journald.socket'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 16:18:37,846 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 16:18:37,848 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:18:37,851 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:18:37,858 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 16:18:37,861 [git_deploy.py:log_repo_info()] - Git Repo KlipperScreen Detected: Owner: Guilouz Repository Name: KlipperScreen-Flsun-Speeder-Pad Path: /home/pi/KlipperScreen Remote: origin Branch: master Remote URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Recovery URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Current Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Upstream Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Current Version: v0.4.1-16-ge8fc0dbb Upstream Version: v0.4.1-16-ge8fc0dbb Rollback Commit: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Rollback Branch: master Rollback Version: v0.4.1-16-ge8fc0dbb Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:18:37,861 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 22 Hours, 7 Minutes, 14 Seconds 2024-06-16 16:18:37,862 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 22 Hours, 7 Minutes, 15 Seconds 2024-06-16 16:18:37,862 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 22 Hours, 7 Minutes, 16 Seconds 2024-06-16 16:18:37,862 [base_deploy.py:log_info()] - Web Client mainsail: Next refresh in: 6 Days, 22 Hours, 7 Minutes, 28 Seconds 2024-06-16 16:18:37,862 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Next refresh in: 6 Days, 22 Hours, 28 Minutes, 49 Seconds 2024-06-16 16:18:37,866 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 16:18:37,868 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 16:18:37,871 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 16:18:38,128 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:18:38,159 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 192.168.1.128 2024-06-16 16:18:38,174 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 19.94ms 2024-06-16 16:18:38,175 [websockets.py:open()] - Websocket Opened: ID: 4106914088, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 16:18:38,229 [websockets.py:_handle_identify()] - Websocket 4106914088 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 16:18:38,286 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718547518057 (192.168.1.128) [_TRUSTED_USER_] 11.16ms 2024-06-16 16:18:38,297 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target'] **After=['sysinit.target', 'basic.target', 'network-online.target', 'systemd-journald.socket', '-.mount', 'system.slice'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 16:18:38,555 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 16:18:47,087 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 16:18:47,104 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 5.06ms 2024-06-16 16:18:47,105 [websockets.py:open()] - Websocket Opened: ID: 4087676664, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 16:18:47,237 [websockets.py:_handle_identify()] - Websocket 4087676664 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 16:20:10,067 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 16:20:10,073 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 16:20:10,077 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 16:20:34,578 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryUqFjuRPTOwbGmtP6 2024-06-16 16:20:34,619 [application.py:post()] - Processing Uploaded File: printer.cfg 2024-06-16 16:20:34,644 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 69.29ms 2024-06-16 16:20:34,668 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:20:35,935 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:20:43,773 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:20:45,048 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:21:16,609 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundarytxhiUl9cSw04C7xJ 2024-06-16 16:21:16,674 [application.py:post()] - Processing Uploaded File: printer.cfg 2024-06-16 16:21:16,699 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 93.52ms 2024-06-16 16:21:16,725 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:21:17,991 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:21:23,851 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:21:25,121 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:21:52,112 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryOuyu3oBcnyW1TOhS 2024-06-16 16:21:52,149 [application.py:post()] - Processing Uploaded File: printer.cfg 2024-06-16 16:21:52,166 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 58.53ms 2024-06-16 16:21:52,193 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:21:53,458 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:23:27,032 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 16:23:27,039 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 16:23:27,048 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 16:25:18,285 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundary63BWaig6Y6hCAYNP 2024-06-16 16:25:18,299 [application.py:post()] - Processing Uploaded File: moonraker.conf 2024-06-16 16:25:18,307 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 22.88ms 2024-06-16 16:25:18,444 [websockets.py:on_close()] - Websocket Closed: ID: 4087676664 Close Code: 1000, Close Reason: None, Pong Time Elapsed: 1.33 2024-06-16 16:25:18,450 [websockets.py:on_close()] - Websocket Closed: ID: 4106914088 Close Code: 1001, Close Reason: Server Shutdown, Pong Time Elapsed: 0.26 2024-06-16 16:25:18,455 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:25:18,994 [server.py:main()] - Attempting Server Restart... 2024-06-16 16:25:19,010 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 855 B 2024-06-16 16:25:19,012 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail [update_manager KlipperScreen] type = git_repo path = ~/KlipperScreen origin = https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git virtualenv = ~/.KlipperScreen-env requirements = scripts/KlipperScreen-requirements.txt system_dependencies = scripts/system-dependencies.json managed_services = KlipperScreen ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 16:25:19,016 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 16:25:19,017 [server.py:load_component()] - Component (template) loaded 2024-06-16 16:25:19,024 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 16:25:19,030 [server.py:load_component()] - Component (application) loaded 2024-06-16 16:25:19,032 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 16:25:19,036 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 16:25:19,039 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 16:25:19,044 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 2 2024-06-16 16:25:19,049 [server.py:load_component()] - Component (database) loaded 2024-06-16 16:25:19,055 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 16:25:19,097 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 16:25:19,098 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 16:25:19,103 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 16:25:19,107 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 16:25:19,109 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 16:25:19,150 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 16:25:19,151 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 16:25:19,151 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 16:25:19,160 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 16:25:19,160 [server.py:load_component()] - Component (machine) loaded 2024-06-16 16:25:19,162 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 16:25:19,162 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 16:25:19,163 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 16:25:19,164 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 16:25:19,166 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 16:25:19,167 [database.py:register_table()] - Found registered table job_history 2024-06-16 16:25:19,168 [database.py:register_table()] - Found registered table job_totals 2024-06-16 16:25:19,171 [server.py:load_component()] - Component (history) loaded 2024-06-16 16:25:19,172 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 16:25:19,174 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 16:25:19,176 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 16:25:19,177 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 16:25:19,180 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 16:25:19,188 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 16:25:19,194 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 16:25:19,202 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Detected virtualenv: /home/pi/.KlipperScreen-env 2024-06-16 16:25:19,208 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 16:25:19,210 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 16:25:19,227 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 16:25:19,239 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 16:25:19,241 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 16:25:19,243 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 16:25:19,245 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 16:25:19,524 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 16:25:19,543 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 16:25:19,546 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 16:25:19,633 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'network-online.target', 'sysinit.target'] **After=['sysinit.target', 'basic.target', 'network-online.target', 'systemd-journald.socket', '-.mount', 'system.slice'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 16:25:19,633 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 16:25:19,633 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 16:25:19,660 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 16:25:19,667 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 16:25:19,668 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 16:25:19,672 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 16:25:19,672 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 16:25:19,676 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target'] **After=['sysinit.target', 'basic.target', 'network-online.target', 'systemd-journald.socket', '-.mount', 'system.slice'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 16:25:19,853 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 16:25:19,856 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:25:19,858 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:25:19,863 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 16:25:19,866 [git_deploy.py:log_repo_info()] - Git Repo KlipperScreen Detected: Owner: Guilouz Repository Name: KlipperScreen-Flsun-Speeder-Pad Path: /home/pi/KlipperScreen Remote: origin Branch: master Remote URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Recovery URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Current Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Upstream Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Current Version: v0.4.1-16-ge8fc0dbb Upstream Version: v0.4.1-16-ge8fc0dbb Rollback Commit: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Rollback Branch: master Rollback Version: v0.4.1-16-ge8fc0dbb Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:25:19,866 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 22 Hours, 32 Seconds 2024-06-16 16:25:19,866 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 22 Hours, 33 Seconds 2024-06-16 16:25:19,867 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 22 Hours, 34 Seconds 2024-06-16 16:25:19,867 [base_deploy.py:log_info()] - Web Client mainsail: Next refresh in: 6 Days, 22 Hours, 46 Seconds 2024-06-16 16:25:19,867 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Next refresh in: 6 Days, 22 Hours, 22 Minutes, 7 Seconds 2024-06-16 16:25:19,870 [confighelper.py:create_backup()] - Backing up last working configuration to '/home/pi/printer_data/config/.moonraker.conf.bkp' 2024-06-16 16:25:19,876 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 16:25:19,877 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 16:25:19,878 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 16:25:20,131 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:25:20,477 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 16:25:20,521 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 16:25:20,525 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 16:25:20,531 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 16:25:22,918 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 16:25:22,950 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 6.46ms 2024-06-16 16:25:22,952 [websockets.py:open()] - Websocket Opened: ID: 4077397400, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 16:25:22,987 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 192.168.1.128 2024-06-16 16:25:22,991 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 7.32ms 2024-06-16 16:25:22,992 [websockets.py:open()] - Websocket Opened: ID: 4077396536, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 16:25:23,003 [websockets.py:_handle_identify()] - Websocket 4077396536 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 16:25:23,050 [websockets.py:_handle_identify()] - Websocket 4077397400 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 16:25:23,061 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718547922833 (192.168.1.128) [_TRUSTED_USER_] 4.41ms 2024-06-16 16:25:30,887 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:25:32,155 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:27:05,759 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 16:27:05,765 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 16:27:05,774 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 16:27:16,235 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:27:17,504 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:27:35,603 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:27:36,870 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:28:46,395 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:28:47,665 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:30:21,314 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 16:30:21,321 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 16:30:21,332 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 16:30:21,727 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryhTvA8FByd6bPKJKu 2024-06-16 16:30:21,742 [application.py:post()] - Processing Uploaded File: KlipperScreen.conf 2024-06-16 16:30:21,750 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 23.89ms 2024-06-16 16:30:21,817 [websockets.py:write_to_socket()] - Websocket closed while writing: 4077397400 2024-06-16 16:30:21,818 [websockets.py:on_close()] - Websocket Closed: ID: 4077397400 Close Code: None, Close Reason: None, Pong Time Elapsed: 8.86 2024-06-16 16:30:26,164 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 3.07ms 2024-06-16 16:30:26,164 [websockets.py:open()] - Websocket Opened: ID: 4107205528, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 16:30:26,229 [websockets.py:_handle_identify()] - Websocket 4107205528 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 16:30:38,043 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryj4DBgNPuLky3Ksmk 2024-06-16 16:30:38,077 [application.py:post()] - Processing Uploaded File: moonraker.conf 2024-06-16 16:30:38,096 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 56.59ms 2024-06-16 16:30:38,225 [websockets.py:on_close()] - Websocket Closed: ID: 4107205528 Close Code: 1000, Close Reason: None, Pong Time Elapsed: 2.06 2024-06-16 16:30:38,236 [websockets.py:on_close()] - Websocket Closed: ID: 4077396536 Close Code: 1001, Close Reason: Server Shutdown, Pong Time Elapsed: 5.23 2024-06-16 16:30:38,241 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:30:38,776 [server.py:main()] - Attempting Server Restart... 2024-06-16 16:30:38,782 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 857 B 2024-06-16 16:30:38,782 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 127.0.0.1 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail [update_manager KlipperScreen] type = git_repo path = ~/KlipperScreen origin = https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git virtualenv = ~/.KlipperScreen-env requirements = scripts/KlipperScreen-requirements.txt system_dependencies = scripts/system-dependencies.json managed_services = KlipperScreen ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 16:30:38,784 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 16:30:38,784 [server.py:load_component()] - Component (template) loaded 2024-06-16 16:30:38,790 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 16:30:38,797 [server.py:load_component()] - Component (application) loaded 2024-06-16 16:30:38,800 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 16:30:38,805 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 16:30:38,808 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 16:30:38,815 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 2 2024-06-16 16:30:38,821 [server.py:load_component()] - Component (database) loaded 2024-06-16 16:30:38,826 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 16:30:38,856 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 16:30:38,857 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 16:30:38,861 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 16:30:38,863 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 16:30:38,865 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 16:30:38,899 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 16:30:38,900 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 16:30:38,900 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 16:30:38,907 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 16:30:38,907 [server.py:load_component()] - Component (machine) loaded 2024-06-16 16:30:38,909 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 16:30:38,909 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 16:30:38,910 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 16:30:38,911 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 16:30:38,913 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 16:30:38,914 [database.py:register_table()] - Found registered table job_history 2024-06-16 16:30:38,914 [database.py:register_table()] - Found registered table job_totals 2024-06-16 16:30:38,917 [server.py:load_component()] - Component (history) loaded 2024-06-16 16:30:38,918 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 16:30:38,920 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 16:30:38,921 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 16:30:38,922 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 16:30:38,926 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 16:30:38,932 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 16:30:38,938 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 16:30:38,945 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Detected virtualenv: /home/pi/.KlipperScreen-env 2024-06-16 16:30:38,950 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 16:30:38,952 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 16:30:38,969 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 16:30:38,981 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 16:30:38,983 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 16:30:38,985 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 16:30:38,987 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 16:30:39,257 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 16:30:39,276 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 16:30:39,279 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 16:30:39,365 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'network-online.target', 'sysinit.target'] **After=['sysinit.target', 'basic.target', 'network-online.target', 'systemd-journald.socket', '-.mount', 'system.slice'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 16:30:39,365 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 16:30:39,366 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 16:30:39,389 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 16:30:39,396 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 16:30:39,397 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 16:30:39,400 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 16:30:39,400 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 16:30:39,405 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target'] **After=['sysinit.target', 'basic.target', 'network-online.target', 'systemd-journald.socket', '-.mount', 'system.slice'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 16:30:39,581 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 16:30:39,584 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:30:39,588 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:30:39,593 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 16:30:39,596 [git_deploy.py:log_repo_info()] - Git Repo KlipperScreen Detected: Owner: Guilouz Repository Name: KlipperScreen-Flsun-Speeder-Pad Path: /home/pi/KlipperScreen Remote: origin Branch: master Remote URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Recovery URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Current Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Upstream Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Current Version: v0.4.1-16-ge8fc0dbb Upstream Version: v0.4.1-16-ge8fc0dbb Rollback Commit: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Rollback Branch: master Rollback Version: v0.4.1-16-ge8fc0dbb Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:30:39,596 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 21 Hours, 55 Minutes, 12 Seconds 2024-06-16 16:30:39,596 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 21 Hours, 55 Minutes, 14 Seconds 2024-06-16 16:30:39,596 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 21 Hours, 55 Minutes, 15 Seconds 2024-06-16 16:30:39,597 [base_deploy.py:log_info()] - Web Client mainsail: Next refresh in: 6 Days, 21 Hours, 55 Minutes, 26 Seconds 2024-06-16 16:30:39,597 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Next refresh in: 6 Days, 22 Hours, 16 Minutes, 47 Seconds 2024-06-16 16:30:39,600 [confighelper.py:create_backup()] - Backing up last working configuration to '/home/pi/printer_data/config/.moonraker.conf.bkp' 2024-06-16 16:30:39,605 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 16:30:39,607 [server.py:start_server()] - Starting Moonraker on (127.0.0.1, 7125), Hostname: speeder-pad 2024-06-16 16:30:39,608 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 16:30:39,662 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 192.168.1.128 2024-06-16 16:30:39,664 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 4.39ms 2024-06-16 16:30:39,665 [websockets.py:open()] - Websocket Opened: ID: 4077393184, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 16:30:39,683 [websockets.py:_handle_identify()] - Websocket 4077393184 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 16:30:39,738 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718548239504 (192.168.1.128) [_TRUSTED_USER_] 4.75ms 2024-06-16 16:30:39,864 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:30:40,249 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 16:30:40,293 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 16:30:40,295 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 16:30:40,298 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 16:30:42,917 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 16:30:42,945 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 6.49ms 2024-06-16 16:30:42,946 [websockets.py:open()] - Websocket Opened: ID: 4077307072, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 16:30:43,030 [websockets.py:_handle_identify()] - Websocket 4077307072 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 16:31:06,760 [application.py:prepare()] - Upload Request Received from 192.168.1.128 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryef7qGcDzaLyZb6wi 2024-06-16 16:31:06,793 [application.py:post()] - Processing Uploaded File: moonraker.conf 2024-06-16 16:31:06,810 [application.py:log_request()] - 201 POST /server/files/upload (192.168.1.128) [_TRUSTED_USER_] 53.11ms 2024-06-16 16:31:06,932 [websockets.py:on_close()] - Websocket Closed: ID: 4077307072 Close Code: 1000, Close Reason: None, Pong Time Elapsed: 3.98 2024-06-16 16:31:06,936 [websockets.py:on_close()] - Websocket Closed: ID: 4077393184 Close Code: 1001, Close Reason: Server Shutdown, Pong Time Elapsed: 7.26 2024-06-16 16:31:06,941 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:31:07,471 [server.py:main()] - Attempting Server Restart... 2024-06-16 16:31:07,488 [confighelper.py:read_file()] - Configuration File '/home/pi/printer_data/config/moonraker.conf' parsed, total size: 855 B 2024-06-16 16:31:07,489 [server.py:add_log_rollover_item()] - #################### Moonraker Configuration #################### [server] host = 0.0.0.0 port = 7125 klippy_uds_address = /home/pi/printer_data/comms/klippy.sock [authorization] trusted_clients = 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 FE80::/10 ::1/128 cors_domains = *.lan *.local *://localhost *://localhost:* *://my.mainsail.xyz *://app.fluidd.xyz [octoprint_compat] [history] [update_manager] channel = dev refresh_interval = 168 [update_manager mainsail] type = web channel = stable repo = mainsail-crew/mainsail path = ~/mainsail [update_manager KlipperScreen] type = git_repo path = ~/KlipperScreen origin = https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git virtualenv = ~/.KlipperScreen-env requirements = scripts/KlipperScreen-requirements.txt system_dependencies = scripts/system-dependencies.json managed_services = KlipperScreen ################################################################# All Configuration Files: /home/pi/printer_data/config/moonraker.conf ################################################################# 2024-06-16 16:31:07,494 [server.py:load_component()] - Component (secrets) loaded 2024-06-16 16:31:07,495 [server.py:load_component()] - Component (template) loaded 2024-06-16 16:31:07,502 [server.py:load_component()] - Component (klippy_connection) loaded 2024-06-16 16:31:07,506 [server.py:load_component()] - Component (application) loaded 2024-06-16 16:31:07,509 [server.py:load_component()] - Component (websockets) loaded 2024-06-16 16:31:07,513 [server.py:load_component()] - Component (dbus_manager) loaded 2024-06-16 16:31:07,516 [server.py:add_log_rollover_item()] - Loading Sqlite database provider. Sqlite Version: 3.31.1 2024-06-16 16:31:07,522 [server.py:add_log_rollover_item()] - Unsafe Shutdown Count: 2 2024-06-16 16:31:07,527 [server.py:load_component()] - Component (database) loaded 2024-06-16 16:31:07,531 [file_manager.py:__init__()] - Using File System Observer: inotify 2024-06-16 16:31:07,562 [server.py:load_component()] - Component (file_manager) loaded 2024-06-16 16:31:07,563 [database.py:register_table()] - Found registered table authorized_users 2024-06-16 16:31:07,566 [authorization.py:__init__()] - Authorization Configuration Loaded Trusted Clients: 10.0.0.0/8 127.0.0.0/8 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 fe80::/10 ::1/128 CORS Domains: .*\.lan .*\.local .*://localhost .*://localhost:.* .*://my\.mainsail\.xyz .*://app\.fluidd\.xyz 2024-06-16 16:31:07,569 [server.py:load_component()] - Component (authorization) loaded 2024-06-16 16:31:07,571 [server.py:load_component()] - Component (klippy_apis) loaded 2024-06-16 16:31:07,605 [server.py:add_log_rollover_item()] - System Info: ***python*** version: (3, 9, 19, 'final', 0) version_string: 3.9.19 (main, Apr 6 2024, 17:57:55) [GCC 9.4.0] ***cpu_info*** cpu_count: 4 bits: 32bit processor: aarch64 cpu_desc: serial_number: hardware_desc: model: total_memory: 999676 memory_units: kB ***sd_info*** manufacturer_id: 15 manufacturer: Unknown oem_id: 0100 product_name: AJTD4 product_revision: 5.2 serial_number: 065eda46 manufacturer_date: 9/2211 capacity: Unknown total_bytes: 0 ***distribution*** name: Ubuntu 20.04.6 LTS id: ubuntu version: 20.04 version_parts: {'major': '20', 'minor': '04', 'build_number': ''} like: debian codename: focal release_info: {} kernel_version: 4.9.191 ***virtualization*** virt_type: none virt_identifier: none ***network*** ***canbus*** ***Allowed Services*** klipper_mcu webcamd MoonCord KlipperScreen moonraker-telegram-bot moonraker-obico sonar crowsnest octoeverywhere ratos-configurator 2024-06-16 16:31:07,605 [server.py:load_component()] - Component (shell_command) loaded 2024-06-16 16:31:07,606 [machine.py:__init__()] - Using System Provider: systemd_dbus 2024-06-16 16:31:07,612 [server.py:add_log_rollover_item()] - Module libcamera unavailble, import failed 2024-06-16 16:31:07,612 [server.py:load_component()] - Component (machine) loaded 2024-06-16 16:31:07,613 [server.py:load_component()] - Component (data_store) loaded 2024-06-16 16:31:07,614 [proc_stats.py:__init__()] - Unable to find 'vcgencmd', throttle checking disabled 2024-06-16 16:31:07,615 [server.py:load_component()] - Component (proc_stats) loaded 2024-06-16 16:31:07,615 [server.py:load_component()] - Component (job_state) loaded 2024-06-16 16:31:07,617 [server.py:load_component()] - Component (job_queue) loaded 2024-06-16 16:31:07,618 [database.py:register_table()] - Found registered table job_history 2024-06-16 16:31:07,618 [database.py:register_table()] - Found registered table job_totals 2024-06-16 16:31:07,620 [server.py:load_component()] - Component (history) loaded 2024-06-16 16:31:07,621 [server.py:load_component()] - Component (http_client) loaded 2024-06-16 16:31:07,623 [server.py:load_component()] - Component (announcements) loaded 2024-06-16 16:31:07,625 [server.py:load_component()] - Component (webcam) loaded 2024-06-16 16:31:07,626 [server.py:load_component()] - Component (extensions) loaded 2024-06-16 16:31:07,629 [server.py:load_component()] - Component (octoprint_compat) loaded 2024-06-16 16:31:07,635 [base_deploy.py:log_info()] - Git Repo moonraker: Detected virtualenv: /home/pi/moonraker-env 2024-06-16 16:31:07,641 [base_deploy.py:log_info()] - Git Repo klipper: Detected virtualenv: /home/pi/klippy-env 2024-06-16 16:31:07,648 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Detected virtualenv: /home/pi/.KlipperScreen-env 2024-06-16 16:31:07,653 [server.py:load_component()] - Component (update_manager) loaded 2024-06-16 16:31:07,655 [server.py:_initialize_component()] - Performing Component Post Init: [dbus_manager] 2024-06-16 16:31:07,673 [server.py:_initialize_component()] - Performing Component Post Init: [database] 2024-06-16 16:31:07,685 [server.py:_initialize_component()] - Performing Component Post Init: [file_manager] 2024-06-16 16:31:07,686 [server.py:_initialize_component()] - Performing Component Post Init: [authorization] 2024-06-16 16:31:07,688 [server.py:_initialize_component()] - Performing Component Post Init: [machine] 2024-06-16 16:31:07,690 [machine.py:validation_init()] - Installation version in database up to date 2024-06-16 16:31:07,966 [machine.py:check_virt_status()] - No Virtualization Detected 2024-06-16 16:31:07,986 [machine.py:_find_public_ip()] - Detected Local IP: 192.168.1.30 2024-06-16 16:31:07,989 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 16:31:08,075 [server.py:add_log_rollover_item()] - Systemd unit moonraker.service: unit_name: moonraker.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'network-online.target', 'sysinit.target'] **After=['sysinit.target', 'basic.target', 'network-online.target', 'systemd-journald.socket', '-.mount', 'system.slice'] **SupplementaryGroups=['moonraker-admin'] **EnvironmentFiles=/home/pi/printer_data/systemd/moonraker.env **ExecStart=/home/pi/moonraker-env/bin/python $MOONRAKER_ARGS **WorkingDirectory=/home/pi/moonraker **FragmentPath=/etc/systemd/system/moonraker.service **Description=API Server for Klipper SV1 **User=pi 2024-06-16 16:31:08,075 [server.py:_initialize_component()] - Performing Component Post Init: [proc_stats] 2024-06-16 16:31:08,075 [server.py:_initialize_component()] - Performing Component Post Init: [history] 2024-06-16 16:31:08,100 [server.py:_initialize_component()] - Performing Component Post Init: [announcements] 2024-06-16 16:31:08,107 [server.py:_initialize_component()] - Performing Component Post Init: [webcam] 2024-06-16 16:31:08,108 [webcam.py:_set_default_host_ip()] - Default public webcam address set: http://192.168.1.30 2024-06-16 16:31:08,111 [server.py:_initialize_component()] - Performing Component Post Init: [klippy_connection] 2024-06-16 16:31:08,111 [server.py:_initialize_component()] - Performing Component Post Init: [update_manager] 2024-06-16 16:31:08,116 [server.py:add_log_rollover_item()] - Systemd unit klipper.service: unit_name: klipper.service is_default: True manager: systemd Properties: **Requires=['system.slice', 'sysinit.target'] **After=['sysinit.target', 'basic.target', 'network-online.target', 'systemd-journald.socket', '-.mount', 'system.slice'] **SupplementaryGroups=[] **EnvironmentFiles=/home/pi/printer_data/systemd/klipper.env **ExecStart=/home/pi/klippy-env/bin/python $KLIPPER_ARGS **WorkingDirectory=/home/pi/klipper **FragmentPath=/etc/systemd/system/klipper.service **Description=Klipper 3D Printer Firmware SV1 **User=pi 2024-06-16 16:31:08,192 [base_deploy.py:log_info()] - PackageDeploy: PackageKit Provider Configured 2024-06-16 16:31:08,198 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:31:08,201 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:31:08,208 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 16:31:08,212 [git_deploy.py:log_repo_info()] - Git Repo KlipperScreen Detected: Owner: Guilouz Repository Name: KlipperScreen-Flsun-Speeder-Pad Path: /home/pi/KlipperScreen Remote: origin Branch: master Remote URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Recovery URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Current Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Upstream Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Current Version: v0.4.1-16-ge8fc0dbb Upstream Version: v0.4.1-16-ge8fc0dbb Rollback Commit: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Rollback Branch: master Rollback Version: v0.4.1-16-ge8fc0dbb Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:31:08,213 [base_deploy.py:log_info()] - PackageKit: Next refresh in: 6 Days, 21 Hours, 54 Minutes, 44 Seconds 2024-06-16 16:31:08,213 [base_deploy.py:log_info()] - Git Repo moonraker: Next refresh in: 6 Days, 21 Hours, 54 Minutes, 45 Seconds 2024-06-16 16:31:08,213 [base_deploy.py:log_info()] - Git Repo klipper: Next refresh in: 6 Days, 21 Hours, 54 Minutes, 46 Seconds 2024-06-16 16:31:08,214 [base_deploy.py:log_info()] - Web Client mainsail: Next refresh in: 6 Days, 21 Hours, 54 Minutes, 57 Seconds 2024-06-16 16:31:08,214 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Next refresh in: 6 Days, 22 Hours, 16 Minutes, 18 Seconds 2024-06-16 16:31:08,225 [confighelper.py:create_backup()] - Backing up last working configuration to '/home/pi/printer_data/config/.moonraker.conf.bkp' 2024-06-16 16:31:08,229 [extensions.py:start_unix_server()] - Creating Unix Domain Socket at '/home/pi/printer_data/comms/moonraker.sock' 2024-06-16 16:31:08,230 [server.py:start_server()] - Starting Moonraker on (0.0.0.0, 7125), Hostname: speeder-pad 2024-06-16 16:31:08,232 [application.py:listen()] - SSL Certificate/Key not configured, aborting HTTPS Server startup 2024-06-16 16:31:08,487 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:31:08,869 [server.py:add_log_rollover_item()] - Klipper Version: v0.12.0-239-g433fcb6f 2024-06-16 16:31:08,911 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 16:31:08,914 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 16:31:08,918 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer 2024-06-16 16:31:10,368 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 192.168.1.128 2024-06-16 16:31:10,372 [application.py:log_request()] - 101 GET /websocket (192.168.1.128) [_TRUSTED_USER_] 7.84ms 2024-06-16 16:31:10,374 [websockets.py:open()] - Websocket Opened: ID: 4077480520, Proxied: True, User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36, Host Name: 192.168.1.30 2024-06-16 16:31:10,387 [websockets.py:_handle_identify()] - Websocket 4077480520 Client Identified - Name: mainsail, Version: 2.11.2, Type: web 2024-06-16 16:31:10,447 [application.py:log_request()] - 404 GET /server/files/config/.theme/maintenance.json?time=1718548270203 (192.168.1.128) [_TRUSTED_USER_] 11.95ms 2024-06-16 16:31:11,917 [authorization.py:_check_trusted_connection()] - Trusted Connection Detected, IP: 127.0.0.1 2024-06-16 16:31:11,940 [application.py:log_request()] - 101 GET /websocket?token= (127.0.0.1) [_TRUSTED_USER_] 4.55ms 2024-06-16 16:31:11,941 [websockets.py:open()] - Websocket Opened: ID: 4077481456, Proxied: False, User Agent: , Host Name: 127.0.0.1 2024-06-16 16:31:12,029 [websockets.py:_handle_identify()] - Websocket 4077481456 Client Identified - Name: KlipperScreen, Version: v0.4.1-16-ge8fc0db, Type: display 2024-06-16 16:31:12,250 [klippy_connection.py:_on_connection_closed()] - Klippy Connection Removed 2024-06-16 16:31:12,309 [application.py:log_request()] - 503 GET /printer/objects/query?bed_mesh&configfile&display_status&extruder&fan&gcode_move&heater_bed&idle_timeout&pause_resume&print_stats&toolhead&virtual_sdcard&webhooks&motion_report&firmware_retraction&exclude_object&manual_probe&extruder&heater_bed&temperature_sensor%20Speeder_Pad&temperature_sensor%20Motherboard&fan&heater_fan%20Hotend&filament_switch_sensor%20filament_sensor&output_pin%20LED_Hotend&output_pin%20LED_Logo (127.0.0.1) [_TRUSTED_USER_] 12.45ms 2024-06-16 16:31:13,520 [klippy_connection.py:_do_connect()] - Klippy Connection Established 2024-06-16 16:32:10,318 [base_deploy.py:log_info()] - PackageKit: Detected 0 package updates: 2024-06-16 16:32:10,360 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker status --porcelain -b) successfully finished 2024-06-16 16:32:10,383 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker branch --list --no-color) successfully finished 2024-06-16 16:32:10,425 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker remote get-url origin) successfully finished 2024-06-16 16:32:11,178 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker fetch origin --prune --progress) successfully finished 2024-06-16 16:32:11,202 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker merge-base --is-ancestor HEAD origin/master) successfully finished 2024-06-16 16:32:11,225 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker rev-parse HEAD) successfully finished 2024-06-16 16:32:11,275 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker describe --always --tags --long --dirty --abbrev=8) successfully finished 2024-06-16 16:32:11,296 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker rev-parse origin/master) successfully finished 2024-06-16 16:32:11,337 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker describe origin/master --always --tags --long --abbrev=8) successfully finished 2024-06-16 16:32:11,361 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/moonraker rev-list HEAD..346a3d7c9dca6499bdef2957ca39a23c702b0268 --count) successfully finished 2024-06-16 16:32:11,362 [git_deploy.py:log_repo_info()] - Git Repo moonraker Detected: Owner: Arksine Repository Name: moonraker Path: /home/pi/moonraker Remote: origin Branch: master Remote URL: https://github.com/Arksine/moonraker.git Recovery URL: https://github.com/Arksine/moonraker.git Current Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Upstream Commit SHA: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Current Version: v0.8.0-379-g346a3d7c Upstream Version: v0.8.0-379-g346a3d7c Rollback Commit: 346a3d7c9dca6499bdef2957ca39a23c702b0268 Rollback Branch: master Rollback Version: v0.8.0-379-g346a3d7c Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:32:11,362 [base_deploy.py:log_info()] - Git Repo moonraker: Channel: dev 2024-06-16 16:32:11,362 [base_deploy.py:log_info()] - Git Repo moonraker: Validity check for git repo passed 2024-06-16 16:32:11,448 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper status --porcelain -b) successfully finished 2024-06-16 16:32:11,470 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper branch --list --no-color) successfully finished 2024-06-16 16:32:11,512 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper remote get-url origin) successfully finished 2024-06-16 16:32:12,184 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper fetch origin --prune --progress) successfully finished 2024-06-16 16:32:12,207 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper merge-base --is-ancestor HEAD origin/master) successfully finished 2024-06-16 16:32:12,229 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper rev-parse HEAD) successfully finished 2024-06-16 16:32:12,420 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper describe --always --tags --long --dirty --abbrev=8) successfully finished 2024-06-16 16:32:12,443 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper rev-parse origin/master) successfully finished 2024-06-16 16:32:12,610 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper describe origin/master --always --tags --long --abbrev=8) successfully finished 2024-06-16 16:32:12,634 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/klipper rev-list HEAD..433fcb6f249406c8b5e2f25d1e870809beeafb40 --count) successfully finished 2024-06-16 16:32:12,634 [git_deploy.py:log_repo_info()] - Git Repo klipper Detected: Owner: Klipper3d Repository Name: klipper Path: /home/pi/klipper Remote: origin Branch: master Remote URL: https://github.com/Klipper3d/klipper Recovery URL: https://github.com/Klipper3d/klipper Current Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Upstream Commit SHA: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Current Version: v0.12.0-239-g433fcb6f Upstream Version: v0.12.0-239-g433fcb6f Rollback Commit: 433fcb6f249406c8b5e2f25d1e870809beeafb40 Rollback Branch: master Rollback Version: v0.12.0-239-g433fcb6f Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:32:12,635 [base_deploy.py:log_info()] - Git Repo klipper: Channel: dev 2024-06-16 16:32:12,635 [base_deploy.py:log_info()] - Git Repo klipper: Validity check for git repo passed 2024-06-16 16:32:12,919 [base_deploy.py:log_info()] - Web Client mainsail: Detected Repo: mainsail-crew/mainsail Channel: stable Path: /home/pi/mainsail Local Version: v2.11.2 Remote Version: v2.11.2 Valid: True Fallback Detected: False Pre-release: False Download Url: https://github.com/mainsail-crew/mainsail/releases/download/v2.11.2/mainsail.zip Download Size: 2114797 Content Type: application/zip Rollback Version: v2.11.2 Rollback Repo: mainsail-crew/mainsail 2024-06-16 16:32:13,021 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen status --porcelain -b) successfully finished 2024-06-16 16:32:13,044 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen branch --list --no-color) successfully finished 2024-06-16 16:32:13,088 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen remote get-url origin) successfully finished 2024-06-16 16:32:13,584 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen fetch origin --prune --progress) successfully finished 2024-06-16 16:32:13,621 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen merge-base --is-ancestor HEAD origin/master) successfully finished 2024-06-16 16:32:13,655 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen rev-parse HEAD) successfully finished 2024-06-16 16:32:13,714 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen describe --always --tags --long --dirty --abbrev=8) successfully finished 2024-06-16 16:32:13,737 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen rev-parse origin/master) successfully finished 2024-06-16 16:32:13,768 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen describe origin/master --always --tags --long --abbrev=8) successfully finished 2024-06-16 16:32:13,791 [shell_command.py:_check_proc_success()] - Command (git -C /home/pi/KlipperScreen rev-list HEAD..e8fc0dbb0765ffa40619755561d0e09ec5bd8658 --count) successfully finished 2024-06-16 16:32:13,792 [git_deploy.py:log_repo_info()] - Git Repo KlipperScreen Detected: Owner: Guilouz Repository Name: KlipperScreen-Flsun-Speeder-Pad Path: /home/pi/KlipperScreen Remote: origin Branch: master Remote URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Recovery URL: https://github.com/Guilouz/KlipperScreen-Flsun-Speeder-Pad.git Current Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Upstream Commit SHA: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Current Version: v0.4.1-16-ge8fc0dbb Upstream Version: v0.4.1-16-ge8fc0dbb Rollback Commit: e8fc0dbb0765ffa40619755561d0e09ec5bd8658 Rollback Branch: master Rollback Version: v0.4.1-16-ge8fc0dbb Is Dirty: False Is Detached: False Is Shallow: False Commits Behind Count: 0 Diverged: False Pinned Commit: None 2024-06-16 16:32:13,792 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Channel: dev 2024-06-16 16:32:13,793 [base_deploy.py:log_info()] - Git Repo KlipperScreen: Validity check for git repo passed 2024-06-16 16:32:47,068 [klippy_connection.py:_request_initial_subscriptions()] - Webhooks Subscribed 2024-06-16 16:32:47,074 [klippy_connection.py:_request_initial_subscriptions()] - GCode Output Subscribed 2024-06-16 16:32:47,083 [klippy_connection.py:_check_ready()] - mcu 'mcu': Unable to connect Once the underlying issue is corrected, use the "FIRMWARE_RESTART" command to reset the firmware, reload the config, and restart the host software. Error configuring printer
Sevene61 Posté(e) Juin 16, 2024 Auteur Posté(e) Juin 16, 2024 FICHIER KLIPPY LOG : Révélation Starting Klippy... Args: ['/home/pi/klipper/klippy/klippy.py', '/home/pi/printer_data/config/printer.cfg', '-I', '/home/pi/printer_data/comms/klippy.serial', '-l', '/home/pi/printer_data/logs/klippy.log', '-a', '/home/pi/printer_data/comms/klippy.sock'] Git version: 'v0.12.0-239-g433fcb6f' Branch: master Remote: origin Tracked URL: https://github.com/Klipper3d/klipper CPU: 4 core ? Python: '3.9.19 (main, Apr 6 2024, 17:57:55) \n[GCC 9.4.0]' Building C code module c_helper.so Start printer at Sun Jun 16 14:20:26 2024 (1718540426.1 4752.7) ===== Config file ===== [mcu] serial = /dev/serial/by-id/<your-mcu-id> [virtual_sdcard] path = /home/pi/printer_data/gcodes on_error_gcode = CANCEL_PRINT [printer] kinematics = none max_velocity = 1000 max_accel = 1000 ======================= mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect No build file /home/pi/klipper/klippy/../.config No build file /home/pi/klipper/klippy/../out/klipper.dict No build file /home/pi/klipper/klippy/../out/klipper.elf webhooks client 4128484584: New connection webhooks client 4128484584: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} webhooks client 4128484584: Disconnected webhooks client 4129489248: New connection webhooks client 4129489248: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} Starting Klippy... Args: ['/home/pi/klipper/klippy/klippy.py', '/home/pi/printer_data/config/printer.cfg', '-I', '/home/pi/printer_data/comms/klippy.serial', '-l', '/home/pi/printer_data/logs/klippy.log', '-a', '/home/pi/printer_data/comms/klippy.sock'] Git version: 'v0.12.0-239-g433fcb6f' Branch: master Remote: origin Tracked URL: https://github.com/Klipper3d/klipper CPU: 4 core ? Python: '3.9.19 (main, Apr 6 2024, 17:57:55) \n[GCC 9.4.0]' Start printer at Sun Jun 16 14:45:22 2024 (1718541922.6 19.3) ===== Config file ===== [mcu] serial = /dev/serial/by-id/<your-mcu-id> [virtual_sdcard] path = /home/pi/printer_data/gcodes on_error_gcode = CANCEL_PRINT [printer] kinematics = none max_velocity = 1000 max_accel = 1000 ======================= mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' webhooks client 4122085072: New connection webhooks client 4122085072: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect No build file /home/pi/klipper/klippy/../.config No build file /home/pi/klipper/klippy/../out/klipper.dict No build file /home/pi/klipper/klippy/../out/klipper.elf webhooks client 4122085072: Disconnected webhooks client 4122299048: New connection webhooks client 4122299048: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} Starting Klippy... Args: ['/home/pi/klipper/klippy/klippy.py', '/home/pi/printer_data/config/printer.cfg', '-I', '/home/pi/printer_data/comms/klippy.serial', '-l', '/home/pi/printer_data/logs/klippy.log', '-a', '/home/pi/printer_data/comms/klippy.sock'] Git version: 'v0.12.0-239-g433fcb6f' Branch: master Remote: origin Tracked URL: https://github.com/Klipper3d/klipper CPU: 4 core ? Python: '3.9.19 (main, Apr 6 2024, 17:57:55) \n[GCC 9.4.0]' Start printer at Sun Jun 16 14:56:26 2024 (1718542586.6 13.1) ===== Config file ===== [mcu] serial = /dev/serial/by-id/<your-mcu-id> [virtual_sdcard] path = /home/pi/printer_data/gcodes on_error_gcode = CANCEL_PRINT [printer] kinematics = none max_velocity = 1000 max_accel = 1000 ======================= mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' webhooks client 4125681360: New connection webhooks client 4125681360: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(2897): Sun Jun 16 14:51:17 2024 ========= Last MCU build config ========= # CONFIG_LOW_LEVEL_OPTIONS is not set # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 14:52:05 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 14:52:15 2024 Attempting MCU 'mcu' reset Unhandled exception during post run Traceback (most recent call last): File "/home/pi/klippy-env/lib/python3.9/site-packages/serial/serialposix.py", line 265, in open self.fd = os.open(self.portstr, os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK) FileNotFoundError: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 234, in run self.send_event("klippy:firmware_restart") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 955, in _firmware_restart self._restart_arduino() File "/home/pi/klipper/klippy/mcu.py", line 915, in _restart_arduino serialhdl.arduino_reset(self._serialport, self._reactor) File "/home/pi/klipper/klippy/serialhdl.py", line 380, in arduino_reset ser = serial.Serial(serialport, 2400, timeout=0, exclusive=True) File "/home/pi/klippy-env/lib/python3.9/site-packages/serial/serialutil.py", line 240, in __init__ self.open() File "/home/pi/klippy-env/lib/python3.9/site-packages/serial/serialposix.py", line 268, in open raise SerialException(msg.errno, "could not open port {}: {}".format(self._port, msg)) serial.serialutil.SerialException: [Errno 2] could not open port /dev/serial/by-id/<your-mcu-id>: [Errno 2] No such file or directory: '/dev/serial/by-id/<your-mcu-id>' Restarting printer Start printer at Sun Jun 16 15:01:21 2024 (1718542881.6 308.1) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = EPCOS 100K B57560G104F sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = XXXXX restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' webhooks client 4123456296: New connection webhooks client 4123456296: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' webhooks client 4123456296: Disconnected webhooks client 4125353800: New connection webhooks client 4125353800: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' webhooks client 4125353800: Disconnected Restarting printer Start printer at Sun Jun 16 15:02:13 2024 (1718542933.7 360.2) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = EPCOS 100K B57560G104F sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = XXXXX restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' webhooks client 4124533040: New connection webhooks client 4124533040: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' Unable to issue reset command on MCU 'mcu' webhooks client 4124533040: Disconnected Restarting printer Start printer at Sun Jun 16 15:02:38 2024 (1718542959.0 385.5) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = EPCOS 100K B57560G104F sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = XXXXX restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' webhooks client 4123456512: New connection webhooks client 4123456512: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' webhooks client 4123456512: Disconnected Restarting printer Start printer at Sun Jun 16 15:02:58 2024 (1718542978.5 405.0) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = EPCOS 100K B57560G104F sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = XXXXX restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' webhooks client 4123456608: New connection webhooks client 4123456608: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(2897): Sun Jun 16 14:51:17 2024 ========= Last MCU build config ========= # CONFIG_LOW_LEVEL_OPTIONS is not set # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 14:52:05 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 14:52:15 2024 webhooks client 4123456608: Disconnected webhooks client 4124135464: New connection webhooks client 4124135464: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} Unable to issue reset command on MCU 'mcu' webhooks client 4124135464: Disconnected Restarting printer Start printer at Sun Jun 16 15:10:27 2024 (1718543427.3 853.8) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = EPCOS 100K B57560G104F sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' webhooks client 4123456776: New connection webhooks client 4123456776: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(2897): Sun Jun 16 14:51:17 2024 ========= Last MCU build config ========= # CONFIG_LOW_LEVEL_OPTIONS is not set # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 14:52:05 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 14:52:15 2024 webhooks client 4123456776: Disconnected Restarting printer Start printer at Sun Jun 16 15:12:32 2024 (1718543552.3 978.8) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = EPCOS 100K B57560G104F sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' webhooks client 4123456920: New connection webhooks client 4123456920: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(2897): Sun Jun 16 14:51:17 2024 ========= Last MCU build config ========= # CONFIG_LOW_LEVEL_OPTIONS is not set # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 14:52:05 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 14:52:15 2024 webhooks client 4123456920: Disconnected webhooks client 4124533016: New connection webhooks client 4124533016: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} Unable to issue reset command on MCU 'mcu' webhooks client 4124533016: Disconnected Restarting printer Start printer at Sun Jun 16 15:18:36 2024 (1718543916.9 1343.4) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = EPCOS 100K B57560G104F sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' webhooks client 4124107632: New connection webhooks client 4124107632: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(2897): Sun Jun 16 14:51:17 2024 ========= Last MCU build config ========= # CONFIG_LOW_LEVEL_OPTIONS is not set # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 14:52:05 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 14:52:15 2024 Unable to issue reset command on MCU 'mcu' webhooks client 4124107632: Disconnected Restarting printer Start printer at Sun Jun 16 15:29:46 2024 (1718544586.6 2013.1) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = EPCOS 100K B57560G104F sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' webhooks client 4124108688: New connection webhooks client 4124108688: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial: /dev/seriel/by-id/usb-1a86_USB_Serial-if00-port0' MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(2897): Sun Jun 16 14:51:17 2024 ========= Last MCU build config ========= # CONFIG_LOW_LEVEL_OPTIONS is not set # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 14:52:05 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 14:52:15 2024 Unable to issue reset command on MCU 'mcu' webhooks client 4124108688: Disconnected Restarting printer Start printer at Sun Jun 16 15:55:00 2024 (1718546101.0 3527.5) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = XXXXX restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' webhooks client 4124109600: New connection webhooks client 4124109600: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} Unable to issue reset command on MCU 'mcu' webhooks client 4124109600: Disconnected Restarting printer Start printer at Sun Jun 16 15:55:04 2024 (1718546104.2 3530.8) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = XXXXX restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' webhooks client 4124108232: New connection webhooks client 4124108232: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(3626): Sun Jun 16 15:47:42 2024 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_24M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" # # USB ids # # end of USB ids CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_INITIAL_PINS="" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 15:48:40 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 15:48:50 2024 Unable to issue reset command on MCU 'mcu' webhooks client 4124108232: Disconnected Restarting printer Start printer at Sun Jun 16 15:57:44 2024 (1718546264.7 3691.2) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = XXXXX restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' webhooks client 4124108496: New connection webhooks client 4124108496: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port XXXXX: [Errno 2] No such file or directory: 'XXXXX' Unable to issue reset command on MCU 'mcu' webhooks client 4124108496: Disconnected Restarting printer Start printer at Sun Jun 16 15:59:07 2024 (1718546347.6 3774.2) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4124109816: New connection webhooks client 4124109816: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 4124109816: Disconnected Restarting printer Start printer at Sun Jun 16 15:59:31 2024 (1718546371.2 3797.8) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4124107152: New connection webhooks client 4124107152: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 4124107152: Disconnected Restarting printer Start printer at Sun Jun 16 15:59:41 2024 (1718546381.8 3808.3) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4124109984: New connection webhooks client 4124109984: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 4124109984: Disconnected Restarting printer Start printer at Sun Jun 16 16:00:08 2024 (1718546408.5 3835.0) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4124108904: New connection webhooks client 4124108904: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 4124108904: Disconnected Restarting printer Start printer at Sun Jun 16 16:00:23 2024 (1718546423.7 3850.3) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4124108184: New connection webhooks client 4124108184: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 4124108184: Disconnected Restarting printer Start printer at Sun Jun 16 16:00:30 2024 (1718546430.9 3857.4) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4124108712: New connection webhooks client 4124108712: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed webhooks client 4124108712: Disconnected Restarting printer Start printer at Sun Jun 16 16:00:51 2024 (1718546451.4 3877.9) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4124108400: New connection webhooks client 4124108400: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(3626): Sun Jun 16 15:47:42 2024 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_24M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" # # USB ids # # end of USB ids CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_INITIAL_PINS="" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 15:48:40 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 15:48:50 2024 mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Starting Klippy... Args: ['/home/pi/klipper/klippy/klippy.py', '/home/pi/printer_data/config/printer.cfg', '-I', '/home/pi/printer_data/comms/klippy.serial', '-l', '/home/pi/printer_data/logs/klippy.log', '-a', '/home/pi/printer_data/comms/klippy.sock'] Git version: 'v0.12.0-239-g433fcb6f' Branch: master Remote: origin Tracked URL: https://github.com/Klipper3d/klipper CPU: 4 core ? Python: '3.9.19 (main, Apr 6 2024, 17:57:55) \n[GCC 9.4.0]' Start printer at Sun Jun 16 16:16:20 2024 (1718547380.9 20.2) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' webhooks client 4124151016: New connection webhooks client 4124151016: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: '/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(3626): Sun Jun 16 15:47:42 2024 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_24M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" # # USB ids # # end of USB ids CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_INITIAL_PINS="" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 15:48:40 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 15:48:50 2024 Starting Klippy... Args: ['/home/pi/klipper/klippy/klippy.py', '/home/pi/printer_data/config/printer.cfg', '-I', '/home/pi/printer_data/comms/klippy.serial', '-l', '/home/pi/printer_data/logs/klippy.log', '-a', '/home/pi/printer_data/comms/klippy.sock'] Git version: 'v0.12.0-239-g433fcb6f' Branch: master Remote: origin Tracked URL: https://github.com/Klipper3d/klipper CPU: 4 core ? Python: '3.9.19 (main, Apr 6 2024, 17:57:55) \n[GCC 9.4.0]' Start printer at Sun Jun 16 16:18:35 2024 (1718547515.6 22.7) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4128478736: New connection webhooks client 4128478736: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(3626): Sun Jun 16 15:47:42 2024 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_24M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" # # USB ids # # end of USB ids CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_INITIAL_PINS="" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 15:48:40 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 15:48:50 2024 mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 4128478736: Disconnected Restarting printer Start printer at Sun Jun 16 16:20:35 2024 (1718547635.7 142.8) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4123380200: New connection webhooks client 4123380200: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 4123380200: Disconnected Restarting printer Start printer at Sun Jun 16 16:20:44 2024 (1718547644.8 151.9) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4106402040: New connection webhooks client 4106402040: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 4106402040: Disconnected Restarting printer Start printer at Sun Jun 16 16:21:17 2024 (1718547677.8 184.9) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' webhooks client 4106398976: New connection webhooks client 4106398976: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' webhooks client 4106398976: Disconnected Restarting printer Start printer at Sun Jun 16 16:21:24 2024 (1718547684.9 192.0) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' webhooks client 4106390808: New connection webhooks client 4106390808: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' mcu 'mcu': Unable to open serial port: [Errno 2] could not open port serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0: [Errno 2] No such file or directory: 'serial:/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0' Unable to issue reset command on MCU 'mcu' webhooks client 4106390808: Disconnected Restarting printer Start printer at Sun Jun 16 16:21:53 2024 (1718547713.2 220.3) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4106385776: New connection webhooks client 4106385776: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(3626): Sun Jun 16 15:47:42 2024 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_24M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" # # USB ids # # end of USB ids CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_INITIAL_PINS="" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 15:48:40 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 15:48:50 2024 mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed webhooks client 4106385776: Disconnected webhooks client 4124645168: New connection webhooks client 4124645168: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} webhooks client 4124645168: Disconnected Restarting printer Start printer at Sun Jun 16 16:25:31 2024 (1718547931.9 439.0) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4106418592: New connection webhooks client 4106418592: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(3626): Sun Jun 16 15:47:42 2024 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_24M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" # # USB ids # # end of USB ids CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_INITIAL_PINS="" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 15:48:40 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 15:48:50 2024 mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 4106418592: Disconnected Restarting printer Start printer at Sun Jun 16 16:27:17 2024 (1718548037.3 544.4) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4106422784: New connection webhooks client 4106422784: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 4106422784: Disconnected Restarting printer Start printer at Sun Jun 16 16:27:36 2024 (1718548056.7 563.8) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4106418664: New connection webhooks client 4106418664: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed Unable to issue reset command on MCU 'mcu' webhooks client 4106418664: Disconnected Restarting printer Start printer at Sun Jun 16 16:28:47 2024 (1718548127.4 634.6) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4106439168: New connection webhooks client 4106439168: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect MCU error during connect Traceback (most recent call last): File "/home/pi/klipper/klippy/mcu.py", line 793, in _mcu_identify self._serial.connect_uart(self._serialport, self._baud, rts) File "/home/pi/klipper/klippy/serialhdl.py", line 183, in connect_uart self._error("Unable to connect") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Unable to connect During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/klipper/klippy/klippy.py", line 176, in _connect self.send_event("klippy:mcu_identify") File "/home/pi/klipper/klippy/klippy.py", line 263, in send_event return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/klippy.py", line 263, in <listcomp> return [cb(*params) for cb in self.event_handlers.get(event, [])] File "/home/pi/klipper/klippy/mcu.py", line 798, in _mcu_identify raise error(str(e)) mcu.error: mcu 'mcu': Unable to connect Build file /home/pi/klipper/klippy/../.config(3626): Sun Jun 16 15:47:42 2024 ========= Last MCU build config ========= CONFIG_LOW_LEVEL_OPTIONS=y # CONFIG_MACH_AVR is not set # CONFIG_MACH_ATSAM is not set # CONFIG_MACH_ATSAMD is not set # CONFIG_MACH_LPC176X is not set CONFIG_MACH_STM32=y # CONFIG_MACH_HC32F460 is not set # CONFIG_MACH_RP2040 is not set # CONFIG_MACH_PRU is not set # CONFIG_MACH_AR100 is not set # CONFIG_MACH_LINUX is not set # CONFIG_MACH_SIMU is not set CONFIG_BOARD_DIRECTORY="stm32" CONFIG_MCU="stm32f103xe" CONFIG_CLOCK_FREQ=72000000 CONFIG_USBSERIAL=y CONFIG_FLASH_SIZE=0x10000 CONFIG_FLASH_BOOT_ADDRESS=0x8000000 CONFIG_RAM_START=0x20000000 CONFIG_RAM_SIZE=0x5000 CONFIG_STACK_SIZE=512 CONFIG_FLASH_APPLICATION_ADDRESS=0x8002000 CONFIG_STM32_SELECT=y CONFIG_MACH_STM32F103=y # CONFIG_MACH_STM32F207 is not set # CONFIG_MACH_STM32F401 is not set # CONFIG_MACH_STM32F405 is not set # CONFIG_MACH_STM32F407 is not set # CONFIG_MACH_STM32F429 is not set # CONFIG_MACH_STM32F446 is not set # CONFIG_MACH_STM32F765 is not set # CONFIG_MACH_STM32F031 is not set # CONFIG_MACH_STM32F042 is not set # CONFIG_MACH_STM32F070 is not set # CONFIG_MACH_STM32F072 is not set # CONFIG_MACH_STM32G070 is not set # CONFIG_MACH_STM32G071 is not set # CONFIG_MACH_STM32G0B0 is not set # CONFIG_MACH_STM32G0B1 is not set # CONFIG_MACH_STM32G431 is not set # CONFIG_MACH_STM32G474 is not set # CONFIG_MACH_STM32H723 is not set # CONFIG_MACH_STM32H743 is not set # CONFIG_MACH_STM32H750 is not set # CONFIG_MACH_STM32L412 is not set # CONFIG_MACH_N32G452 is not set # CONFIG_MACH_N32G455 is not set # CONFIG_MACH_STM32F103x6 is not set CONFIG_MACH_STM32F1=y CONFIG_HAVE_STM32_USBFS=y CONFIG_HAVE_STM32_CANBUS=y # CONFIG_STM32F103GD_DISABLE_SWD is not set CONFIG_STM32_DFU_ROM_ADDRESS=0 CONFIG_STM32_FLASH_START_2000=y # CONFIG_STM32_FLASH_START_5000 is not set # CONFIG_STM32_FLASH_START_7000 is not set # CONFIG_STM32_FLASH_START_8000 is not set # CONFIG_STM32_FLASH_START_8800 is not set # CONFIG_STM32_FLASH_START_9000 is not set # CONFIG_STM32_FLASH_START_10000 is not set # CONFIG_STM32_FLASH_START_800 is not set # CONFIG_STM32_FLASH_START_1000 is not set # CONFIG_STM32_FLASH_START_4000 is not set # CONFIG_STM32_FLASH_START_0000 is not set CONFIG_STM32_CLOCK_REF_8M=y # CONFIG_STM32_CLOCK_REF_12M is not set # CONFIG_STM32_CLOCK_REF_16M is not set # CONFIG_STM32_CLOCK_REF_20M is not set # CONFIG_STM32_CLOCK_REF_24M is not set # CONFIG_STM32_CLOCK_REF_25M is not set # CONFIG_STM32_CLOCK_REF_INTERNAL is not set CONFIG_CLOCK_REF_FREQ=8000000 CONFIG_STM32F0_TRIM=16 CONFIG_STM32_USB_PA11_PA12=y # CONFIG_STM32_SERIAL_USART1 is not set # CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set # CONFIG_STM32_SERIAL_USART2 is not set # CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set # CONFIG_STM32_SERIAL_USART3 is not set # CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set # CONFIG_STM32_CANBUS_PA11_PA12 is not set # CONFIG_STM32_CANBUS_PA11_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set # CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set CONFIG_USB=y CONFIG_USB_VENDOR_ID=0x1d50 CONFIG_USB_DEVICE_ID=0x614e CONFIG_USB_SERIAL_NUMBER_CHIPID=y CONFIG_USB_SERIAL_NUMBER="12345" # # USB ids # # end of USB ids CONFIG_WANT_GPIO_BITBANGING=y CONFIG_WANT_DISPLAYS=y CONFIG_WANT_SENSORS=y CONFIG_WANT_LIS2DW=y CONFIG_WANT_LDC1612=y CONFIG_WANT_SOFTWARE_I2C=y CONFIG_WANT_SOFTWARE_SPI=y CONFIG_NEED_SENSOR_BULK=y CONFIG_CANBUS_FREQUENCY=1000000 CONFIG_INITIAL_PINS="" CONFIG_HAVE_GPIO=y CONFIG_HAVE_GPIO_ADC=y CONFIG_HAVE_GPIO_SPI=y CONFIG_HAVE_GPIO_I2C=y CONFIG_HAVE_GPIO_HARD_PWM=y CONFIG_HAVE_STRICT_TIMING=y CONFIG_HAVE_CHIPID=y CONFIG_HAVE_STEPPER_BOTH_EDGE=y CONFIG_HAVE_BOOTLOADER_REQUEST=y CONFIG_INLINE_STEPPER_HACK=y ======================= Build file /home/pi/klipper/klippy/../out/klipper.dict(7904): Sun Jun 16 15:48:40 2024 Last MCU build version: v0.12.0-239-g433fcb6f Last MCU build tools: gcc: (15:9-2019-q4-0ubuntu1) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] binutils: (2.34-4ubuntu1+13ubuntu1) 2.34 Last MCU build config: ADC_MAX=4095 BUS_PINS_i2c1=PB6,PB7 BUS_PINS_i2c1a=PB8,PB9 BUS_PINS_i2c2=PB10,PB11 BUS_PINS_spi1=PA6,PA7,PA5 BUS_PINS_spi1a=PB4,PB5,PB3 BUS_PINS_spi2=PB14,PB15,PB13 BUS_PINS_spi3=PB4,PB5,PB3 CLOCK_FREQ=72000000 MCU=stm32f103xe PWM_MAX=255 RESERVE_PINS_USB=PA11,PA12 STATS_SUMSQ_BASE=256 STEPPER_BOTH_EDGE=1 Build file /home/pi/klipper/klippy/../out/klipper.elf(1057932): Sun Jun 16 15:48:50 2024 mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed webhooks client 4106439168: Disconnected webhooks client 4124643920: New connection webhooks client 4124643920: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} webhooks client 4124643920: Disconnected webhooks client 4124645648: New connection webhooks client 4124645648: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} webhooks client 4124645648: Disconnected Restarting printer Start printer at Sun Jun 16 16:31:13 2024 (1718548273.3 780.4) ===== Config file ===== [gcode_macro START_PRINT] description = Start G-Code gcode = {% set BED_TEMP = params.BED_TEMP|default(60)|float %} {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(210)|float %} LED_HOTEND_ON G21 G90 M82 {% if printer.extruder.target != 0 %} M104 S{EXTRUDER_TEMP} {% else %} M104 S150 {% endif %} M140 S{BED_TEMP} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 Z370 F3000 G1 X-150 F3000 M190 S{BED_TEMP} M109 S{EXTRUDER_TEMP} G1 Z1 F3000 G1 X-150 Y0 Z0.4 G92 E0 G3 X0 Y-130 I150 J1 Z0.3 E30 F2000 G92 E0 G1 E-1 F2100 [gcode_macro END_PRINT] description = End G-Code gcode = M106 S0 M104 S0 M140 S0 G92 E0 G91 G1 E-1 F2100 G1 Z+5 F6000 G28 G90 LED_HOTEND_OFF M84 [gcode_macro PAUSE] description = Pause the current print rename_existing = PAUSE_BASE gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} RESPOND MSG="Pausing printing..." PAUSE_BASE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 [gcode_macro RESUME] description = Resume the current print rename_existing = RESUME_BASE gcode = {% set e = params.E|default(1) %} {% if 'VELOCITY' in params|upper %} {% set get_params = ('VELOCITY=' + params.VELOCITY) %} {% else %} {% set get_params = "" %} {% endif %} G91 {% if printer["gcode_macro M600"].m600_enabled == 1 %} RESPOND MSG="Nozzle heating..." M109 S{printer["gcode_macro M600"].hotend_temp} M106 S{printer["gcode_macro M600"].fan_speed} RESPOND MSG="Loading filament..." G0 E50 F800 G0 E30 F300 M400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=0 {% else %} G1 E{e} F2100 {% endif %} RESPOND MSG="Resuming printing..." SET_IDLE_TIMEOUT TIMEOUT=1800 RESUME_BASE {get_params} [gcode_macro CANCEL_PRINT] description = Cancel the current print rename_existing = CANCEL_PRINT_BASE gcode = RESPOND MSG="Printing canceled!" G28 M106 S0 M104 S0 M140 S0 CANCEL_PRINT_BASE [gcode_macro M600] description = Filament change variable_hotend_temp = 0 variable_m600_enabled = 0 variable_fan_speed = 0 gcode = {% set x = params.X|default(0) %} {% set y = params.Y|default(-140) %} {% set z = params.Z|default(10)|float %} {% set e = params.E|default(1) %} {% 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 %} SAVE_GCODE_STATE NAME=M600_state SET_IDLE_TIMEOUT TIMEOUT=86400 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=m600_enabled VALUE=1 SET_GCODE_VARIABLE MACRO=M600 VARIABLE=hotend_temp VALUE={printer.extruder.target} SET_GCODE_VARIABLE MACRO=M600 VARIABLE=fan_speed VALUE={printer.fan.speed} RESPOND MSG="Pausing printing..." PAUSE G91 G1 E-{e} F2100 G1 Z{z_safe} G90 G1 X{x} Y{y} F2500 RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 M400 RESPOND MSG="Nozzle heating stopped!" M104 S0 M106 S0 RESTORE_GCODE_STATE NAME=M600_state [gcode_macro UNLOAD_FILAMENT] description = Filament unloading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=unload_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Unloading filament..." G91 G0 E-10 F300 G0 E-30 F800 RESTORE_GCODE_STATE NAME=unload_state {% endif %} [gcode_macro LOAD_FILAMENT] description = Filament loading gcode = {% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SAVE_GCODE_STATE NAME=load_state {% if printer.extruder.temperature < 200 %} RESPOND MSG="Nozzle heating..." M109 S200 {% endif %} RESPOND MSG="Loading filament..." G91 G0 E50 F800 G0 E30 F300 M400 RESTORE_GCODE_STATE NAME=load_state {% endif %} [gcode_macro Z_OFFSET_CALIBRATION] description = Measure Z-Offset gcode = SET_GCODE_OFFSET Z=0 G28 G1 X0 Y0 Z50 F2500 M400 PROBE_CALIBRATE [gcode_macro ENDSTOPS_CALIBRATION] description = Endstops Phase Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 G28 G91 G0 Z-80 F1500 ENDSTOP_PHASE_CALIBRATE stepper=stepper_a ENDSTOP_PHASE_CALIBRATE stepper=stepper_b ENDSTOP_PHASE_CALIBRATE stepper=stepper_c M400 G28 {% endif %} [gcode_macro DELTA_CALIBRATION] description = Delta Calibration gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 BED_MESH_CLEAR {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} DELTA_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro BED_LEVELING] description = Bed Leveling gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_GCODE_OFFSET Z=0 {% if printer.toolhead.homed_axes != "xyz" %} G28 {% endif %} G1 X0 Y0 Z50 F2500 BED_MESH_CALIBRATE M400 G1 X0 Y0 Z50 F2500 G28 {% endif %} [gcode_macro PRESSURE_ADVANCE] description = Pressure Advance gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} SET_PRESSURE_ADVANCE ADVANCE=0 SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005 {% endif %} [gcode_macro PID_BED] description = Bed PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Bed PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=heater_bed TARGET={params.TEMP|default(70)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro PID_HOTEND] description = Hotend PID gcode = {% if printer.idle_timeout.state == "Printing" %} RESPOND TYPE=error MSG="This macro cannot be used while printing!" {% else %} RESPOND MSG="Hotend PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 PID_CALIBRATE HEATER=extruder TARGET={params.TEMP|default(250)} M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 {% endif %} [gcode_macro _PID_KS_START] description = PID for KlipperScreen gcode = RESPOND MSG="PID calibration in progress..." G28 G90 G1 Z50 F1500 M400 M106 [gcode_macro _PID_KS_END] description = PID for KlipperScreen gcode = M107 RESPOND MSG="PID calibration complete! Remember to save the configuration!" G28 [gcode_macro ADXL_TEST] description = ADXL Test gcode = ACCELEROMETER_QUERY [gcode_macro ADXL_NOISE] description = Measure Accelerometer Noise gcode = MEASURE_AXES_NOISE [gcode_macro ADXL_AXE_X] description = Measure X axis resonances gcode = SHAPER_CALIBRATE AXIS=X [gcode_macro ADXL_AXE_Y] description = Measure Y axis resonances gcode = SHAPER_CALIBRATE AXIS=Y [gcode_macro SAVE] description = Save Configuration gcode = SAVE_CONFIG [gcode_macro LED_HOTEND_ON] description = Turn on Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=1 [gcode_macro LED_HOTEND_OFF] description = Turn off Hotend LEDs gcode = SET_PIN PIN=LED_Hotend VALUE=0 [gcode_macro LED_LOGO_ON] description = Turn on Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=1 [gcode_macro LED_LOGO_OFF] description = Turn off Logo LEDs gcode = SET_PIN PIN=LED_Logo VALUE=0 [gcode_macro M204] description = Sets maximum accelleration rename_existing = M204.1 gcode = {% if 'S' in params %} {% set s = params.S|float %} SET_VELOCITY_LIMIT ACCEL={s} {% else %} {% if 'P' in params %} {% set p = params.P|float %} {% if 'T' in params %} {% set t = params.T|float %} {% if p < t %} SET_VELOCITY_LIMIT ACCEL={p} {% else %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% else %} SET_VELOCITY_LIMIT ACCEL={p} {% endif %} {% elif 'T' in params %} {% set t = params.T|float %} SET_VELOCITY_LIMIT ACCEL={t} {% endif %} {% endif %} [gcode_macro M205] description = Sets square corner velocity gcode = {% if 'X' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.X} {% elif 'Y' in params %} SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY={params.Y} {% endif %} [gcode_macro M109] description = Managing extruder temperature rename_existing = M99109 gcode = {% set s = params.S|float %} M104 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=extruder MINIMUM={s} MAXIMUM={s+1} {% endif %} [gcode_macro M190] description = Managing bed temperature rename_existing = M99190 gcode = {% set s = params.S|float %} M140 {% for p in params %}{'%s%s' % (p, params[p])}{% endfor %} {% if s != 0 %} TEMPERATURE_WAIT SENSOR=heater_bed MINIMUM={s} MAXIMUM={s+1} {% endif %} [delayed_gcode bed_mesh_init] initial_duration = .01 gcode = BED_MESH_PROFILE LOAD=default [gcode_macro SECURITY_OFFSET] description = Apply a 2mm Safety Offset gcode = SET_GCODE_OFFSET Z=+2 RESPOND MSG="Safety Offset applied!" [gcode_macro SET_GCODE_OFFSET] description = Saving Z-Offset rename_existing = _SET_GCODE_OFFSET gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} {% else %} {% set zoffset = {'z': None} %} {% endif %} {% set ns = namespace(zoffset={'z': zoffset.z}) %} _SET_GCODE_OFFSET {% for p in params %}{'%s=%s '% (p, params[p])}{% endfor %} {%if 'Z' in params %}{% set null = ns.zoffset.update({'z': params.Z}) %}{% endif %} {%if 'Z_ADJUST' in params %} {%if ns.zoffset.z == None %}{% set null = ns.zoffset.update({'z': 0}) %}{% endif %} {% set null = ns.zoffset.update({'z': (ns.zoffset.z | float) + (params.Z_ADJUST | float)}) %} {% endif %} SAVE_VARIABLE VARIABLE=zoffset VALUE="{ns.zoffset}" [delayed_gcode LOAD_GCODE_OFFSETS] initial_duration = 2 gcode = {% if printer.save_variables.variables.zoffset %} {% set zoffset = printer.save_variables.variables.zoffset %} _SET_GCODE_OFFSET {% for axis, offset in zoffset.items() if zoffset[axis] %}{ "%s=%s " % (axis, offset) }{% endfor %} RESPOND TYPE=command MSG="Loaded Z-Offset from variables.cfg: {zoffset.z}mm" {% endif %} [printer] kinematics = delta max_velocity = 600 max_accel = 10000 minimum_cruise_ratio = 0.5 square_corner_velocity = 5 max_z_velocity = 100 max_z_accel = 1500 minimum_z_position = -25 print_radius = 152 delta_radius = 152 [stepper_a] step_pin = PE3 dir_pin = PE2 enable_pin = !PE4 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA15 homing_speed = 50 homing_retract_dist = 5.0 homing_retract_speed = 10 angle = 210 position_endstop = 415.0 arm_length = 345.0 [tmc2209 stepper_a] uart_pin = PD5 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_b] step_pin = PE0 dir_pin = PB9 enable_pin = !PE1 microsteps = 64 rotation_distance = 40 endstop_pin = ^PA12 angle = 330 [tmc2209 stepper_b] uart_pin = PD7 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [stepper_c] step_pin = PB5 dir_pin = PB4 enable_pin = !PB8 microsteps = 64 rotation_distance = 40 endstop_pin = ^PC4 angle = 90 [tmc2209 stepper_c] uart_pin = PD4 run_current = 1.2 interpolate = False stealthchop_threshold = 0 [extruder] step_pin = PD6 dir_pin = !PD3 enable_pin = !PB3 microsteps = 16 rotation_distance = 4.5 nozzle_diameter = 0.400 filament_diameter = 1.750 heater_pin = PC3 sensor_type = ATC Semitec 104NT-4-R025H42G sensor_pin = PC1 min_temp = -5 max_temp = 315 max_extrude_cross_section = 50 max_extrude_only_distance = 800 control = pid pid_kp = 17.501 pid_ki = 0.711 pid_kd = 107.630 [tmc2209 extruder] uart_pin = PD9 run_current = 0.900 interpolate = True stealthchop_threshold = 0 [heater_bed] heater_pin = PA0 sensor_pin = PC0 sensor_type = EPCOS 100K B57560G104F min_temp = -5 max_temp = 120 control = pid pid_kp = 64.044 pid_ki = 3.812 pid_kd = 268.984 [filament_switch_sensor filament_sensor] pause_on_runout = True runout_gcode = M600 switch_pin = PA4 [fan] pin = PB1 [heater_fan Hotend] pin = PB0 heater_temp = 50.0 [probe] pin = !PA11 x_offset = 0 y_offset = 0 z_offset = 0 speed = 10 lift_speed = 50 samples = 3 samples_result = average sample_retract_dist = 6 samples_tolerance = 0.02 samples_tolerance_retries = 5 [delta_calibrate] radius = 147 horizontal_move_z = 30 speed = 100 [bed_mesh] speed = 100 horizontal_move_z = 30 mesh_radius = 147 mesh_origin = 0,0 mesh_pps = 4,4 round_probe_count = 9 algorithm = bicubic bicubic_tension = 0.1 move_check_distance = 3 zero_reference_position = 0,0 [verify_heater extruder] max_error = 160 heating_gain = 1 [verify_heater heater_bed] max_error = 120 heating_gain = 1 [firmware_retraction] retract_length = 0.7 retract_speed = 40 unretract_extra_length = 0.05 unretract_speed = 40 [input_shaper] shaper_freq_x = 38.6 shaper_type_x = mzv shaper_freq_y = 45 shaper_type_y = ei [idle_timeout] timeout = 1800 [save_variables] filename = ~/printer_data/config/variables.cfg [gcode_arcs] resolution = 0.1 [pause_resume] [display_status] [respond] [exclude_object] [virtual_sdcard] path = ~/printer_data/gcodes [endstop_phase stepper_a] endstop_align_zero = False [endstop_phase stepper_b] endstop_align_zero = False [endstop_phase stepper_c] endstop_align_zero = False [mcu] serial = /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method = command [temperature_sensor Speeder_Pad] sensor_type = temperature_host min_temp = 10 max_temp = 100 [temperature_sensor Motherboard] sensor_type = temperature_mcu min_temp = 0 max_temp = 100 [output_pin LED_Hotend] pin = PE12 pwm = False value = 0 [output_pin LED_Logo] pin = PD11 pwm = False value = 1 ======================= Delta max build height 415.00mm (radius tapered above 379.71mm) Delta max build radius 152.00mm (moves slowed past 175.30mm and 188.31mm) Extruder max_extrude_ratio=20.787584 mcu 'mcu': Starting serial connect webhooks client 4106365464: New connection webhooks client 4106365464: Client info {'program': 'Moonraker', 'version': 'v0.8.0-379-g346a3d7'} mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed mcu 'mcu': Timeout on connect mcu 'mcu': Wait for identify_response Traceback (most recent call last): File "/home/pi/klipper/klippy/serialhdl.py", line 68, in _get_identify_data params = self.send_with_response(msg, 'identify_response') File "/home/pi/klipper/klippy/serialhdl.py", line 262, in send_with_response return src.get_response([cmd], self.default_cmd_queue) File "/home/pi/klipper/klippy/serialhdl.py", line 319, in get_response self.serial.raw_send_wait_ack(cmds[-1], minclock, reqclock, File "/home/pi/klipper/klippy/serialhdl.py", line 254, in raw_send_wait_ack self._error("Serial connection closed") File "/home/pi/klipper/klippy/serialhdl.py", line 61, in _error raise error(self.warn_prefix + (msg % params)) serialhdl.error: mcu 'mcu': Serial connection closed désolé c'est la totalité des fichiers log, je ne sis pas où sont les parties intérréssantes !
Savate Posté(e) Juin 16, 2024 Posté(e) Juin 16, 2024 (modifié) il y a 7 minutes, Sevene61 a dit : [mcu] serial = /dev/serial/by-id/<your-mcu-id> il faut le paramétrer ton mcu quand même En ssh dans la console tu tapes ls /dev/serial/by-id/* ça devrais te remonter le nom de ton mcu à recopier dans le printer.cfg (attention à bien conserver le chemin complet avec /dev/serial/byid/xxxxxxxxxxxxxxxx) En bas du log le mcu est bien paramétré mais il ne marche pas correctement, tu peux vérifier le câble usb (et essayer avec un autre si tu en as un) Modifié (le) Juin 16, 2024 par Savate
Sevene61 Posté(e) Juin 16, 2024 Auteur Posté(e) Juin 16, 2024 J'obtiens cela , que j'ai déjà copié dans le fichier printer,, quand tu parle de câble USB, duquel tu parles ? merci
papagalak Posté(e) Juin 16, 2024 Posté(e) Juin 16, 2024 il y a 53 minutes, Sevene61 a dit : J'obtiens cela , que j'ai déjà copié dans le fichier printer,, quand tu parle de câble USB, duquel tu parles ? merci Celui qui va de l’imprimante à ton boîtier Ubuntu
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant