VL53L1X - Boot states Ultra Lite Driver (ULD)
Hello
I open this thread as a continuation of this other one, which is very long. My problem is that the boot states I read with "VL53L1X_BootState" (0x02 and 0x03) do not match the documentation (0x00 and 0x01).
As John says in the aforementioned thread:
"The bootstate register spec is:
[1] firmware_first_range: FW first range status
[0] firmware_bootup: FW initial boot status, Set by FW after completing initial coldboot."
And as VL53L1X_api.h says:

In the above-mentioned thread, John suggests:
"I had problems with this register too. I think the documentation has it backwards.
So boot, read the register quickly, see what it reads a few millisec later, then range. With a little luck it will go from 0 to 2 to 3 after ranging."
I have done all of the above John said except ranging. This is my code (my code is located at the beginning of the FIRST thread of the program, so It is the first thing to be executed after the internal MCU initializations).

These are the values of the five calls to "VL53L1X_BootState()" :

Write: 52 00 e5
Read: 53 02
Write: 52 00 e5
Read: 53 02
Write: 52 00 e5
Read: 53 03
Write: 52 00 e5
Read: 53 03
Write: 52 00 e5
Read: 53 03
So, my questions are:
- Am I doing something wrong and that is why I get wrong boot states?
- If my code is correct, could it be that the documentation was wrong?
Maybe 0x02 = No booted and 0x03 = booted?
Regards
