Display your 3D printer's progress, temperatures, and status in OBS using Klipper/Moonraker/Mainsail.
You need to allow cross-origin requests so OBS can fetch data from your printer.
| # ============================================================================ | |
| # KLIPPER HEAT SOAK MACRO (SMART: TIME OR CHAMBER TEMP) | |
| # ============================================================================ | |
| # Author: Cody Dracars | |
| # Date: 2025-04-05 (smart mode added 2025-09-25) | |
| # License: MIT | |
| # | |
| # Heats bed to target and performs a soak using either: | |
| # - Time-based countdown, or | |
| # - Chamber-temperature target with hold requirement (if a chamber sensor exists) |
| Here's an actually correct way to set your Z offset: | |
| Home the toolhead so the inductive probe will be just above the | |
| plate. (You want the next step to heat it up so your measurements | |
| will include its thermal expansion.), | |
| Heat the bed to the middle of the bed temperature range for the | |
| filament you want to print with. 60C is a good start for PLA if | |
| your filament manufacturer doesn't specify., |
| # ============================================================================ | |
| # KLIPPER HEAT SOAK MACRO | |
| # ============================================================================ | |
| # | |
| # A comprehensive heat soak macro for Klipper 3D printers that heats the bed | |
| # to a target temperature and maintains it for a specified duration to warm | |
| # the printer chamber/enclosure for materials like ABS, ASA, PC, etc. | |
| # | |
| # Features: | |
| # - Configurable bed temperature and soak duration |
| #!/bin/bash | |
| # Detect user's default shell from the SHELL environment variable | |
| default_shell=$(basename "$SHELL") | |
| # Path to the correct shell config file based on user's default shell | |
| shell_config="" | |
| if [[ "$default_shell" == "zsh" ]]; then | |
| shell_config="$HOME/.zshrc" | |
| elif [[ "$default_shell" == "bash" ]]; then |
| #!/usr/bin/env bash | |
| # Adapted from https://medium.com/@sean.handley/how-to-set-up-docker-for-mac-with-native-nfs-145151458adc | |
| set -o errexit | |
| set -o pipefail | |
| set -o nounset | |
| OS=$(uname -s) |
| @router.get("/jwt/token") | |
| async def generate_jwt() -> dict[str, bytes] | Literal[False]: | |
| """Returns JWT Token dev work. | |
| Returns: | |
| Token string or False. | |
| """ | |
| private_key = load_pem_private_key( |
| #!/bin/sh | |
| # Generate example env file from current env file. | |
| sed 's/=.*/=/' .env > .env.example | |
| git add .env.example |
| # <type>: (If applied, this commit will...) <subject> (Max 50 char) | |
| # |<---- Using a Maximum Of 50 Characters ---->| | |
| # Explain why this change is being made | |
| # |<---- Try To Limit Each Line to a Maximum Of 72 Characters ---->| | |
| # Provide links or keys to any relevant tickets, articles or other resources | |
| # Example: Github issue #23 |
| #!/usr/bin/env python3 | |
| import re | |
| filename = 'fsp_competitive_cross_reference.cut_n_paste.inc' | |
| # Read in the file | |
| with open(filename, 'r') as file: | |
| filedata = file.read() |