12.18 General Purpose I/O (GPIO) Configuration

The General Purpose I/O (GPIO) configuration parameter values allow the user to enable a preset hardware function on a specific pin. Use one byte to enable a specific hardware function on one pin (see the following tables). There are several hardware functions available on each GPIO pin; the value programmed into the memory location determines what hardware function is enabled on the given pin. By programming a value of zero, consider the GPIO pin as open, meaning no hardware function uses the pin. The pin is considered free; therefore, the external host MCU can use the applicable pin for digital I/O functions, or, if the pin is an ADC input, use the pin for ADC conversions. The external host MCU can achieve these functions by using the correct commands from the command set protocol.

Program any hardware function into the memory locations (see the following tables). However, there is one exception, some hardware functions only work in Auto Operation mode, while others work only in Manual Operation mode. Programming a value into memory, which is not available in one of the following tables below, can cause undefined device operation on the pin.
Note: All Microchip modules do not have the same pin count. For pins that are not available on a module, the value programmed into the memory location must always be zero. Undefined device operation occurs if this rule is not followed. For more details, refer to the BM70/71 Bluetooth® Low Energy (BLE) Module Data Sheet (DS60001372).
Table 12-39. GPIO P1_2 Parameter Table
ParameterValueParameter DescriptionLength
0x6E0xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
1 byte
Table 12-40. GPIO P1_3 Parameter Table
ParameterValueParameter DescriptionLength
0x6F0xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
1 byte
Table 12-41. GPIO P1_6 Parameter Table
ParameterValueParameter DescriptionLength
0x700xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM70 module. If the user chooses the BM70 module, this memory location representing GPIO P1_6 must be set to zero.
1 byte
Table 12-42. GPIO P1_7 Parameter Table
ParameterValueParameter DescriptionLength
0x710xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM70 module. If the user chooses the BM70 module, this memory location representing GPIO P1_6 must be set to zero.
1 byte
Table 12-43. GPIO P3_6 Parameter Table
ParameterValueParameter DescriptionLength
0x720xXX
  • 0x00 – Disabled, pin is open
  • 0x01 – UART RTS (Implemented as flow control, the IS187x device uses this signal as RTR) indication
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: If the user enables the UART flow control, only allow the UART RTS function on this pin for both the BM70/71 modules.
1 byte
Table 12-44. GPIO P1_0 Parameter Table
ParameterValueParameter DescriptionLength
0x730xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM71 modules. If the user chooses the BM71 module, the memory location representing GPIO P1_0 must be set to zero.
1 byte
Table 12-45. GPIO P0_0 Parameter Table
ParameterValueParameter DescriptionLength
0x740xXX
  • 0x00 – Disabled, pin is open
  • 0x01 – UART CTS (Implemented as flow control, the external host MCU uses this signal as CTR) indication
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: If the user enables UART flow control, only allow the UART CTS on this pin for both the BM70/71 modules.
1 byte
Table 12-46. GPIO P3_1 Parameter Table
ParameterValueParameter DescriptionLength
0x750xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM71 modules. If the user chooses the BM71 module, the memory location representing GPIO P3_1 must be set to zero.
1 byte
Table 12-47. GPIO P3_2 Parameter Table
ParameterValueParameter DescriptionLength
0x760xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM71 modules. If the user chooses the BM71 module, the memory location representing GPIO P3_2 must be set to zero.
1 byte
Table 12-48. GPIO P3_3 Parameter Table
ParameterValueParameter DescriptionLength
0x770xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM71 modules. If the user chooses the BM71 module, the memory location representing GPIO P3_3 must be set to zero.
1 byte
Table 12-49. GPIO P3_4 Parameter Table
ParameterValueParameter DescriptionLength
0x780xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM71 modules. If the user chooses the BM71 module, the memory location representing GPIO P3_4 must be set to zero.
1 byte
Table 12-50. GPIO P0_7 Parameter Table
ParameterValueParameter DescriptionLength
0x790xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM71 modules. If the user chooses the BM71 module, the memory location representing GPIO P0_7 must be set to zero.
1 byte
Table 12-51. GPIO P1_1 Parameter Table
ParameterValueParameter DescriptionLength
0x7A0xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM71 modules. If the user chooses the BM71 module, the memory location representing GPIO P1_1 must be set to zero.
1 byte
Table 12-52. GPIO P2_2 Parameter Table
ParameterValueParameter DescriptionLength
0x7B0xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM71 modules. If the user chooses the BM71 module, the memory location representing GPIO P2_2 must be set to zero.
1 byte
Table 12-53. GPIO P2_4 Parameter Table
ParameterValueParameter DescriptionLength
0x7C0xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM71 modules. If the user chooses the BM71 module, the memory location representing GPIO P2_4 must be set to zero.
1 byte
Table 12-54. GPIO P3_5 parameter table
ParameterValueParameter DescriptionLength
0x7D0xXX
  • 0x00 – Disabled, pin is open
  • 0x02 – Low battery indication
  • 0x03 – Link quality indication
  • 0x05 – Link drop indication
  • 0x06 – UART receive indication (Low-power mode enable)
  • 0x07 – Pairing key indication
  • 0x08 – Device active indication
  • 0x09 – Status 1 indication
  • 0x0A – Status 2 indication
Note: This pin is not available on the BM71 modules. If the user chooses the BM71 module, the memory location representing GPIO P3_5 must be set to zero.
1 byte