Post Go back to editing

ADE9153A channel B mSure calibration

Category: Hardware
Product Number: ADE9153A

According to the ADE9153A datasheet, AN-1571 and UG-1247, one should be able to calibrate the B channel of the ADE9153A.
I've the ADE9153A shield as well as self-designed hardware.
Sadly a sanity check for channel B isn't possible on the shield, without cutting and adjusting the hardware.

The circuit in my design for channel B is in the screenshot below(CT is the current transformer).



So far I've been able to calibrate Channel A and the Voltage Channel without issues.

Before calibrating I check MS_STATUS_CURRENT and write 0 to BI_PGAGAIN.
If MS_STATUS_CURRENT is high I write 0x0000023 to MS_ACAL_CFG and read the contents of that register (to verify that it has 0x0000023 written).
After a 10 second delay I read MS_ACAL_BICERT which returns 0.

Afterwards I read MS_STATUS_IRQ, which always returns 0xd000 indicating "mSure is not detected" and that MS_READY is low.

When I skip the calibration I'm able to read the B channel measurement registers and scale the measurements by dividing by a constant for them to make sense.

I'd like to know if anyone else has been able use mSure on Channel B and whether I've made a mistake along the way (perhaps some config I missed?) Slight smile.

Logic analyzer capture from MS_STATUS_CURRENT read to MS_STATUS_IRQ read.

Reading MS_STATUS_CURRENT.



Writing 0x0000023 to MS_ACAL_CFG and reading it back.

Reading MS_ACAL_BICERT.

Reading REG_MS_STATUS_IRQ.

Stopping calibration.






  • Apologies for the delay, there seems to have been some problem with the notifications, is this still an issue that you need support with?

    Hopefully you were able to find a solution to your issue since you posted but if not, please let us know.

  • For anyone who may be having a similar issue, I would recommend reading the xxCC and xxCERT registers during the run, you should see the xxCC value converging to a stable value and the xxCERT getting smaller and smaller. If those registers aren't behaving in this fashion, likely something is wrong in hardware, either with the ADC input or how the MS signal is being routed through the sensor.