Hello,
I have been already using emoncms for monitoring electricity and PV energy for one year. Today I tried to connect pulse output from heat pump energy meter, but after couple of hours I am not successful. Pulse output is wired directly to RPi: S0+ wire to GPIO4 (pin7) and S0- wire to GND.
Emoncms config:
For future reference, when posting code or output, please put 3 ābackticksā (normally found at the top left of the keyboard) on a line of their own before the code, and 3 more backticks also on a line of their own after the code:
```
code
```
If it is something like php you can add a language identifier after the first 3 backticks: ```php or even ```text if you donāt want any language markup applied.
I am not an emonCMS expert, and I have never attempted to use the Pulse Counter Interfacer, so I was hoping someone who knows more would answer. But I think your problem is here:
This defines the pulse input as coming from Node ID = 3 (the ānaturalā Node ID = 0, nodeoffset is added to this), but emonHub is expecting the pulses to come from Node ID = 29:
[edit]
IIRC, I think it is the physical pin number - I should make that clear in the instructions if it is.
Secondly, the logging should be at 5s as that is the default period it accumulates pulses before sending them.
No decoder is required. It just sends the number of pulses and you can decode that in the input processing. I also think there must not be a decoder (so emonhub just sends it on).
Long time since I did this, but I donāt think it needs a decoder. Just sends the number of pulses directly on.
I need to dig out my old system and check!
[edit]
I hate it when you go back and it doesnāt make sense. The Python has an interval of 3s by default, but if emoncms is logging at 5s, it is going to miss pulses.
Ah, got access and yes, I set the rate_limit as 5 to match the logging in my working system.
[[pulse]]
Type = EmonHubPulseCounterInterfacer
[[[init_settings]]]
pulse_pin = 15
bouncetime = 5
# bouncetime = 1
# Rate_limit is the rate at which the interfacer will pass data
# to emonhub for sending on. Too short and pulses will be missed.
# rate_limit is minimum number of seconds between data output.
# pulses are accumulated in this period.
# rate_limit default to 2.
rate_limit = 5
[[[runtimesettings]]]
pubchannels = ToEmonCMS,
nodeoffset = 3
This setup works when physically connected to pin 15.
Note - the rate_limit must be the same as the logging interval in emoncms.