显示屏添加腔室温度
本指南将引导你修改Klipper LCD的布局,以如下所示显示箱体温度:
非常感谢aMpeX插入Klipper PR使其变得如此简单!
使用说明
首先更新Klipper。本指南基于2020年6月8日合并的功能。
.cfg
为与LCD相关的所有事物创建一个新文件
0. [Optional]尽管您可以跳过此步骤,但是创建面向目标的.cfg
文件使您可以将所有相关的配置项,宏等保存在一个易于查找的位置,并避免您printer.cfg
变得混乱和笨拙。
lcd_tweaks.cfg
在与目录相同的目录中创建一个新文件printer.cfg
- 将该文件链接到您的配置,方法是添加
[include lcd_tweaks.cfg]
到printer.cfg
1.定义箱体温度探针
有几种方法可以做到这一点。我没有与排气扇相互连接的温度探头,所以探头看起来像这样。
在printer.cfg
:
[temperature_sensor chamber]
sensor_type: NTC 100K beta 3950
sensor_pin: z:P0.24
min_temp: 0
max_temp: 100
gcode_id: C
如果已经定义了腔室传感器或链接到腔室的温度风扇,请记下完整的配置部分名称。
2.定义室字形/图标
在这里,您告诉Klipper您想要chamber
图标的外观。
将以下部分添加到lcd_tweaks.cfg
:
[display_glyph chamber]
data:
................
****************
*....*....*....*
*....*....*....*
*....******....*
*..............*
*..............*
*.....****.....*
*.***.*..*.***.*
*.....****.....*
*......**......*
*..............*
*.************.*
*...*......*...*
****************
................
可以通过这种方式定义多个自定义字形/图标。我们还将为串行状态显示行定义Voron徽标标志符号:
[display_glyph voron]
data:
......***.......
....*******.....
...*********....
.*************..
*****..***..***.
****..***..****.
***..***..*****.
**..***..******.
******..***..**.
*****..***..***.
****..***..****.
***..***..*****.
.*************..
...*********....
....*******.....
......***.......
3.定义显示布局和数据字段
display_data
通过将以下内容添加到您的帐户中,定义自定义“ Voron”组lcd_tweaks.cfg
:
[display_template _vheater_temperature]
param_heater_name: "extruder"
text:
{% if param_heater_name in printer %}
{% set heater = printer[param_heater_name] %}
# Show glyph
{% if param_heater_name == "heater_bed" %}
{% if heater.target %}
{% set frame = (printer.toolhead.estimated_print_time|int % 2) + 1 %}
~bed_heat{frame}~
{% else %}
~bed~
{% endif %}
{% else %}
~extruder~
{% endif %}
# Show temperature
{ "%3.0f" % (heater.temperature,) }
# Optionally show target
{% if heater.target and (heater.temperature - heater.target)|abs > 2 %}
~right_arrow~
{ "%0.0f" % (heater.target,) }
{% endif %}
~degrees~
{% endif %}
[display_data __voron_display extruder]
position: 0, 0
text: { render("_vheater_temperature", param_heater_name="extruder") }
[display_data __voron_display fan]
position: 0, 10
text:
{% if 'fan' in printer %}
{% set speed = printer.fan.speed %}
{% if speed %}
{% set frame = (printer.toolhead.estimated_print_time|int % 2) + 1 %}
~fan{frame}~
{% else %}
~fan1~
{% endif %}
{ "{:>4.0%}".format(speed) }
{% endif %}
[display_data __voron_display bed]
position: 1, 0
text: { render("_vheater_temperature", param_heater_name="heater_bed") }
[display_data __voron_display progress_text]
position: 1, 10
text:
{% set progress = printer.display_status.progress %}
{ "{:^6.0%}".format(progress) }
[display_data __voron_display progress_text2]
position: 1, 10
text:
{% set progress = printer.display_status.progress %}
{ draw_progress_bar(1, 10, 6, progress) }
[display_data __voron_display printing_time]
position: 2, 10
text:
{% set ptime = printer.idle_timeout.printing_time %}
{ "%02d:%02d" % (ptime // (60 * 60), (ptime // 60) % 60) }
#########################################################
# This section defines the actual chamber temp. field,
# replace 'temperature_sensor chamber' as necessary
#########################################################
[display_data __voron_display chamber]
position: 2, 0
text:
{% set chamber = printer['temperature_sensor chamber'] %}
~chamber~
{ "%3.0f" % (chamber.temperature,) }
~degrees~
[display_data __voron_display print_status]
position: 3, 0
text:
{% if printer.display_status.message %}
{ printer.display_status.message }
{% elif printer.idle_timeout.printing_time %}
{% set pos = printer.toolhead.position %}
{ "X%-4.0fY%-4.0fZ%-5.2f" % (pos.x, pos.y, pos.z) }
{% else %}
{ "VX.xxx " }
~voron~
{% endif %}
重要说明 关于使用说明:temperature_fan
需要['temperature_sensor chamber']
在倒数第二个部分中将替换为['tempaure_fan chamber']
,或者将您实际配置为config部分的内容替换为。同样,如果您将传感器命名为“ chamber”以外的其他名称。
通过将以下设置添加到您的[Display]
部分来告诉Klipper您要使用我们刚刚定义的组printer.cfg
:
display_group: __voron_display
最后,保存更改您对制作printer.cfg
和lcd_tweaks.cfg
和执行固件重新启动。
4. [Optional]启用试验箱温度。在OctoPrint中显示
要在OctoPrint的温度图上显示箱体温度:
在Octoprint Settings
-> Printer Profiles
-> Edit Profile
(铅笔图标)->中Print bed & build volume
,勾选Heated Chamber
方框。
完成!
愿上帝保佑,你应该能在显示屏上看到室温了!!
请先
!