Hey guys

I am looking into integrating the WEM3080T into Solaranzeige. It can do both, Modbus TCP and REST (HTTP+JSON). However the authentication is not yet implemented for REST. So I guess I will go with Modbus TCP.

Any suggestions on which one to chose?

What sense does it make to require authentication for REST, while Modbus TCP is open for everybody? Shelly 3EM for example allows authentication to be disabled...

Greets
Daniel

Thread Status
19
350
2
1
0

Sort replies by:

Hi Daniel:

So glad to know you and Solaranzeige.
We introduce the basic auth when the customer visits the local web page of the energy meter.For some historical reason, this basic auth also exists in the REST API such as "monitorjson"
Like this: 

https://www.iammeter.com/docs/integrate-with-PVOutput

I will recommend my colleagues remove the basic auth in the API of monitorjson in the next upgrade.
Before that,please use the modbus/tcp first. Compared to the REST API(refresh data every 6 seconds), the modbus/tcp has the obvious advantage that it can refresh data in 1 second interval 

Support Modbus/TCP in the Wi-Fi energy meter of IAMMETER


BR

Jason

Hey guysI am looking into integrating the WEM3080T into Solaranzeige. It can do both, Modbus TCP and REST (HTTP+JSON). However the authentication is not yet implemented for REST. So I guess I will go with Modbus TCP.Any suggestions on which one to chose?What sense does it make to require authentication for REST, while Modbus TCP is open for everybody? Shelly 3EM for example allows authentication to be disabled...GreetsDaniel

Brilliant! Will go with Modbus TCP.

Hi Daniel:So glad to know you and Solaranzeige.We introduce the basic auth when the customer visits the local web page of the energy meter.For some historical reason, this basic auth also exists in the REST API such as "monitorjson"Like this: https://www.iammeter.com/docs/integrate-with-PVOutputI will recommend my colleagues remove the basic auth in the API of monitorjson in the next upgrade.Before that,please use the modbus/tcp first. Compared to the REST API(refresh data every 6 seconds),

Please allow me two more questions on Modbus TCP...

(1)
I don't quite understand the data returned by 0022 (sum of forward energy) and 0024 (sum of reverse energy). So is it the number of kWh or the number of pulses? I am a bit confused by value=data/800. If I understand it correctly, I get the number of pulses and in order to get to kWh I have to devide it by 800!?

(2)
If I enable NEM, 0022 and 0024 are the net metered forward and reverse energies, right?

Hi:

Please see my replies



1 the value of the register`s address 0022 and 0024 represent the energy value(import from the grid or export to the grid), the unit is kWh directly, not the pulse count.
Take actual data for example,
0022:01 02
0023: 03 04

Then the hex value 0x01020304 divided by 800(decimal value) represents the forward energy kwh(grid consumption kWh )

16,909,060/800=21136kWh

In the same sense, the 0024 represents the reverse energy (exported energy to the grid) , the formula is the same as above.



2 Yes, if you enable the NEM, the 0022 and 0024 are the NEM result.



OK, got it. However, in my opinion, the registers do represent the pulse count. If it was kWh directly, you wouldn't have to devide by 800 ;) .

I would put the description as follows:
sum of forward/reverse energy in pulses (kWh=pulses/800)

Yes, it is correct
Sorry for my previous wrong description.
And the relationship between kWh and pulse count is
kwh=pulse count/800

OK, got it. However, in my opinion, the registers do represent the pulse count. If it was kWh directly, you wouldn't have to devide by 800 ;) .I would put the description as follows:sum of forward/reverse energy in pulses (kWh=pulses/800)

Is deviding by 800 also correct for the single phase WEM3080? On the label it says 3200imp/kWh. Or does this have nothing to do with it?

Does single phase WEM3080 use the same register addresses just without phase B and C?

Hi:

Sorry to corrct again.
Yes, for WEM3080, the coefficient is 3200, not 800 I mentioned before.
To avoiding mislead others, I have deleted my wrong replies above.

Is deviding by 800 also correct for the single phase WEM3080? On the label it says 3200imp/kWh. Or does this have nothing to do with it?

I think it would have been better to make energy registers Wh. Now you have to differentiate between WEM3080 and WEM3080T. You should at least add the "coefficient" to the documentation.


I just realized that the REST API goes via the IAMMETER cloud and not to the meter locally. In this case authentication actually makes sense. Is monitorjson kind of like the local REST API? Seems like this is without necessity to authenticate...

I will upgrade the firmware to use the same coefficient in both WEM3080 and WEM3080T.


I just realized that the REST API goes via the IAMMETER cloud and not to the meter locally.

Please tell me which API you are discussing, in my opinion,what we discussed is only about the "monitorjson" which is the API of local meter.

I think it would have been better to make energy registers Wh. Now you have to differentiate between WEM3080 and WEM3080T. You should at least add the "coefficient" to the documentation.I just realized that the REST API goes via the IAMMETER cloud and not to the meter locally. In this case authentication actually makes sense. Is monitorjson kind of like the local REST API? Seems like this is without necessity to authenticate...

Yes. I was talking about local monitorjson indeed and it would indeed be nice if it also worked without authentication, just like Modbus TCP.


I am currently thinking about writing a piece of software for the raspberry pi, which collects measurement data from other energy meters and uploads them to the IAMMETER monitoring platform. Suppose this API is the correct one for this, right? Guess it does not support uploading net totals though?

I agree with you,I will suggest my colleague remove the basic auth in the API of monitorjson.


I am currently thinking about writing a piece of software for the raspberry pi, which collects measurement data from other energy meters and uploads them to the IAMMETER monitoring platform. Suppose this API is the correct one for this, right? Guess it does not support uploading net totals though?

Thanks for your thoughts,I think this work would let more people know about IAMMETER.
In fact, this API also supports net energy metering, you just need to add NEM result in the tail of the datas array.
Like this  

{
	"version": "1.1",
	"mac":"B0F8932A2962",
	"SN": "59D3E0C2",
	"Datas": [
		[12, 20, 30, 44, 50],
		[10, 20, 30, 45, 50],
		[10, 20, 30, 46, 50],                [ NULL,NEM current,NEM active power,NEM forward energy, NEM revese energy]
	]
}

But if someone use other meters in the IAMMETER cloud(read the data of other meters by software and use this API to upload it into IAMMETER) , they needs to register a "testSN" like this
https://open.iammeter.com/doc/open/quickstart.html
we allow one email address can register one testSN now(just for the amateur, not a business ), but we do not know whether we will keep this policy all the time.
Because this limitation is not very strict(we can not judge amateur or business ), and too many testSN will also increase our service cost .So if the testSN exceeds a quantity, we may stop the register of this testSN.

Yes. I was talking about local monitorjson indeed and it would indeed be nice if it also worked without authentication, just like Modbus TCP.I am currently thinking about writing a piece of software for the raspberry pi, which collects measurement data from other energy meters and uploads them to the IAMMETER monitoring platform. Suppose this API is the correct one for this, right? Guess it does not support uploading net totals though?

OK. So I think I will solve my "problem" with a different approach. Here is the situation:

I have two cascaded meters. One is a DTSU666 for my solar system, which sits right at the feed point. It measures what goes into and comes out of the grid. Its primary function is for the inverter to meet the 70% feed-in rule in Germany. It is also used for charging a battery and switching some relays based on excess power.

Then I have the WEM3080T which measures household consumption but not the heat pump consumption which is only "seen" by the DTSU666.

I can collect the data from both meters via Modbus TCP. So I will use another piece of software for reading the values. What I want to do next is to calculate how much energy the heat pump took from the grid and how much from the PV solar system by executing the following math:

Import(DTSU666) - Import(WEM3080T) = grid energy usage of heat pump

Export(WEM3080T) - Export(DTSU666) = solar energy usage of heat pump

Looks like you are new here. Register for free, learn and contribute.