Post Go back to editing

ADE78xx: 0-Crossing for xIRMS registers


In the datasheet (, page 44), it states that it is recommended to "read the rms registers synchronous to the voltage zero crossings to ensure stability". It does however not state what kind of instability I should be expecting if I don't read at a 0-crossing. For the hardware solution I am using, I will not be able to handle an interrupt on every 0-crossing for all three phases.

Why would reading a xIRMS register at a random moment be a problem? How big is this instability? Are there any alternatives to reading at 0-crossings?

Thank you in advance,


  • The goal of reading  synchronous to zero cross is the read the same point in the waveform which intern is the same point in the ripple of the low pass filtered RMS output. you can use phase a zero cross to sync to all rms reading. This will be a more repeatable number. The ripple is quite low and may not cause any issue for you.  If you can't read synchronous to zero cross it is recommended to average a few readings read every few line cycles. 


  • Hi Dave, thank you for your answer! I was wondering if you could indicate the magnitude of the ripple for me? How much error should I expect (as an estimate) when reading the xIRMS registers? Is it a few LSB, a few 100s, or even more?

Reply Children