AnsweredAssumed Answered

ADE7816 xWATTHR problem and further Information

Question asked by Lyncheese on Jan 21, 2016
Latest reply on Mar 15, 2016 by Lyncheese



During my development using the ADE7816,  I had come across another problem.

For now, I'm able to read the Vrms and Irms value from register.

I want to add the feature to read the xWATTHR.


I have followed the steps according to the AN-1152 and the datasheet, here are my configuration :


1. LCYCMODE register filled with 0x0B

     I have a question here, from the datasheet LWATT have to bet set to bit 0,

     while the LVAR has to be set to bit 1, to enable it.

     Is this true ? It's quite weird to enable both register with different bit value.

     Is this mean, if I want to disable the LWATT and LVAR then I has to set it to 1 (LWATT) and 0 (LVAR) ?


2. LINECYC to 0x0258 (for 6 sec)


The result is :


1. With Line Accumulation Mode in off condition. I used 12W load. The result is 0xFFFFFFFE

2. With Line Accumulation Mode in on condition. Used the same load, I got 0xFFFFFF00

3. With no load attached, the xWATTHR didn't even reply the SPI communication, but when the load is existed

     It reply the SPI communication.


     My question regarding to this matter are :

     1. If that value is normal ? I can't use the formula from the AN-1152 for searching the Wh/LSB value,

         because I'm still doubt if the register value is right.

          (Answered ! : The fault is because of the CT direction)

     2. From the result number 3, is that also normal ? I thought that even without load existed,

          at least It will replied with 0x00000000.

     3. In Line Cycle Accumulation Mode, (in my case) the register value will be updated every 6 seconds.

          If I have a constant load, the xWATTHR should be at the same value every 6 seconds.

          My question is, which register I could use or is there anyway to retrieve the "total power consumption",

          which is keep increasing as long as the device is on and a load is existed ?

     4. I used BWATTHR and CWATTHR, the load is at B channel while the channel C left with no load.

          BWATTHR output the right value but, sometimes the CWATTHR output value become 0xFFFFFFFF.

          What might cause this ?

I'll be waiting for your reply.

Thank you.

Warm regards.