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.

MSP430FR5739-EP: MSP430FR5739-EP: GPIO Issue at power On

Part Number: MSP430FR5739-EP
Other Parts Discussed in Thread: MSP430FR5739

Tool/software:

I got a strange issue on a GPIO of MSP430FR5739. The occurence is 

This issue is only on a few µC over more than 300 tested.

We use P1.3, P1.2 and P2.4 for 3 digital sensor, with 3 external pullup.

The issue is when there is a power On in some case the P1.3 (only the P1.3, the P1.2 and P2.4 worked well) read 0 and the sensor output is 1 (we do the same without the sensor, and the P1.3 is still 0 but on the oscilloscope we saw a good 3.3V).

We create a new code, very simple with only the clock configuration with a while(1) { read 3 sensors} and the problem is still there.

 This issue is only seen at initial state, because when the sensor is in use (if it switch from 1 with the problem: read 0, then 0 read 0, then 1 it reads 1!) the GPIO will works correctly.

I saw only one case on a MSP430FR5659: 

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/549717/msp430f5659-gpio-input-port-issue

with no answer.

I tried to put the GPIO on output low at init and then in input and it works.

Is it possible to a GPIO to be blocked at a powerup?

There is no problem on the PCB.

Regards

  • Hi

    I checked the Input/Output Schematics of P1.2 and P1.3 based on page 60-63 of data sheet.

    I think P1.2 and P1.3 are similar

    >> This issue is only seen at initial state, because when the sensor is in use (if it switch from 1 with the problem: read 0, then 0 read 0, then 1 it reads 1!) the GPIO will works correctly.

    Could you please explain more on "this issue only can be seen at initial state"?

    it means GPIO will read to "1” correct code after several times "0"?

    how long it takes to read to “1”?

    Thanks!

  • Hello. I'll try to be more precise.

    Without the sensor, there is only a pullup. So the GPIO is physically at 1 but the GPIO read 0 and it nevers turn to 1.

    With the sensor, if the GPIO is physically at 1 and we made a power OFF and then a Power ON the GPIO read 0 and it nevers turn to 1 except if the sensor send a 0 and then a 1.

    For me it seems to be a blocked GPIO and the polarization and current flow unlock the GPIO. 

    For exemple, if I put, in the initialization process the GPIO in output LOW and then in input it works well.

    Regards

  • Answer found on the errata Sheet !

    https://www.ti.com/lit/er/slaz392ah/slaz392ah.pdf p18 PORT26

    @TI  What is the µC proportion in a production batch?

    Details:

    PORT26  PORT Module

    Category Functional

    Function Incorrect values for P1.3 / P1.4 input pins during power-up

    Description If P1.3/P1.4 is pulled up externally to DVCC during power-up the logical HIGH value might not be read correct by the device (ZERO is read instead of ONE).

    Workaround

      1) Switch the P1.3/P1.4 Port to logical ZERO after power cycle by:

           a) Switch critical GPIO to output-low (with series resistance to limit current)

           or

           b) Remove external pull up connection to pull GPIO via internal pull-down

    OR

      2) Use different GPIOs (not P1.3 & P1.4)

    OR

      3) Change the polarity of the logical check in SW (enable internal pull-up resistor for the GPIO and pull the external pin to DVSS)

**Attention** This is a public forum