[OpenTRV-interest] Potential bug with Remote Call For Heat
Damon Hart-Davis
dhd at exnet.com
Sun May 10 08:12:34 BST 2015
Hi,
In JIRA as TODO-520:
First fix attempt:
// Potentially accept as call for heat only if command is 0x26 (38)
// and the valve is open enough for some water flow to be likely
// and the housecode is accepted.
if(0x26 == command.command)
{
// Initial fix for TODO-520: Bad comparison screening incoming calls for heat at boiler hub.
const uint8_t mvro = NominalRadValve.getMinValvePcReallyOpen();
if((command.extension > (mvro << 1)) && // Quick approximation as filter with some false positives.
(command.extension >= ((255 * (int)mvro) / 100)) && // More accurate test.
(FHT8VHubAcceptedHouseCode(command.hc1, command.hc2))) // Accept if house code not filtered out.
{
…
> On 10 May 2015, at 07:49, gary.gladman at talktalk.net wrote:
>
> Hi
>
> I have been monitoring RCfH and noticed that the boiler would continue though the valve was below the Minimum Valve PC Really Open (10% - default).
>
> I noticed the following code and think it might be the cause ...
>
> OpenTRV\Arduino\V0p2_Main\FHT8V_Wireless_Rad_Valve.cpp:
>
> // Potentially accept as call for heat only if command is 0x26 (38) and value open enough as used by OpenTRV to TX.
> if((0x26 == command.command) && (command.extension >= NominalRadValve.getMinValvePcReallyOpen()))
>
> My understanding is that in the FHT8V protocol the command extension is in the range 0..255 whereas Minimum Valve PC Really Open is loosely 0..100 therefore 10(%) is compared against extension 10 which as a percentage means (10*100/255) 3% hence the boiler is being shut off significantly later than expected and with valves more closed than intended.
>
> Regards Gary
> _______________________________________________
> OpenTRV-interest mailing list
> OpenTRV-interest at lists.opentrv.org.uk
> http://lists.opentrv.org.uk/listinfo/opentrv-interest
More information about the OpenTRV-interest
mailing list