2 SPI is Not Functional

This section provides a list of questions to raise if the SPI communication is not working. If it is not possible to solve the issue with the guidance from this section, check the other sections or contact the technical support team.

  1. Is the part awake, not in the OFF mode?
    • Which wake source is used?
    • Is the wake source set to a fixed value or controlled from an external µC?
    • Describe the sequence that is used from the external µC
  2. Is the part really awake?
    • Is a voltage present at the DVCC pin?
    • Do you see the I/O initialization (a change of I/Os according to the EEPROM setting)?

    If the part is not awake, a communication via SPI is not possible. Therefore, it is necessary that the part will be awoken via one of the available sources (PC1, PC2, PC3, PC4, PC5, PB4 and PB7). The target voltage of 1.35V at the DVCC pin indicates an awake device.

  3. Is the Watch Dog Timer (WDT) used, and how is it configured?

    A WDT that is configured to a very short time might lead to the SPI not working. In the case of a reset caused by the WDT, this returns the part to the OFF mode if no valid wake source is present.

  4. Is the hardware SPI connection stable at the main µC?
  5. How is the SPI in the main µC defined?
  6. How is the SPI in the RF device (EEPROM setting) defined?

    The SPI can have various definitions. If the host and client devices are not defined in the same way, it is not possible to have a working communication.

  7. Is the SPI timing set according to the specification?
    • What are the timing values T0-T5 that are used?

      In case the timing exceeds the specification of the RF device, it is not possible to communicate via SPI. A slower timing is possible and will not generate any issues.

  8. Is the Sleep mode used in the RF part, and which one is selected?

    If a Sleep mode is used, it might be necessary to add the time T0 to the SPI timing to ensure that the part is awoken from sleep prior to the communication start.

  9. Is the pureRXMode selected in the EEPROM configuration, and is SPI activated?

    The pureRXMode that is available in the ATA578x receiver family has an option to disable the SPI. Once this is set, any further communication via SPI will no longer work until the EEPROM configuration is changed.

  10. Is a Flash application executed?
    • Is the SPI working without using the Flash application?

    Depending on the implementation of the Flash application, it might be possible that the SPI is not yet opened or closed by the user application. It is also possible that required interrupts are blocked or disabled. Therefore, it is recommended that the part be tested without the Flash software activated.

  11. Is an SPI command with a known response working, such as “Get Version ROM”?

    In case it is not known if the answer via SPI is valid or not, an SPI command with a known answer is helpful; either a known cell from EERPOM can be read or the ROM version of the device can be read if the part version is known.