Although I implied it, I didn't explicitly confirm whether the automatic compensation is done by PicoLog by default, so I apologise for leaving that out. Also, I was tied up on Friday so I wasn't able to respond quickly to your posted reply. So, to answer your first question in more detail, historically the compensation was done automatically, when the following setting existed in the plw.ini file:
However, over a period of time, the usage has changed and there are a number of settings that are done automatically, without needing to be specified in the ini file. The problem is that while most settings can still be controlled (they can be turned off in the ini file, e.g. 'AllowPause=No') TempComp doesn't appear to be one of them.
Regarding your comment about the temperature compensation using temperature values instead of voltage, changing the reference used for calculations is one solution. Another way to avoid having to use the internal sensor would be to have the switch for the ini file enabling you to turn off compensation and use a calculated channel instead to multiply the pH reading with the scaled temperature of the sensor.
Thanks for your work in characterizing the behaviour of the DD100 sensor with the pH sensor, and determining both it's scaling, and the issue with it's thermal mass. This is valuable information for other users.
I need to perform a check and, if the the functionality of the temperature compensation switch has been removed (or not initially implemented), I'll put in an enhancement request for PicoLog to enable compensation via an external temp sensor. In the meantime as you mentioned, your data can be used to modify a scaling file or calculated parameter.