Skip to content

Commit

Permalink
Version 4.0.0 RC3 Profile Stuff
Browse files Browse the repository at this point in the history
- Add new v2tap300 profile
- Updates to profile READMEs

Release Notes:

- New Feature: Added new profiles for Voron V2.4 with TAP and StealthBurner LEDs, and Voron V2.4 300mm with TAP and a nozzle brush, along with usage instructions and features.
- Documentation: Updated profile READMEs to include usage instructions and features, and added license information.
- Refactor: Modified existing profiles in the default profile README file.

> "New profiles added,
> READMEs updated with care,
> Voron printers rejoice,
> Better printing we shall share."
  • Loading branch information
rootiest authored Jun 13, 2023
2 parents c505996 + 4560d39 commit 094bbf3
Show file tree
Hide file tree
Showing 11 changed files with 970 additions and 232 deletions.
106 changes: 106 additions & 0 deletions print_macros.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -2323,6 +2323,112 @@ gcode:
RESTORE_GCODE_STATE NAME=M500 MOVE=1
{% endif %}

## Verify the printcfg variables are all valid
[delayed_gcode printcfg_check]
initial_duration: 1
gcode:
## Load config varibles
{% set printcfg = printer['gcode_macro _printcfg'] %}
## Check and set nozzle_diameter
{% if printcfg.nozzle_diameter|float == 0 %}
{% set printcfg.nozzle_diameter = printer.extruder.nozzle_diameter %}
M{printcfg.error_output} "WARNING: nozzle_diameter not set in printcfg, using " + printcfg.nozzle_diameter + " from toolhead"
{% endif %}
## Check controller fan macros
{% if printcfg.controller_fan == True %}
{% if printcfg.controller_fan_start is not defined %}
M{printcfg.error_output} "WARNING: controller_fan_start macro does not exist!"
{% endif %}
{% if printcfg.controller_fan_stop is not defined %}
M{printcfg.error_output} "WARNING: controller_fan_stop macro does not exist!"
{% endif %}
{% endif %}
## Check docking probe macros
{% if printcfg.docking_probe == True %}
{% if printcfg.attach_macro is not defined %}
M{printcfg.error_output} "WARNING: attach_macro does not exist!"
{% endif %}
{% if printcfg.dock_macro is not defined %}
M{printcfg.error_output} "WARNING: dock_macro does not exist!"
{% endif %}
{% endif %}
## Check cleaning macro
{% if printcfg.cleaning == True %}
{% if printcfg.clean_macro is not defined %}
M{printcfg.error_output} "WARNING: clean_macro does not exist!"
{% endif %}
{% endif %}
## Check purging macro
{% if printcfg.purging == True %}
{% if printcfg.purge_macro is not defined %}
M{printcfg.error_output} "WARNING: purge_macro does not exist!"
{% endif %}
{% endif %}
## Check power off macro
{% if printcfg.power_off == True %}
{% if printcfg.off_macro is not defined %}
M{printcfg.error_output} "WARNING: off_macro does not exist!"
{% endif %}
{% endif %}
## Check M600 macro
{% if printcfg.m600 is not defined %}
M{printcfg.error_output} "WARNING: m600 macro does not exist!"
{% endif %}
## Check led status macros
{% if printcfg.led_status == True %}
{% if printcfg.status_ready is not defined %}
M{printcfg.error_output} "WARNING: status_ready macro does not exist!"
{% endif %}
{% if printcfg.status_busy is not defined %}
M{printcfg.error_output} "WARNING: status_busy macro does not exist!"
{% endif %}
{% if printcfg.status_homing is not defined %}
M{printcfg.error_output} "WARNING: status_homing macro does not exist!"
{% endif %}
{% if printcfg.status_mesh is not defined %}
M{printcfg.error_output} "WARNING: status_mesh macro does not exist!"
{% endif %}
{% if printcfg.status_clean is not defined %}
M{printcfg.error_output} "WARNING: status_clean macro does not exist!"
{% endif %}
{% if printcfg.status_heat is not defined %}
M{printcfg.error_output} "WARNING: status_heat macro does not exist!"
{% endif %}
{% if printcfg.status_m600 is not defined %}
M{printcfg.error_output} "WARNING: status_m600 macro does not exist!"
{% endif %}
{% if printcfg.status_load is not defined %}
M{printcfg.error_output} "WARNING: status_load macro does not exist!"
{% endif %}
{% if printcfg.status_unload is not defined %}
M{printcfg.error_output} "WARNING: status_unload macro does not exist!"
{% endif %}
{% endif %}
## Check audio status macros
{% if printcfg.audio_status == True %}
{% if printcfg.start_audio is not defined %}
M{printcfg.error_output} "WARNING: start_audio macro does not exist!"
{% endif %}
{% if printcfg.error_audio is not defined %}
M{printcfg.error_output} "WARNING: error_audio macro does not exist!"
{% endif %}
{% if printcfg.success_audio is not defined %}
M{printcfg.error_output} "WARNING: success_audio macro does not exist!"
{% endif %}
{% if printcfg.resume_audio is not defined %}
M{printcfg.error_output} "WARNING: resume_audio macro does not exist!"
{% endif %}
{% if printcfg.m600_audio is not defined %}
M{printcfg.error_output} "WARNING: m600_audio macro does not exist!"
{% endif %}
{% endif %}
## Check telegram status macros
{% if printcfg.use_telegram == True %}
{% if printcfg._telegram_runout is not defined %}
M{printcfg.error_output} "WARNING: _telegram_runout macro does not exist!"
{% endif %}
{% endif %}


################################
########### LAYERS #############
Expand Down
31 changes: 24 additions & 7 deletions profiles/default/README.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,42 @@
<!--
Copyright (C) 2023 Chris Laprade ([email protected])
This file is part of Hephaestus.
Hephaestus is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Hephaestus is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Hephaestus. If not, see <http://www.gnu.org/licenses/>.
-->

# Default
# Default (default)

by: [rootiest](https://github.com/rootiest)

This is the default configuration.
This is the default configuration.

Virtually all extra features are disabled in this profile to ensure compatibility with as many configurations as possible.

## Usage

To install printcfg with this profile, run:

curl https://raw.githubusercontent.com/rootiest/printcfg/master/scripts/install.sh | bash -s -- default

To change to this profile, run:

printcfg change default

## Features

Virtually all extra features are disabled in this profile to ensure compatibility with as many configurations as possible.
- Designed to work with build volumes as small as 150mm
- Works without any extra sensors or hardware
- No probe required
111 changes: 2 additions & 109 deletions profiles/default/variables.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -304,7 +304,8 @@ variable_heat_soak_complete: 1
variable_starting_print: 0
gcode: # No gcode needed


#############################################################################################################
#############################################################################################################

## Mainsail Client Macro Variables
[gcode_macro _CLIENT_VARIABLE]
Expand All @@ -325,111 +326,3 @@ variable_park_at_cancel_y : 50.0 ; different park position during CANCEL_PRINT
## !!! Caution [firmware_retraction] must be defined in the printer.cfg if you set use_fw_retract: True !!!
variable_use_fw_retract : True ; use fw_retraction instead of the manual version [True/False]
gcode:



## Verify the printcfg variables are all valid
[delayed_gcode printcfg_check]
initial_duration: 1
gcode:
## Load config varibles
{% set printcfg = printer['gcode_macro _printcfg'] %}
## Check and set nozzle_diameter
{% if printcfg.nozzle_diameter|float == 0 %}
{% set printcfg.nozzle_diameter = printer.extruder.nozzle_diameter %}
M{printcfg.error_output} "WARNING: nozzle_diameter not set in printcfg, using " + printcfg.nozzle_diameter + " from toolhead"
{% endif %}
## Check controller fan macros
{% if printcfg.controller_fan == True %}
{% if printcfg.controller_fan_start is not defined %}
M{printcfg.error_output} "WARNING: controller_fan_start macro does not exist!""
{% endif %}
{% if printcfg.controller_fan_stop is not defined %}
M{printcfg.error_output} "WARNING: controller_fan_stop macro does not exist!"
{% endif %}
{% endif %}
## Check docking probe macros
{% if printcfg.docking_probe == True %}
{% if printcfg.attach_macro is not defined %}
M{printcfg.error_output} "WARNING: attach_macro does not exist!"
{% endif %}
{% if printcfg.dock_macro is not defined %}
M{printcfg.error_output} "WARNING: dock_macro does not exist!"
{% endif %}
{% endif %}
## Check cleaning macro
{% if printcfg.cleaning == True %}
{% if printcfg.clean_macro is not defined %}
M{printcfg.error_output} "WARNING: clean_macro does not exist!"
{% endif %}
{% endif %}
## Check purging macro
{% if printcfg.purging == True %}
{% if printcfg.purge_macro is not defined %}
M{printcfg.error_output} "WARNING: purge_macro does not exist!"
{% endif %}
{% endif %}
## Check power off macro
{% if printcfg.power_off == True %}
{% if printcfg.off_macro is not defined %}
M{printcfg.error_output} "WARNING: off_macro does not exist!"
{% endif %}
{% endif %}
## Check M600 macro
{% if printcfg.m600 is not defined %}
M{printcfg.error_output} "WARNING: m600 macro does not exist!"
{% endif %}
## Check led status macros
{% if printcfg.led_status == True %}
{% if printcfg.status_ready is not defined %}
M{printcfg.error_output} "WARNING: status_ready macro does not exist!"
{% endif %}
{% if printcfg.status_busy is not defined %}
M{printcfg.error_output} "WARNING: status_busy macro does not exist!"
{% endif %}
{% if printcfg.status_homing is not defined %}
M{printcfg.error_output} "WARNING: status_homing macro does not exist!"
{% endif %}
{% if printcfg.status_mesh is not defined %}
M{printcfg.error_output} "WARNING: status_mesh macro does not exist!"
{% endif %}
{% if printcfg.status_clean is not defined %}
M{printcfg.error_output} "WARNING: status_clean macro does not exist!"
{% endif %}
{% if printcfg.status_heat is not defined %}
M{printcfg.error_output} "WARNING: status_heat macro does not exist!"
{% endif %}
{% if printcfg.status_m600 is not defined %}
M{printcfg.error_output} "WARNING: status_m600 macro does not exist!"
{% endif %}
{% if printcfg.status_load is not defined %}
M{printcfg.error_output} "WARNING: status_load macro does not exist!"
{% endif %}
{% if printcfg.status_unload is not defined %}
M{printcfg.error_output} "WARNING: status_unload macro does not exist!"
{% endif %}
{% endif %}
## Check audio status macros
{% if printcfg.audio_status == True %}
{% if printcfg.start_audio is not defined %}
M{printcfg.error_output} "WARNING: start_audio macro does not exist!"
{% endif %}
{% if printcfg.error_audio is not defined %}
M{printcfg.error_output} "WARNING: error_audio macro does not exist!"
{% endif %}
{% if printcfg.success_audio is not defined %}
M{printcfg.error_output} "WARNING: success_audio macro does not exist!"
{% endif %}
{% if printcfg.resume_audio is not defined %}
M{printcfg.error_output} "WARNING: resume_audio macro does not exist!"
{% endif %}
{% if printcfg.m600_audio is not defined %}
M{printcfg.error_output} "WARNING: m600_audio macro does not exist!"
{% endif %}
{% endif %}
## Check telegram status macros
{% if printcfg.use_telegram == True %}
{% if printcfg._telegram_runout is not defined %}
M{printcfg.error_output} "WARNING: _telegram_runout macro does not exist!"
{% endif %}
{% endif %}
46 changes: 39 additions & 7 deletions profiles/hephaestus/README.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,57 @@
<!--
Copyright (C) 2023 Chris Laprade ([email protected])
This file is part of Hephaestus.
Hephaestus is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Hephaestus is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Hephaestus. If not, see <http://www.gnu.org/licenses/>.
-->

# Hephaestus
# Hephaestus (hephaestus)

by: [rootiest](https://github.com/rootiest)

This profile is for a Voron V2.4 with TAP and a nozzle brush.
This profile is for a Voron V2.4 300mm with TAP and a nozzle brush and a bunch of other stuff.

## Usage

To install printcfg with this profile, run:

curl https://raw.githubusercontent.com/rootiest/printcfg/master/scripts/install.sh | bash -s -- hephaestus

To change to this profile, run:

printcfg change hephaestus

## Features

- 300mm build volume
- Voron TAP probe
- Nozzle brush
- Nevermore Filter
- Exhaust Fan
- Bed fans
- Chamber sensor
- Filament sensor on toolhead (load detection possible)
- Door sensor
- Case lights (125 RGBW LEDs)
- StealthBurner LEDs (rainbow barf + RGBW LEDs)
- Beeper (for notifications)

## Notes

This is what I use on my personal machine.

## Photos

This is what I use on my personal machine.
![hephaestus](images/hephaestus.jpg)
Binary file added profiles/hephaestus/images/hephaestus.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added profiles/hephaestus/images/hephaestus.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 094bbf3

Please sign in to comment.