Add Griffin and Cheetah GCode flavors for Ultimaker S-series printers #637

Closed
opened 2026-04-05 16:24:41 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @kije on 2/23/2026

Implement Griffin and Cheetah as first-class GCode flavors in OrcaSlicer, enabling proper support for Ultimaker S3, S5, and S7 printers. Griffin is a Marlin-based dialect that uses structured headers (;START_OF_HEADER / ;END_OF_HEADER), G280 prime blob, and per-extruder metadata. Cheetah is a Griffin variant that replaces Marlin's M205 instantaneous jerk with M215 real jerk control (m/s^3 units).

Changes:

  • Add gcfGriffin and gcfCheetah to GCodeFlavor enum with is_griffin_flavor() helper
  • Add Griffin-specific config settings: prime_blob_enable, extruder_prime_pos_x/y/z, machine_heated_build_volume, build_volume_temperature, machine_nozzle_id
  • Implement structured Griffin header generation (write_griffin_header) with extruder train metadata, build plate/volume temperatures, and print bounds
  • Add G280 prime blob support gated by prime_blob_enable setting
  • Add Cheetah M215 jerk control in GCodeWriter and machine envelope
  • Update GCodeProcessor for Griffin/Cheetah flavor detection and time estimation
  • Update GUI Tab.cpp for conditional visibility of Griffin-specific settings
  • Add Ultimaker S3, S5, S7 printer profiles with Griffin flavor

https://claude.ai/code/session_011iqTkRuJS4CyXhTjAwA91r

Description

Screenshots/Recordings/Graphs

Tests

*Originally created by @kije on 2/23/2026* Implement Griffin and Cheetah as first-class GCode flavors in OrcaSlicer, enabling proper support for Ultimaker S3, S5, and S7 printers. Griffin is a Marlin-based dialect that uses structured headers (;START_OF_HEADER / ;END_OF_HEADER), G280 prime blob, and per-extruder metadata. Cheetah is a Griffin variant that replaces Marlin's M205 instantaneous jerk with M215 real jerk control (m/s^3 units). Changes: - Add gcfGriffin and gcfCheetah to GCodeFlavor enum with is_griffin_flavor() helper - Add Griffin-specific config settings: prime_blob_enable, extruder_prime_pos_x/y/z, machine_heated_build_volume, build_volume_temperature, machine_nozzle_id - Implement structured Griffin header generation (write_griffin_header) with extruder train metadata, build plate/volume temperatures, and print bounds - Add G280 prime blob support gated by prime_blob_enable setting - Add Cheetah M215 jerk control in GCodeWriter and machine envelope - Update GCodeProcessor for Griffin/Cheetah flavor detection and time estimation - Update GUI Tab.cpp for conditional visibility of Griffin-specific settings - Add Ultimaker S3, S5, S7 printer profiles with Griffin flavor https://claude.ai/code/session_011iqTkRuJS4CyXhTjAwA91r # Description <!-- > Please provide a summary of the changes made in this PR. Include details such as: > * What issue does this PR address or fix? > * What new features or enhancements does this PR introduce? > * Are there any breaking changes or dependencies that need to be considered? --> # Screenshots/Recordings/Graphs <!-- > Please attach relevant screenshots to showcase the UI changes. > Please attach images that can help explain the changes. --> ## Tests <!-- > Please describe the tests that you have conducted to verify the changes made in this PR. -->
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/OrcaSlicer#637