Nodes Inactive and 'unreliable' content.

I am trying to set up my energy monitoring system and need some help with inactive nodes. 

I have the following hardware: 

EmonTx Arduino Shield connected to Arduino Uno. 433MHz

ACAC Ideal Power Adapter purchased from the shop. 

emonBase - Raspberry Pi based web-connected base station. RFM69pi - 433Mhz

So far I have done the following:

Inserted the pre-loaded sd card into the emonBase and connected it to usb power and my router via and ethernet cable. Created an account on 192.168.1.71. 

Soldered the components onto the shield, including the included wire aerial. Installed it on the Arduino Uno, plugged in a CT to CT1 and the ideal power adapter into the input on the side of the shield. 

Downloaded and installed Recommended Libraries (https://github.com/openenergymonitor/emonTxFirmware/tree/master/emonTxSh...) into the Arduino IDE then copy pasted this examples from this page:

 https://github.com/openenergymonitor/emonTxFirmware/tree/master/emonTxShield/Shield_CT1234_Voltage  into my arduino Ide. I changed the nodeid to 10 and set all CT2,3 and 4 to inactive. I then uploaded the software to the arduino Uno. 

The problem I am getting is:

When I go to the nodes page, all of my nodes are inactive. 

If I go to 192.168.1.71/emoncms/config/view > emonhub.log view, I get the following error. 

2015-10-18 07:51:44,811 DEBUG RFM2Pi Discarding RX frame 'unreliable content'? 58 55 28 118 168 144 202 164 86 134 29 9 216 165 76 7 52 225 0 61 142 (-90)
 

I have tried searching the forums for the solution and can't find anything that means anything to me. Is there a configuration step that I have missed out? What are the troubleshooting steps I need to carry out to determine why all my nodes are inactive? 

Cheers

 

 

 

 

pb66's picture

Re: Nodes Inactive and 'unreliable' content.

The "unreliable content" log entries can be prevented by setting "quiet = true" in the [[RFM2Pi]] runtimesettings, it is displaying all the packets that have been deemed "noise", this is a valuable tool for debugging some issues, although initially the "other" log entries which are diluted by this mode may be more informative.

Have you configured emonhub.conf node 10 to match the emonTxShield's sketch? the included default settings are for a emonTx.

Paul

andrewhg's picture

Re: Nodes Inactive and 'unreliable' content.

I have tried to view the output of the emontx arduino shield by opening the serial monitor in the arduino IDE. 

This is the output that I get. 

"emonTX Shield CT123 Voltage example
OpenEnergyMonitor.org
Node: 10 Freq: 433Mhz Network: 210"

I would expect too be getting a power value in the serial monitor because of this code in the sketch

void loop() 

  
  
  if (CT1) {
    ct1.calcVI(20,2000);                                                  // Calculate all. No.of crossings, time-out 
    emontx.power1 = ct1.realPower;
    Serial.print(emontx.power1); 
    
  }"

Also, it does not appear to be getting into the loop. If I put Serial.print("hello"); in the loop at the top then it does not appear in the serial window. So I need to figure out why nothing in the loop is working. 

I don't know how to configure the emonhob.conf node 10 to match the emontxshield sketch. Could someone please point me towards the reference. 

Thanks

 

andrewhg's picture

Re: Nodes Inactive and 'unreliable' content.

I changed #define RF69_COMPAT 0 to #define RF69_COMPAT 1 in my arduino sketch and it is now transmitting and I am getting values in my serial monitor when I hook the CT up to a kettle. 

However I still have all nodes in my emonhub inactive. I imagine it's because I don't have the note configured correctly. 

Why was #define RF69_COMPAT  being set to 0 affecting whether or not the loop was running? I understand that I have a RF69 module but I can't figure out why this should stop the loop from running. If it does stop the loop from running/ the wrong wireless module is selected then it should really print an error to the serial monitor. 

It may be useful if the technical wiki page describes methods to test if the EmonTx arduino shield is performing as expected. I would be happy to write it if people are willing to provide feedback. 

Next step is to figure out why all the nodes are still inactive. 

Thanks

pb66's picture

Re: Nodes Inactive and 'unreliable' content.

Unfortunately there is no "rfm model" detection, the sketch must be compiled with different library elements depending on which type and it is compiled before installing so would not be able to determine automatically.

Yes, maybe the sketches could be written so fault could be reported if the rfm set up fails, but it wouldn't be informative, just that it failed, not why. The sketch will not proceed beyond trying to contact the rfm device in the set-up so the loop isn't stopped as it's never reached.

There is a "default" emonTx shield config in emonhub.conf, node 6 but since you have edited the sketch you will need to update the details to suit. the node id must be unique so if you add anther node 10 you  must delete (or comment out) the existing one.

If you have set quiet mode (and removed the usa setting if it's there) in emonhub.conf then the emonhub.log (DEBUG) will be less busy and it will be clearer why the valid node is still "inactive" it will be telling you that the datacodes don't match or scales don't match etc. 

Paul

EDIT - (The link I intended to include got dropped during an edit I have added it back in now)

andrewhg's picture

Re: Nodes Inactive and 'unreliable' content.

Thanks for the response, 

Node 6 appears to be for a emonPi

[[6]]
    nodename = emonPi
    firmware = emonPi_RFM69CW_RF12Demo_DiscreteSampling.ino
    hardware = emonpi
    [[[rx]]]
        names = power1,power2,power1_plus_power2,Vrms,T1,T2,T3,T4,T5,T6,pulseCount
        datacodes = h, h, h, h, h, h, h, h, h, h, L
        scales = 1,1,1,0.01,0.1,0.1,0.1,0.1,0.1,0.1,1
        units = W,W,W,V,C,C,C,C,C,C,p

Is there some documentation  about configuring the nodes? I am guessing that nodename, firmware and hardware are not important other than to provide information. I assume names, datacodes, scales and units are important to receive meaningful data. 

pb66's picture

Re: Nodes Inactive and 'unreliable' content.

I'm not sure where your node 6 conf originates so cannot comment, (i have reattached the link to my previous post)

Correct, the node name, firmware and hardware are currently decorative in emoncms, the important parts are the [rx] details there is some documentation in the Nodes Config section of the emonPi / emonBase Setup guide

Paul

andrewhg's picture

Re: Nodes Inactive and 'unreliable' content.

Ok Thanks, I have learned that I  I have to match these values

typedef struct { int power1, power2, power3, power4, Vrms;} PayloadTX; 

in the arduino sketch, to the values within the node 10 in the EmonHub Config Editor http://192.168.1.65/emoncms/config/view that I have set up. Like this.

[[10]]
    nodename = emonTxArduinoShield
    firmware = V1_6_emonTxV3_4_DiscreteSampling
    hardware = emonTxArduino_Shield
    [[[rx]]]
       names = power1, power2, power3, power4, Vrms                                    
       datacode = h
       scales = 1,1,1,1,0.01                    
       units =W,W,W,W,V                        

Once I did that, the node was recognised and I started receiving data. 

I think this stuff is so obvious to existing users that they don't think it is neccessary to have a user guide for it. 

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.