I want to change the source for my existing main kWh accumulated Feed (e.g. move from one emonTX to a different one).
The issue is getting emoncms to accept the change and not reset the accumulated value to zero. This might be related to this query Wh accumulator does not survive several reboots. Perhaps emoncms is not aggressive enough to look back for existing values or should be more aggressive in not feeding zeros/null to an existing accumulation Feed. @TrystanLea?
The original feed was from a Power to kWh process as will the new Feed.
There is almost a need for a ‘use last good value’ checkbox in the Input Processing page to force the last value from the accumulator into the processing.
As long as you do not allow the 2 inputs to overlap during the transition you should not have an issue unless things get complicated further by a reboot or redis flush etc.
Unlikely as the weakness of the whaccumulator (and kwhaccumulator?) process is it’s dependence on redis to operate unlike the powertokwh process. This is why I always use a combination of the pulsecount_to_pulseincrease process and the plain accumulator process, it is essentially the same as using a (k)whaccumulator but using a saved “last received value” feed rather than a temporary and therefore resetable redis feed.
To avoid any overlapping data, if both inputs come via a emonhub http interfacer you can simply stop emonhub posting but continue to collect data from both emontx’s while you alter the processing at your leisure with no loss of data once you resume posting, the exact switch time will effectively be the time you paused emonhub regardless of how long it takes to rearrange your processing. But if you are using untimestamped mqtt or emonesp inputs be wary of any delayed data landing during the transition.
Is there a setting in the emonhub config that does that on the fly? I seem to remember this being mentioned before.
I tried it a different way (I had synced a feed from another instance and was trying to join that) by copying the existing feed (scale = 1 seemed to be the only way) and immediately it picked it up.
Could you expand please as I have noticed exactly that weakness in the accumulator.