Skip to content

Commit

Permalink
update WIKI for exhuast/auxiliar fan and active chamber temperature f…
Browse files Browse the repository at this point in the history
…eatures
  • Loading branch information
SoftFever committed Nov 11, 2023
1 parent 4e5e5a7 commit 4f48afd
Show file tree
Hide file tree
Showing 3 changed files with 106 additions and 3 deletions.
36 changes: 35 additions & 1 deletion doc/Auxiliary-fan.md
Original file line number Diff line number Diff line change
@@ -1 +1,35 @@
WIP
OrcaSlicer use `M106 P2` command to control auxiliary cooling fan.

If you are using Klipper, you can define a `M106` macro to control the both normal part cooling fan and auxiliary fan and exhuast fan.
Below is a reference configuration for Klipper.
*Note: Don't forget to change the pin name to the actual pin name you are using in the configuration*

```
# instead of using [fan], we define the default part cooling fan with [fan_generic] here
# this is the default part cooling fan
[fan_generic fan0]
pin: PA7
cycle_time: 0.01
hardware_pwm: false
# this is the auxiliary fan
# comment out it if you don't have auxiliary fan
[fan_generic fan2]
pin: PA8
cycle_time: 0.01
hardware_pwm: false
# this is the exhaust fan
# comment out it if you don't have exhaust fan
[fan_generic fan3]
pin: PA9
cycle_time: 0.01
hardware_pwm: false
[gcode_macro M106]
gcode:
{% set fan = 'fan' + (params.P|int if params.P is defined else 0)|string %}
{% set speed = (params.S|int if params.S is defined else 255) %}
SET_FAN_SPEED FAN={fan} SPEED={speed}
```
37 changes: 36 additions & 1 deletion doc/Chamber-temperature.md
Original file line number Diff line number Diff line change
@@ -1 +1,36 @@
WIP...
OrcaSlicer use `M141/M191` command to control active chamber heater.
If you are using Klipper, you can define these macros to control the active chamber heater.
Bellow is a reference configuration for Klipper.
*Note: Don't forget to change the pin name/values to the actual values you are using in the configuration*

```
[heater_generic chamber_heater]
heater_pin:PB10
max_power:1.0
# Note: here the temperature sensor should be the sensor you are using for chamber temperature, not the PTC sensor
sensor_type:NTC 100K MGB18-104F39050L32
sensor_pin:PA1
control = pid
pid_Kp = 63.418
pid_ki = 0.960
pid_kd = 1244.716
min_temp:0
max_temp:70
[gcode_macro M141]
gcode:
SET_HEATER_TEMPERATURE HEATER=chamber_heater TARGET={params.S|default(0)}
[gcode_macro M191]
gcode:
{% set s = params.S|float %}
{% if s == 0 %}
# If target temperature is 0, do nothing
M117 Chamber heating cancelled
{% else %}
SET_HEATER_TEMPERATURE HEATER=chamber_heater TARGET={s}
TEMPERATURE_WAIT SENSOR="heater_generic chamber_heater" MINIMUM={s-1} MAXIMUM={s+1}
M117 Chamber at target temperature
{% endif %}
```
36 changes: 35 additions & 1 deletion doc/air-filtration.md
Original file line number Diff line number Diff line change
@@ -1 +1,35 @@
WIP
OrcaSlicer use `M106 P3` command to control air-filtration/exhuast fan.

If you are using Klipper, you can define a `M106` macro to control the both normal part cooling fan and auxiliary fan and exhuast fan.
Below is a reference configuration for Klipper.
*Note: Don't forget to change the pin name to the actual pin name you are using in the configuration*

```
# instead of using [fan], we define the default part cooling fan with [fan_generic] here
# this is the default part cooling fan
[fan_generic fan0]
pin: PA7
cycle_time: 0.01
hardware_pwm: false
# this is the auxiliary fan
# comment out it if you don't have auxiliary fan
[fan_generic fan2]
pin: PA8
cycle_time: 0.01
hardware_pwm: false
# this is the exhaust fan
# comment out it if you don't have exhaust fan
[fan_generic fan3]
pin: PA9
cycle_time: 0.01
hardware_pwm: false
[gcode_macro M106]
gcode:
{% set fan = 'fan' + (params.P|int if params.P is defined else 0)|string %}
{% set speed = (params.S|int if params.S is defined else 255) %}
SET_FAN_SPEED FAN={fan} SPEED={speed}
```

0 comments on commit 4f48afd

Please sign in to comment.