Germany 3+N Household with additional 1Phase PV and planned EV Car

following the user guide, I try to enter the configuration mode (+++ [Enter]) but it does not work. I checked the programmer and resolderd the connections but it always continues with the normal startup…
I tried it at any time in the available time slot. I checked the programmer by connecting the RX/TX and then I see the echo.

Where did you get the programmer, and how are you connecting it? Have you read the FAQ about connecting the programmer?

Q: I’m having trouble with the serial connection to my programmer - it says ‘programmer not responding’. I have checked all the connections, what could be wrong?

  • Try swapping Tx & Rx connections. The EmonTx is NOT marked according to the common serial interface convention. Transmitted data appears on the pin labelled “Rx” (i.e. it is looking for the Rx line), received data should come in on the pin labelled “Tx” (i.e. it is looking for the Tx line).
    Also, you must have the RTS (Request To Send) connection, because it is used to reset the emonTx as part of the upload process.

sorry, I forgot: it is the CP2102 Module from OpenEnergyMonitor. I ordered it together with all my stuff.

not to forget: I ordered the emonTX preprogramed with the 3 phases Firmware, just as you proposed

Ah - then you must have Tx & Rx correct!

Have you set the correct baud rate? - 9600. Do you see the status messages printed on the serial monitor?

I see the messages. Baudrate is set to 9600. When I connect Tx & Rx, I see my echo, so all should be fine, but emonTX does not react on my +++

Are you using the Arduino IDE as suggested by @Robert.Wall?

Next to the baud setting there is a line endings setting, is that set to “Both” ?

(A similar problem was discussed in the “Can’t +++ into EmonTH V2 March 2018 batch” thread)

I tried both. Arduino IDE and PuTTY.
I will try the end settings next and will change to the mentioned thread. Thank you for this hint, I didnt find it.

No need to move your discussion to that thread, I was just pointing out a similar discussion rather than repeating all the points, in short Putty might not work, Arduino should if the line endings are correct.

I meant, I would move for further questions regarding +++.
OK, by IDE with mentioned setting it works now.

But next thing: when typing k0 260.0 [send], i get 2 times the listing “available commands”???
Value is unchanged.
Is it, because the emonTX is working without AC Adaptor and without inputs?
Further, what is correct k x value for setting CT4Phase to PHASE2?

You MUST have an a.c. adapter for the phase locked loop to work.

As I wrote above, you cannot change CT4 to phase 2 without editing the sketch and reloading it.
In the sketch, you must change line 120:
#define CT4Phase PHASE1 // either PHASE1, PHASE2 or PHASE3 to attach c.t.4 to a phase, or comment this line if c.t.4 is not used (See also NUMSAMPLES below)

It works for me! The correct command cannot be reaching the sketch, but I cannot see the reason for that, from what you have written.

emonTx V3.4 CT1234 Voltage 3 Phase PLL example - Firmware version 1.00
Loaded EEPROM config
vCal = 268.97
i1Cal = 90.91
i1Lead = 2.00
i2Cal = 90.91
i2Lead = 2.00
i3Cal = 90.91
i3Lead = 2.00
i4Cal = 16.67
i4Lead = 0.20
Network: 210
Node: 11 Freq: 433MHz
POST.....wait 10s
'+++' then [Enter] for config mode
Entering config mode...

Available commands for config during start-up:
  <nnn>g    - set Network Group
  <nn>i     - set node ID (standard node ids are 1..30)
  r         - restore sketch defaults
  s         - save config to EEPROM
  v         - Show firmware version
  x         - exit and continue

Available commands when running:
  k<x> <yy.y> <zz.z>
            - x = a single numeral: 0 = voltage calibration, 1 = ct1 calibration, 2 = ct2 calibration, etc
            - yy.y = a floating point number for the voltage/current calibration constant
            - zz.z = a floating point number for the phase calibration for this c.t. (z is not needed, or ignored if supplied, when x = 0)
            - e.g. k0 256.8
            -      k1 90.9 2.00
  l         - list the config values
  s         - save config to EEPROM
[emonTx 3-phase PLL: V1.00] 
0.00 0.000 0.000 0.000 0.000 0.00 0.00 0.00 0.00 0.000 0.0000 0.0000 0.0000 0.0000 302.00 Pulses=0  PLL is unlocked 
239.89 0.102 0.000 0.000 0.000 1.73 -48.16 -50.84 0.00 49.915 0.0705 0.0000 0.0000 0.0000 302.00 Pulses=0  PLL is locked 
239.95 0.115 0.000 0.000 0.000 2.21 0.01 0.07 0.00 49.937 0.0803 0.0000 0.0000 0.0000 302.00 Pulses=0  PLL is locked 
239.39 0.115 0.000 0.000 0.000 2.18 3.41 47.59 -0.08 49.929 0.0791 0.0000 0.0000 0.0000 302.00 Pulses=0  PLL is locked 
239.42 0.107 0.000 0.000 0.000 2.23 -5.04 -71.80 0.12 49.913 0.0869 0.0000 0.0000 0.0000 302.00 Pulses=0  PLL is locked 
239.97 0.107 0.000 0.000 0.000 2.05 -0.06 -0.09 -0.00 49.929 0.0795 0.0000 0.0000 0.0000 302.00 Pulses=0  PLL is locked 
239.96 0.109 0.000 0.000 0.000 2.21 0.06 0.04 0.00 49.937 0.0847 0.0000 0.0000 0.0000 302.00 Pulses=0  PLL is locked 

< “k0 120 [enter]” command sent here >

107.05 0.109 0.000 0.000 0.000 0.99 -0.01 0.05 0.00 49.919 0.0853 0.0000 0.0000 0.0000 0.00 Pulses=0  PLL is locked 
107.02 0.149 0.073 0.052 0.009 1.00 -0.09 -0.03 0.02 49.911 0.0630 -0.0111 -0.0052 0.0185 0.00 Pulses=0  PLL is locked 
107.03 0.131 0.082 0.082 0.012 0.49 -0.05 0.22 -0.01 49.899 0.0346 -0.0058 0.0251 -0.0089 0.00 Pulses=0  PLL is locked 
107.14 0.145 0.121 0.082 0.009 0.59 -0.06 -0.19 0.02 49.901 0.0379 -0.0045 -0.0213 0.0160 0.00 Pulses=0  PLL is locked 
107.05 0.139 0.082 0.073 0.015 0.72 -0.04 0.13 -0.02 49.901 0.0488 -0.0047 0.0165 -0.0141 0.00 Pulses=0  PLL is locked 

got the k0 value managed, too.
Maybe, the userguide should be adapted to solve/prevent threads with newbees like me :wink:

1.) it should give a clear hint that config mode must be entered with Arduino IDE and the setting “NL and CR”
2.) it should give a clear hint, that for usage of “Available commands when running”, a x for “exit and continue” have to be given first. Than you write the commands in the dark (without response) and have to s(save) command to see it changing.

For vcal, I finaly used 245.2 to get a good adjust for my side.
Now I will learn, how to change and reload the sketch without bothering you more than necessary :innocent:

Noted. I’ll flag that to @Gwil, because it applies not only to this sketch, but everywhere an input from the keyboard is used.

The command " x - exit and continue" is listed as the last command in the block of commands that are available during start-up, and the k, l & s commands are listed under "Available commands when running". I am not sure how it could be made clearer.

I thought this was explained clearly in the separate documentation:

When running, you will not normally see any response to a ‘k’ command, but you will see the displayed values change. You will see confirmation when you save the changes. If you change one or more of the settings, the change will take effect immediately, or when you continue (option ‘x’) for the RF configuration commands. But if you do not save (‘s’) the changes, the settings will revert to the previous values at the next restart. After you save (‘s’) the settings, the new setting will be used forever, or until changed again.

If you restore the sketch default values (‘r’), the EEPROM data is erased and the sketch restarts immediately, using the values set in the sketch. There is then no means of recovering the EEPROM data.

Hi Robert, dont get me wrong, but I did not get it immediately. So maybe I am not clever enough. :cry:

But I thought, with the exit, I leave the complete config process. So as you are in charge with all this since many years, it is pretty clear for you.
Fo me, a “x - exit config and go to running” would be more clear because of using the same phrases.
The exact meaning and differences of “config during startup” and “when running” was not so clear to me. Not a citicism only a proposal.

For the “write in the dark”, I read and understood it. I only mentioned it because for this reason I did not see if the machine reacts. But when using s, I saw the response. No criticism, only a report.

Thx for your help :+1:

The real problem is, the RF Configuration part is not my code, it is common to many of the emonTx sketches. I did not want to change that, so I added the run-time configuration as a separate set of functions, even though doing it that way made it harder to program.

I did not program an acknowledgement to the ‘k’ input because it would probably have disrupted the normal printout. What would be nice there - and I believe it is impossible without changing the IDE - is a ‘memory’ so that you can edit the last value that was sent. I use the normal copy & paste [ctrl-c] [ctrl-v] on the value I enter.

I am not in charge of anything here! I am only one of several moderators, who try their best to help people and maintain order. We do have the power to delete or edit posts, and remove those who abuse the website, but we try to use those powers as little as possible, and only when necessary.

Please continue to mention things that you don’t understand. It is only with this feedback that we can point out these things to the people who are in charge.

1 Like

Proud to present :smile:

I did my first Arduino programming ever… and it works.
This is like birth of your first child.
It took 2 beer, to give me confidence to do this.:joy:

Many thanks to Robert for his patience with me.:+1:

From tomorrow, I will start, to calibrate the system. As I see now (in the evening) PV values are to low by approx 10%. But even better than before.

If you have an accurate display of voltage and current on your PV meter, then you can use that to calibrate the voltage and all 4 current inputs.

Obviously, you adjust the voltage calibration (if your meter can show the voltage of any phase) correctly, and you adjust the current of c.t. 4 correctly. Then move c.t’s 1-3 onto the PV cable. Adjust the calibration of c.t. 2 to read the same as the meter, but c.t.1 & c.t.3 to read exactly half. Then move the c.t’s back onto their correct cables. When doing it this way, it is best to calibrate the currents at the highest practical value.

thumbsup :grin:

so, on the first view it looks very good.
On peak power of the PV inverter (there is constant power out 4100W) I see a deviation on only 0,8%.
Yesterday I saw a bigger failure on low power (<100W). So I will check the daily deviation first for total house energy(P1-P3) and PV, compared to the grid counter and then will try to get the average matched to my meter.
By the way, I found a cheap second hand TDC 9V AC (09-06) on ebay. I bought it and will check if with this one will behave more, than expected. As written, I use now vcal : 245, so maybe, my idealpower is not OK.

You must expect that. Current transformers are inherently less accurate at low currents, add to that the errors in the analogue to digital conversion.

You can read my test report of two Ideal/TDC a.c. adapters (UK version) in the ‘Learn’ section. The Euro version is a different voltage ratio, but otherwise I assume its properties will be very similar. I recently tested some later units and found significant differences in the phase error.

Of course, I already read your report!

Btw, 1 day:

PV:            Solar rectifier:  21,7kWh   emonTX: 21,562kWh   >> -0,6% 
Energy(2,5h):     grid counter:   1,7kWh   emonTX:  1,697kWh   >> -0,2%

This is without CT calibration and awsome!

Edited post for readability - BT

1 Like