I think I may have missed something. On the EmonHub config, there are settings to scale down the inputs -
[[16]]
nodename = lounge
[[[rx]]]
names = temperature, battery
datacode = h
scales = 0.01,0.001
units = C,V
This moves two decimal places from the temperature and three from the battery voltage. All good.
These new values are then published to MQTT, again all good.
They are then posted to EmonCMS, remote in my case. This is not quite so good. I have processing in EmonCMS to scale down these values, as I understood the idea was to keep all the processing in EmonCMS?
So, I need the values correctly scaled for further processing out of MQTT, but now need to strip out processing from EmonCMS? (to keep the freeds the same as the inputs), where the processing was supposed to be reduce processing on the nodes and reduce transmitted data/power?
In the mean time, it’s made rather a mess of my graphs as the temperature is now 2.4’C in the house and mains voltage is 2.39 Volts. Is there any way to clean that data up?
Yes correct, on newer emonPi / emonBase systems we are using emonHub to apply to correct scaling to inputs. This has many advantages since the user does not need to manually work out what scale factor to apply to each input and the values are correctly scaled in MQTT.
You will need to remove your input scaling you mention you have in place on emoncms.org. This is a one click step to remove the scalar input process. Sorry for the hassle, however, I’m sure you can understand the reason for the change. Alternatively, if you don’t want to change you can remove the scaling in emonHub by changing the scales = 1,1 in the example you gave above.
Hi Glyn,
A good point well made!
I’ve set to the scales to 1, to match the existing server. This of course sends incorrect data to the MQTT system, but as I’m not using it yet, that’s OK.
Once I’ve got things sorted. I’ll put the scalers back to the correct settings one by one and adjust the EmonCMS settings one by one.
A nice, smooth, clean transition from the old server to the EmonHub.
Sorry to revive this topic.
I am introducing new data to my MQTT input and many are float values.
I did multiplied them and tried to use “scales” as described here:
However, scales are working to EmonHubJeeInterfacer, but not to EmonHubMqttInterfacer.
I have no change in INPUT data even using 0.1 scale.
Any idea? Thanx!