2.1 Memory Programming

To flash a new firmware revision into the modules, the user needs to follow the command protocol as described in Commands. In general, the commands and responses for memory programming of the BM70/71 can be classified into three categories:

  • HCI Command packets
  • HCI-ISDAP Flash commands
  • HCI Event responses

To perform any memory programming operation, the user needs to follow the process flow in Figure 2-1 with respect to the command protocols. The steps are as follows:

  1. Enter the memory programming Mode – Set the module into the Flash programming mode. Set the P2_0 pin to ‘0’ via hardware. After entering the mode, in the next subsequent steps, the host uses the UART transport layer to communicate the HCI Commands and HCI-ISDAP Flash commands to read, write or erase data in the memory. For more details, see Firmware Files Overview.
  2. Connect to Flash – Using the HCI commands, the external host can connect to the Flash of the BM70/71. The HCI event responses from the BM70/71, the user can verify the successful connection established with the Flash.
  3. Flash operations – Using the HCI-ISDAP Flash commands, the user can perform read, write and erase operations on Flash.
  4. Disconnect from Flash – After the successful execution of flash memory operations, the external host needs to disconnect from the Flash by sending the relevant HCI commands to the BM70/71. The user can use the HCI event responses from the BM70/71 to verify the operation.

Connect to Flash

  • HCI Commands to connect
  • HCI Event response to verify success
Figure 2-1. Overview of Memory Programming Process