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.

BOOSTXL-EDUMKII: Light Sensor demo code "boostxl_edumkii_lightsensor_msp432p401r" in msp432p4_sdk_3_40_01_02 provides a constant output of 0 Lux

Part Number: BOOSTXL-EDUMKII
Other Parts Discussed in Thread: OPT3001, MSP432E401Y

Hi,

   I recently purchased the boosterpack BOOSTXL-EDUMKII. I have paired it with my MSP432P401R launchpad.

   When I run the light sensor demo which ships with the SDK "simplelink_msp432p4_sdk_3_40_01_02", from the folder "examples\nortos\MSP_EXP432P401R\demos\boostxl_edumkii_lightsensor_msp432p401r" I see a constant output of 0 Lux regardless of how much light I shine on the Sensor. I also noticed that it takes almost 15 seconds for the 0 value to show up on the LCD from the time I run the program.

   After setting up a GPIO toggle I see that most of those 15 seconds are consumed by Line #148 (OPT3001_getLux()). Specifically, most of this time is consumed by Line #94 in HAL_OPT3001.c (raw = I2C_read16(RESULT_REG)). And this always returns a 0x0000 regardless of how much ambient light is present. Is this normal?

   Curious if anyone else faced such an issue out of the box. Any help will be greatly appreciated.

thanks,

Sameer

  • Hi Sameer,

    FYI the MSP432P401R is not recommended for new designs, and support is only really offered for currently existing designs. If this is for a new development, you should consider changing to another option such as the MSP432E401Y or TM4C.

    That said, this sounds like it may be a hardware issue. Have you checked the I2C lines with an oscilloscope?  Make sure they are pulled high and the transaction looks normal.

    Best Regards,
    Brandon Fisher

  • Brandon,

       Thanks for the note about the MSP432P401R. This is not for a new design. And yes, I have looked at the I2C lines on a Logic Analyzer and they are pulled high and look okay. At this point I suspect a hardware issue with the boosterpack. Hooking up a different hardware to the Launchpad on the same I2C seems to work okay. That would rule out the launchpad hardware.

    Sameer

  • Hi Brandon,

      Based on the debugging I have done can you confirm that this is a hardware issue? I initiated a case with TI support to get an RMA for this board but they wanted me to ask you to confirm that this is a hardware issue before they can proceed any further.

    thanks,

    Sameer

  • Hi Sameer,

    Is the other booster pack you are hooking up also a BOOSTXL-EDUMKII? Is it running the same code as well? 

    I see you said the I2C lines look okay, seeing them pulled high at least means its not a pullup issue, but are you seeing traffic on the lines at all OPT3001_getLux() command is running? 

    Best Regards,
    Brandon Fisher

  • Yes, both booster packs are same (first one is 3 years old) running the same out of the box demo code.

    On the recently purchased boosterpack I see no data on the I2C lines when the OPT3001_getLux() command is running. The data line just stays high. Inside the OPT3001_getLux() function, the line "raw = I2C_read16(RESULT_REG)" takes about 15 seconds and then returns 0x0000 in the raw variable.

  • Hi Sameer,

    Both boards do not have the TMP006 device correct? That would be the only difference on the I2C bus that I could see between and old and new board. 

    If so, I would think its safe to say that it is probably a hardware issue on the new booster pack then. 

    Best Regards,
    Brandon Fisher