ΣSigmaStudio Ask AI Русский Log in

ADE7953 I2C problem writing to registers

Processors & DSP YarinAv Sep 21, 2022 00:00 1 replies Original on forum ↗
Subscribe
YarinAv Question
Sep 21, 2022 00:00

Hi.

some registers I am able to write successfully to, but some registers I am not, problem is I am getting ACK on the I2C bus in both cases.

for example in the beginning of the ADE7953 datasheet:

I've done that using our I2C ( using Nordic's chip ) and I am getting ACKS back from the ADE, when I am dumping the registers to the terminal I can see that these registers remain unchanged, therefore connected logic analyzer to the I2C bus:

for me it looked okay and we have a ADE7953 eval board so I connected the Logic analyzer to the I2C pins on the eval board and observe how the ADE7953 interface board writes to these registers for example for register 0xFE( the unlock register )

it appears that the interface board writes successfully to the eval board ?

but when I read back the register to validate:

using the ADE7953 evaluation software:

although on our production unit (not the val board ) with ADE7953 I am able to write successfully to the PGA registers (modifying the gain for current )

and I am able to use the DISNOLOAD register successfully too, but then again I am getting acks when writing to registers AP_NOLOAD and VAR_NOLOAD and when I read them I am getting the same values as if they were never changed ( default values )

this is ofc after disabling NOLOAD feature (using DISNOLOAD) and validating that DISNOLOAD is set before writing to these registers as noted in the datasheet here:

BR, yarin

pastedimage1663748672327v1.png
pastedimage1663748672327v1.png
pastedimage1663749127491v2.png
pastedimage1663749127491v2.png
pastedimage1663749357175v3.png
pastedimage1663749357175v3.png
pastedimage1663749435330v4.png
pastedimage1663749435330v4.png
pastedimage1663749472968v5.png
pastedimage1663749472968v5.png
pastedimage1663749775376v6.png
pastedimage1663749775376v6.png
YarinAv Reply
Sep 21, 2022 00:00

forget about the AP_NOLOAD and VAR_NOLOAD issues I think i found what I was doing wrong, but regarding the "REQUIRED REGISTER SETTING" that is still unsolved