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.

PGA450-Q1: Distance measurement is zero and FIFO is full of zeros

Part Number: PGA450-Q1
Other Parts Discussed in Thread: PGA460, PGA460-Q1

Hello

We are having issues with distance measurement returning zero FIFO is full of zeros. Power cycling the PGA does not solve the issue.
Only solution to this issue we have found is reprograming the EEPROM.

We suspect that in some way the EEPROM is being reset to default values that causes FIFO to be filled with zeros that leads to a zero distance measurement.
Is there a sequence of events that could lead to the reset of the EEPROM?

Thanks,
Alex   

  • Hello Alex,

    Thanks for posting to the sensing forum! Just to mention we do not recommend using PGA460-Q1 for new designs instead of PGA450-Q1. PGA450 is quite old now and the PGA460 offers a couple of added benefits such a lower, added performance improvements, smaller size. But the main one is programming aspect of that device has been made much simpler than the PGA450.

    As far as EEPROM programming I would recommend to poll the EE_STATUS bit in EE_CTRL register for the programming status. If the bit is set then EEPROM could possibly be programmed to different values. If you suspect values being reloaded you can poll the RELOAD bit to see if this is ever being set to reload values from EEPROM.

    Keep in mind that you must wait for the BLANKING_TIMER value to expire before the FIFO RAM begins to be filled with values.

    Best,

    Isaac

  • Hello Isaac

    We are currently using UART connection from our microcontroller to the PGA, how can we poll the EE_STATUS or RELOAD bit?
    Could there be a sequence of events that could lead to the reset of the EEPROM? High temperature? A power spike? A pin held in the high position that can lead to this?

    The way we currently pull the FIFO RAM is only after receiving a distance measurement so the FIFP RAM is already full.

    Thanks,
    Alex

  • Hello Alex,

    To poll the two bits you would need to use UART to read the register status value of the EEPROMM Control Register (0xC0) this contains the two bits that you need to check the status of the EEPROM. 

    For EEPROM reset, it will only occur at the scenarios listed above and we have not had other instances that have cleared the EEPROM values. Of course this has only been tested to meet the limitations of the device so if you are getting temperature higher than the operating temp or voltage spikes higher than recommended operating ranges this has not been tested.

    Is the PGA450-Q1 UART bus responding at all during your collection of the FIFO RAM? My concern is if the FIFO RAM is not responding that could be why you are getting just zeroes.

    The other item that could be a problem is perhaps the clock synchronization, the PGA450-Q1 implements an internal free-running 500-kHz watchdog clock, and it monitors the internal 16MHz oscillator or external crystal depending on the CLK_SEL setting chosen. If this frequency is out of range then an internal reset is generated which resets the entire digital core of the device. All ESFRs revert back to the reset state.

    Best,

    Isaac