During the Initialization and configuration phase, the host has to send a signed and encrypted firmware to the WF200. In the FMAC driver, the firmware information is provided by the host through the following functions:
- sl_wfx_host_get_firmware_data() (function to be implemented by the host)
- sl_wfx_host_get_firmware_size() (function to be implemented by the host)
Depending on the host implementation, the firmware can be stored in different formats. It can be for example stored in a simple c array or be part of a more complex file system. The firmware download phase is handled through the sl_wfx_download_run_firmware() function. The latest WF200 firmware can be found on a public Github repository.
In addition to the actual WF200 firmware, the file contains a keyset, signature and hash to authenticate the firmware.