def _irq()

in esp32-ble-device/ble/ble_uart_peripheral.py [0:0]


    def _irq(self, event, data):
        # Track connections so we can send notifications.
        if event == _IRQ_CENTRAL_CONNECT:
            conn_handle, _, _ = data
            self._connections.add(conn_handle)
            print('IRQ_CENTRAL_CONNECT RECEIVED: {}'.format(self._connections))
        
        elif event == _IRQ_CENTRAL_DISCONNECT:
            conn_handle, _, _ = data
            if conn_handle in self._connections:
                self._connections.remove(conn_handle)
            print('_IRQ_CENTRAL_DISCONNECT RECEIVED: {}'.format(self._connections))

            # Start advertising again to allow a new connection.
            self._advertise()

        elif event == _IRQ_GATTS_WRITE:
            conn_handle, value_handle = data
            if conn_handle in self._connections and value_handle == self._rx_handle:
                self._rx_buffer += self._ble.gatts_read(self._rx_handle)
                if self._handler:
                    self._handler()