Can't get inputs

Anyone had this problem and knows how to solve it?
I’ve been trying to for 2 months to show some inputs but my emonpi doesn’t detect them automaticaly.
what can I do to solve this problem?
I’m sorry if you have read this question a lot.

Where are you expecting the inputs to come from?

Its own readings of current and voltage, temperature, pulse count?
By radio from an emonTx?
By radio from an emonTH?
By Ethernet?
Somewhere else?

A few clues might be helpful.

I have an emonTxShield connected on an arduino. It should send the data via usb.

I think this is one for @pb66
As far as I know, the emonPi is not set up to receive via USB.

You will need to explain your setup in more detail. Is it an actual EmonPi? What sensors are attached? CT, Temp?

Does it work ok with just the serial console of the Arduino IDE?

4 ct and temp

only my temp works properly, i don’t knowif it is because my code is wrong or I forgot somethin

As I said before, I think

  • What did you buy from the OEM shop?
  • How is it connected?
  • What ‘code’ are you using?
  • How are you expecting it to communicate? RF, WiFi, Serial?
  • Are you trying to connect it to a local EmonCMS,, or using your own processing code?



Edward, please try to provide the information that Brian & Paul are asking for. They are trying to help you, but until you answer the question, they cannot.

As it says in the FAQ:
How to ask for help
Asking a good question is hard. It requires you to remove all assumptions, we don’t know what you’re building so we don’t know how to help you properly. Take the time to sit down and plan your question; remember that we have no context here, so you have to provide every bit of relevant information in one go.”

I will do my best to explain my setup better, I am using a raspberry pi with EmonSD from github. The code I use in my arduino is one i wrote myself and uses formulas from te emonlib.h library. The only thing i bought was th emontxshield and the sensors. I want to post data to local emoncms and then to if you want I can also post the code

I think that might be wise. You need to ensure you get consistent and correct output over usb/serial before even thinking about emoncms or emonhub. Do you use the Arduino IDE? If so post some serial output here too.

// Library
#include <OneWire.h>
#include <DallasTemperature.h>
#include "EmonLib.h"

//Instance voor CT kanalen aanmaken

EnergyMonitor ct1,ct2,ct3,ct4;
// On-board LED
const int LEDpin = 9;

// Set NODE ID
int NodeID = 5;
OneWire oneWire(4);                    // Setup one-wire on digital input pin 4
DallasTemperature sensors(&oneWire);   // Pass the oneWire reference to Dallas Temperature.

DeviceAddress address_T1 = { 0x28, 0xE6, 0x30, 0xE2, 0x08, 0x00, 0x00, 0x6A };

void setup() {
  //Serial Comms


// Kalibiratie
// Transfo verhouding / belaste weerstand = 100A/0.05A/33 ohm = 60.606
  ct1.current(1, 60.606);
  ct2.current(2, 60.606);                                     
  ct3.current(3, 60.606);
  ct4.current(4, 60.606); 
  //ADC ingang, Kalibiratie, Fase verschuiving
  ct1.voltage(A1, 300.6, 1.7);                                
  ct2.voltage(A2, 300.6, 1.7);                                
  ct3.voltage(A3, 300.6, 1.7);
  ct4.voltage(A4, 300.6, 1.7);
  // setup LED inicator
  pinMode(LEDpin, OUTPUT);
  digitalWrite(LEDpin, HIGH);

void loop() {
  // Bereken alle Aantal Kruisingen, Time out
  double temperature = sensors.getTempC(address_T1);  // Get the temperature of the sensor
  // Print Variabelen vb Node ID, Power1, Power2, Power3, Power4
  Serial.print(" Uct2:"); 
  Serial.print(" Ict2:"); 
  Serial.print(" ct2:"); 
  Serial.print(" temp:");
  Serial.print(temperature);                        // Print temperatuur
  // delay 0.5s
  delay (500);


some comments are in dutch, i’m sorry for that

That is the NodeID that is used by the emonPi itself. You cannot have two nodes with the same NodeID. I suggest you change that to

int NodeID = 10;

Paul asked you:

With that sketch, do you see the correct output in the Arduino IDE Serial Monitor? He cannot help you when you do not answer all the questions.

I will change it and see igf it is because of that, and to be honest I don’t know if the data is correct, because I dont know if the realpower function is in Watt or in kW/h. I can’t find much information about the formulas that are used in the functions. once i know what the funtions exactly do, I can optimize my code

CalcVI reports as double precision floating point numbers:
realPower in Watts,
apparentPower in VA,
Irms in Amperes,
Vrms in Volts.

calcIrms returns Amperes as a double precision floating point number.

is Vrms the voltage over the 33 ohm resistor

No, it is the mains voltage measured by the a.c. adapter, if you have one. It should be ~ 230 V for you.
You get Vrms after you have used calcVI( ) to calculate all the quantities I listed. You cannot use calcVI( ) unless you have an a.c. adapter.

The voltage measured across the 33 Ω burden resistor is proportional to current, it is multiplied by a scale factor and you get that as a current in Amperes either by using calcIrms( ) or with calcVI( ).

I get ~5v even with the adapter connected, why could this be?