blog’s logo (little yellow bolt)

spark

my tinkerer journey into the fantastic 3D printing world, cnc, rc cars and such…

Klipper: Display MCU and Raspberry Pi temperature in Mainsail

Well, this one is pretty easy but this is a great opportunity to dig a little deeper in Klipper configuration. The main goal is to display the Raspberry Pi and MCU temperature in Mainsail’s UI. To achieve that, simply edit printer.cfg and add the following:

[temperature_sensor raspberry_pi_3]
sensor_type: temperature_host
min_temp: 0
max_temp: 70
[temperature_sensor skr_mini_e3_v2.0]
sensor_type: temperature_mcu
min_temp: 0
max_temp: 70

While this is pretty simple, it got me interested in the available configurations for temperature_sensor. So let’s take a look. Of course, you can always read the official documentation for more information.

sensor_type

I won’t go into the details for this one, only thing that is required to know for this use case is that there is 2 builtin sensors which are temperature_mcu, the SKR Mini E3 in my case and the temperature_host that runs Klipper. In my case, the Raspberry Pi 3.

I’m planning on adding a new sensor for the enclosure’s temperature. I’ll dig deeper then.

max_temp

Since I had only a small idea of was this setting is used for, I reduced the example above to use 15 instead of 70 as the max temperature. Result? Klipper automatically shutdown itself as a precaution.

HOST temperature 42.9 above maximum temperature of 15.0.
Once the underlying issue is corrected, use the
"FIRMWARE_RESTART" command to reset the firmware, reload the
config, and restart the host software.
Printer is shutdown

It is required and I suggest you find the correct value for your devices. In my case, it is a Raspberry Pi 3 which can withstand temperatures from -40°C to 85°C. I like to be on the more cautious side so I set the max_temp to 70. As for the SKR Mini E3 v2, I couldn’t find the answer so I used the same value… 🤞

min_temp

Same as max_temp but I do not see the usage of this in this case.


✌️