Errata Details

If the ATWINC Flash is marginally programmed, the ATWINC Flash corruption may occur where random Flash bytes can randomly show ‘0’ or ‘1’ logic upon Flash read. Marginal programming means that the ATWINC Flash was subject to an unstable voltage level on its VDDIO rail during the programming process. Its symptoms are as follows:
  • ATWINC part is unable to boot
  • ATWINC part is unable to start
  • ATWINC part is unable to complete initialization
  • ATWINC part hangs during run time due to fetching incorrect/incomplete instructions from the Flash

The ATWINC Flash is usually programmed during a firmware upgrade, which is done via a host MCU over SPI, host PC tools over I2C/serial bridge or built-in OTA. Additionally, the ATWINC firmware uses the Flash to save hashed AP credentials for fast reconnection.

Affected Versions

Fix Version

Work around

Follow either of the following two actions/recommendations:
  • The ATWINC 1.2.3+ firmware, driver and PC tools double program the Flash to strengthen the Flash cells electrical level and minimize or mitigate the impact of unstable VDDIO levels. To protect a working ATWINC part or to recover a marginally-programmed ATWINC part, upgrade to the 1.2.3+ firmware and driver. The firmware upgrade must be done using:
    • PC tools from 1.2.3+ release package
    • SPI Flash APIs from 1.2.3+ host driver
    Note: OTA does not protect a working part against a possible marginally-programmed Flash, nor does it recover a marginally-programmed part. This is a one-time action; OTA can be used later to update to other, newer versions of the ATWINC firmware.
  • Make sure that the ATWINC VDDIO that supplies the ATWINC Flash voltage is stable all the time within the recommended operating range: 2.7V – 3.6V (typical 3.3V).