How to get temperature TMC2209

my 3d printer is voron tinym, tmc2209
so how to get motor driver temperarure value???
please let me know…thank you .

There isn’t an internal temperature sensor on the TMC2209.

If you suspect a problem then I would suggest attaching a thermistor to the TMC2209 with heat conductive paste and something like aluminum muffler tape at the base of the '2209’s heat sink.

The klippy.log also can give us a hint.

I think there is a temperature sensor. See https://www.trinamic.com/fileadmin/assets/Products/ICs_Documents/TMC2209_datasheet_rev1.09.pdf page 68 and 69.

@Jason7 In your klippy.log look for something like
TMC 'stepper_x' reports DRV_STATUS: 00130101 otpw=1(OvertempWarning!) t120=1 cs_actual=19
https://www.klipper3d.org/TMC_Drivers.html
… might also be helpful.

Good luck, hcet14

1 Like

There is none. Only warning levels when the driver reports a warning respectively shuts down.

The first driver to integrate a “real” temperature sensor is the TMC2240.

TMC calls it “a four-level temperature sensor”.

I agree.

The original question was:

so how to get motor driver temperarure value???

You can’t get it with the TMC2209. You can specify the overtemp condition that will flag a warning (pre-overtemperature warning) or shut down the chip but during normal operation, you have no idea what the temperature of the chip is.

1 Like

Hi,
it is possible to define [temperature_sensor] for TMC2240
and then display it in Klippersreen ?

TMC2240 is the first driver from ADI with a real temperature sensor to measure the chip temperature .

See page 65. ADC_TEMP register.

I guess “Motor Temperature Measurement” in “StealthChop2 mode” is some kind of estimation. See also page 65. PWM_SCALE register.

How good that estimation is, will our experience show.

I would say yes. I’m no programmer though. But the two registers exist, so why not.

See temperature_driver: adds driver temperature sensor by pedrolamas · Pull Request #6210 · Klipper3d/klipper · GitHub

1 Like

Hi Sineos,
This is a cool PR, do you know if it will be reviewed soon? I have the tmc2240

@eldeeb91 sorry, cannot tell you. Needs to be reviewed and approved by a developer.

Out of this discussion, it is clear that no temperature measuring is available except a four-level temperature sensor (pre-warning and thermal shutdown) for
diagnostics and for the protection of the IC against excess heat.

I am planning to use this project to implement direct cooling of my BTT octopus:

The main purpose is to get rid of my loud side fans on my Voron 2.4.
And in order to not replace two loud fans with other two loud fans, with just a higher pitch, I would like to run these direct blowing smaller fans at low power (e.g. 30%).

My question is it possible to use the overheating warning that comes from the TMC driver and ramp up the fans to 100%?