This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello,
I am experiencing the very same problem:
I power the BQ35100 and read the Control Status, I get 0x2080.
Initialisation in complete so I send 00.14.04, and after 20 ms I send 00.72.36.
After 20 ms more, I ask for the Control Status and get 0x2080, again.
I2C bus clock frequency is 100 kHz.
I checked the communication with the scope and I saw nothing abnormal. Ack, Start, Restart and Stop are where they are expected to be.
What am I missing?
Thank you very much,
Fulvio
Fulvio,
The 0x0414 and 0x3672 need to be complete independent writes. If you are not issues a stop signal it will not work.
I suggest using bqStudio and clicking the 'unseal" button on the right and scope capture it to compare against what your system is sending.
Thanks,
Eric Vos
Thanks Eric,
yes, the STOP markers are there.
Precisely, what I am sending is:
Master: START, 0xAA
BQ35100: ACK
Master: 0x00
BQ35100: ACK
Master: 0x14
BQ35100: ACK
Master: 0x04
BQ35100: ACK
Master: STOP
And then the same for the second key:
Master: START, 0xAA
BQ35100: ACK
Master: 0x00
BQ35100: ACK
Master: 0x72
BQ35100: ACK
Master: 0x36
BQ35100: ACK
Master: STOP
Is that correct?
Tahnk you,
Fulvio
Should I switch to SEALED mode first?
I.e. FULL ACCESS --> SEALED --> UNSEALED
Kind regards,
Fulvio
Hi,
I have the same issue of yours.
I'm in SEALED mode (control status = 0x6080) so I send the unseal keys (0x1404 and 0x7236) but nothing happens. I think this is a timing issue, indeed in debbugging mode it works perfectly. I tried many delay between the two writes but I'm still stuck here.
Maybe this can help you ... and together we could solve the problem.
best regards,
Vincenzo
Hi Vincenzo,
in my case it was just that the allowed state transitions are not documented anywhere, so I had to discover it by myself that I had to move from FULL ACCESS to SEALED before to get into USEALED.
I used just 20 milliseconds delay between the two keys and it worked.
Regards,
Fulvio
Hi Fulvio,
thank you for your quick reply!
I tried with 20 milliseconds delay but did work neither. I tried a WHOLE SECOND delay beween two writes and it works fine. Honestly, I don't know why but maybe this request another topic on forum.
Regards,
Vincenzo
Both,
When the gauge receives an Unseal or Full Access attempt it will force a 4 second lockout. Sending the Seal command does not trigger the lockout.
In addition, the gauge must be sealed to go to unsealed and unsealed to go to full access.
Thanks,
Eric Vos
Thank you Eric,
is there any Documentation with DF access timing or something concerning this lockout ? I'm looking in TRM without success.
Regards,
Vincenzo
Looks weird...
Me too, I found such situation.
The device comes out of the power-on reset in SEALED, then I do some other thing, then switch to UNSEALED (and it's OK), then try to switch in FULL ACCESS but it does not work. The sequence is:
I did the same in other situations, now the code is merged with other operations and it does not work. I do not see the reason why, given the above Control Register's values.
Hi Fulvio,
I tried several timing between this "access" operation over DataFlash. Now, I have this behaviour:
After each operation I found 0x4080 and 0x2080, respectively.
So, for me it works GOOD
I also tried to remove the 1 SECOND delay between the two unseal key writes without success.
Regards,
Vincenzo.
Fulvio/Vincenzo,
As i read this thread back I do not see any remaining open questions. The latest one from Vincenzo says it is working well. Are there still open questions about this topic?
Thanks,
Eric Vos
Hello Eric,
well... actually no.
Anyway, we finally decided to do a laboratory calibration by means of the Battery Management Studio so I don't need to write calibration firmware by hand anymore. So the problem is skipped, not solved.
There are many technical documents, but why cannot a piece of information like this attached be found anywhere?
I mean, it took me three working days to discover that by myself, after searching for nonexistent problems on I2C interface and protocol...
By the way, also the Battery Management Studio and TI's website download are not working too. I'll open another thread for that.
Kind regards,
Fulvio