Changing the RFXmeter base address

This morning I overcame the first obstacle on the way to rebuilding my power monitoring system.

I have two RFXmeter units sending data to the receiver which is plugged into a Linux machine on which I’m running rfxcom-rx from the perl Device::RFXCOM package. It just displays the incoming messages which is all I want until I get everything working. Unfortunately both RFXmeter units have the same base address which means I get output of the form:

master rfxmeter 30.00f099810005: sensor/rfxmeter.00f0[count]=39297
master rfxmeter 30.01f14ea3000f: sensor/rfxmeter.01f1[count]=20131
master rfxmeter 30.02f258c10002: sensor/rfxmeter.02f2[count]=22721
master rfxmeter 30.03f30000000a: sensor/rfxmeter.00f0[count]=0
master rfxmeter 30.04f40aa30001: sensor/rfxmeter.01f1[count]=2723

for the five current sensors I’m using. That’s not too helpful because obviously I can’t tell from the data which sensor it applies to.

Fortunately it’s possible to reconfigure the meter unit to use a different base address, though it doesn’t work quite as neatly as I’d like. The manual explains how to do it using some Windows application to display the messages from the meter unit, but as I don’t have Windows running anywhere handy and in fact it’s quite awkward to set anything up so I can see a screen displaying the messages whilst I’m standing next to the meter unit the process is not ideal. What I worked out is this…

  1. Turn off the RFXmeter by unplugging the power transformers for at least ten seconds
  2. Press the “mode” button on the RFXmeter and reconnect the power
  3. The LED next to the mode button should light up to indicate that the unit is in configuration mode. Release the mode button.
  4. The green light should now flash a bit whilst the unit transmits a message to tell you to set the interval rate. Once that stops, press the mode button again within five seconds
  5. There should be more flashing, corresponding to the request to set the base address being sent. Just wait at this point
  6. More flashing should start fairly quickly, as the unit transmits its current address. Once that stops, press the mode button again
  7. One final burst of data should now be sent with the new address and you’re all done

At this point the unit should have incremented its base address. So whereas the initial address on mine was 00f0, it had become 01f1. That still clashed with one of the sensors in my other unit though, so I actually had to repeat the entire process twice to get the address to be 03f3. In fact, it would appear that pressing the mode button after the new address is transmitted will increment it again, but I didn’t find that out until after I’d realised that there was still a clash and fixed it.

Now the data displayed from all the sensors looks like:

master rfxmeter 30.00f09aee0001: sensor/rfxmeter.00f0[count]=39662
master rfxmeter 30.01f14f640001: sensor/rfxmeter.01f1[count]=20324
master rfxmeter 30.02f2596c000c: sensor/rfxmeter.02f2[count]=22892
master rfxmeter 30.03f30000000a: sensor/rfxmeter.03f3[count]=0
master rfxmeter 30.04f40aa30001: sensor/rfxmeter.04f4[count]=2723

which is much better as I can now tell all the sensors apart. In my case they are:

00f0: incoming phase from the meter
01f1: main house
02f2: “granny annexe”
03f3: pool house
04f4: solar PV

We do actually have a second phase, but there’s no access to a socket on that phase in the meter cabinet (quite sensibly, I’d suggest) so when I want to add monitoring to that I’ll have to see what possibilities exist as regards adding a current transformer to the supply in the outbuilding it feeds.

This entry was posted in Computing and tagged , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *