Thanks for looking into this Karl. I think I tracked down what is going on. The issue is
this Devices.xml change which updated the device type for the Temperature device from
custom to
sensor. That change was made (not by me) since using the native Indigo sensor device type better describes the device type. That allows, for example, other plugins to include those devices when enumerating all sensor devices.
The problem is that Indigo's native device types (everything but
custom) ignore the
UiDisplayStateId setting. This is so that the UI remains consistent for those device types. In the case of a sensor device, it always shows the state
sensorValue, which is automatically included for sensor devices (don't add it to the XML). That value is also mirrored at the device instance level as
dev.sensorValue (just like dev.brightness for dimmers). The problem is a bit more complex because changing the Devices.xml for the device type does not automatically update existing device instances. In fact there is no way to morph an existing device from one type to another without deleting and re-creating it. This explains why older devices work differently (they are still
custom type and not
sensor type) but newer ones don't show anything in the status column. The reason the status column is blank is because the state
sensorValue is never being updated and that is the state that is always shown in the status column for a sensor device.
I think the best solution here (but I haven't looked a the RFX .py code to know for sure) might be to mirror the what is getting stuffed into the "display" state into the "sensorValue" state. This should probably be done conditionally though, only if "sensorValue" state exists (
if "sensorValue" in dev.states:) because for older device instance that are still of type
custom, it won't.