Using semaphore to ensure only one BluetoothGatt command at a time