Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Firmware.py V0.0.1 #169

Merged
merged 1 commit into from
Dec 8, 2024
Merged

Firmware.py V0.0.1 #169

merged 1 commit into from
Dec 8, 2024

Conversation

krautech
Copy link
Collaborator

@krautech krautech commented Dec 8, 2024

Firmware Flasher Script v0.0.1

image

A Python-based tool for managing and flashing firmware configurations for 3D printer setups. This script provides options to debug, select firmware versions, and handle configurations for CAN, USB, and DFU modes.

Features

  • Interactive Menus: Navigate through options with dynamic menus.
  • Debug Mode: Enables detailed output for troubleshooting.
  • Firmware Selection: Automatically retrieve and select firmware files based on device or user input.
  • Multi-mode Flashing:
    • CAN: Supports flashing devices over CAN.
    • USB: Support for USB flashing.
    • DFU: Support for DFU flashing (coming soon).
  • High-Temperature Firmware Support: Search specifically for high-temperature configurations.
  • Katapult Support: Includes integration with the Katapult tool for CAN device management.

Prerequisites

  • Python 3.8+ installed on your system.
  • Access to required tools such as curl and tar for firmware handling.

Usage

Run the script with various command-line arguments to perform tasks.

Command-Line Arguments

Argument Description Example Usage
-b, --branch Specify the branch to retrieve firmware from (default: master). python3 firmware.py -b dev
-D, --debug Enable debug mode for detailed output. python3 firmware.py -D
-t, --type Enable Katapult flash mode. python3 firmware.py -t
-H, --high-temp Search for high-temperature firmware (HT directories). python3 firmware.py -H
-a, --a Shows all firmware avaulable not just latest. python3 firmware.py -a
-k, --kseries Enable support for Creality K-Series printers. python3 firmware.py -k
-f, --flash Specify the flashing mode (CAN, USB, or DFU). python3 firmware.py -f CAN
-d, --device Specify a device UUID for flashing. python3 firmware.py -d <UUID>

Examples

Flash Firmware via CAN

python3 firmware.py -f CAN

Enable Debug Mode

python3 firmware.py -D

Flash High-Temperature Firmware

python3 firmware.py -H -f CAN

Menus

The script provides an interactive menu-based interface. Key menus include:

  • Main Menu: Choose between CAN, USB, and DFU modes.
  • CAN Menu: Options to find and flash CAN devices.
  • Firmware Menu: List available firmware files and select one for flashing.
  • Confirmation Menu: Confirm selected firmware and device before flashing.

Debugging

Use the -d flag to enable debug mode, which provides detailed logs of operations.

@krautech krautech added feature New feature or request beta for beta testing labels Dec 8, 2024
@krautech krautech added this to the v1.1.0 milestone Dec 8, 2024
@krautech krautech requested review from Jomik and RichardTHF December 8, 2024 12:35
@krautech krautech self-assigned this Dec 8, 2024
@krautech krautech merged commit 3df9a40 into develop Dec 8, 2024
3 checks passed
@krautech krautech deleted the feat/fw-script branch December 8, 2024 12:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
beta for beta testing feature New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants