The code is for a commercial product so unfortunately I can’t share it.
We read the temperature from the DW1000 and then apply a linear correction to the range based on temperature. We use a very slightly different distance per degree value to the one in the user manual but it’s not far off.
To come up with this I put a unit in the freezer for a couple of hours, pulled it out and put it in a fixed location. It then measured range constantly to a second unit that had been on and running for hours. I logged the measured range Vs internal temperature like this for a group of units. There was a common liner trend for them all which gave me the constant linear correction I use. After applying that correction each unit was repeatable but unit to unit there was a lot of difference and the results weren’t even remotely linear. However none of them had differences of over 1mm per degree C so as long as the calibration is done fairly close to the normal operating temperature the errors aren’t too bad.