mirror of
https://github.com/pybricks/pybricks-code.git
synced 2026-09-12 17:45:22 +00:00
Add Device Information Service support
The Pybricks firmware now includes the BLE Device Information Service to provide firmware and Pybricks protocol versions. For now, checking that the service is present is enough to know that the firmware is up to date. But we will need to add additional checks as soon as the protocol is changed.
This commit is contained in:
+7
-3
@@ -58,7 +58,8 @@ export enum BleDeviceFailToConnectReasonType {
|
||||
NoBluetooth = 'ble.device.didFailToConnect.noBluetooth',
|
||||
Canceled = 'ble.device.didFailToConnect.canceled',
|
||||
NoGatt = 'ble.device.didFailToConnect.noGatt',
|
||||
NoService = 'ble.device.didFailToConnect.noService',
|
||||
NoDeviceInfoService = 'ble.device.didFailToConnect.noDeviceInfoService',
|
||||
NoPybricksService = 'ble.device.didFailToConnect.noPybricksService',
|
||||
Unknown = 'ble.device.didFailToConnect.unknown',
|
||||
}
|
||||
|
||||
@@ -74,7 +75,9 @@ export type BleDeviceFailToConnectCanceledReason = Reason<BleDeviceFailToConnect
|
||||
|
||||
export type BleDeviceFailToConnectNoGattReason = Reason<BleDeviceFailToConnectReasonType.NoGatt>;
|
||||
|
||||
export type BleDeviceFailToConnectNoServiceReason = Reason<BleDeviceFailToConnectReasonType.NoService>;
|
||||
export type BleDeviceFailToConnectNoDeviceInfoServiceReason = Reason<BleDeviceFailToConnectReasonType.NoDeviceInfoService>;
|
||||
|
||||
export type BleDeviceFailToConnectNoPybricksServiceReason = Reason<BleDeviceFailToConnectReasonType.NoPybricksService>;
|
||||
|
||||
export type BleDeviceFailToConnectUnknownReason = Reason<BleDeviceFailToConnectReasonType.Unknown> & {
|
||||
err: Error;
|
||||
@@ -85,7 +88,8 @@ export type BleDeviceDidFailToConnectReason =
|
||||
| BleDeviceFailToConnectNoBluetoothReason
|
||||
| BleDeviceFailToConnectCanceledReason
|
||||
| BleDeviceFailToConnectNoGattReason
|
||||
| BleDeviceFailToConnectNoServiceReason
|
||||
| BleDeviceFailToConnectNoDeviceInfoServiceReason
|
||||
| BleDeviceFailToConnectNoPybricksServiceReason
|
||||
| BleDeviceFailToConnectUnknownReason;
|
||||
|
||||
export type BleDeviceDidFailToConnectAction = Action<BleDeviceActionType.DidFailToConnect> &
|
||||
|
||||
Reference in New Issue
Block a user