hspble.dll
Version 1.0
Date 2026-04-15
Author IronHSP / hspble
目次 (6 グループ / 13 ページ)
hspble ― GATT
ble_characteristics
特定サービスの characteristic 一覧
指定サービスに属する GattCharacteristic を列挙し、UUID を LF
区切りで返します。ble_services → ble_characteristics の順に
呼ぶことで属性ツリーが取れます。
ble_services
GATT サービス一覧を取得
GetGattServicesAsync(Uncached) でサービスを列挙し、各 UUID を
小文字の 128bit 形式 ("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
で LF 区切りの文字列として var に格納します。
hspble ― GATT I/O
ble_read
characteristic を読み取る
GattCharacteristic::ReadValueAsync を同期実行し、取得したバイ
ト列を var_buf へ書き込みます。実際に書き込まれたバイト数は
var_len に int で返します。
ble_write
characteristic に書き込む
var_buf 先頭から len バイトを IBuffer に詰めて
WriteValueAsync(WriteWithResponse) で送信します。
hspble ― Notify
ble_notify_enable
Notify 購読を有効化
CCCD (Client Characteristic Configuration Descriptor) に Notify
を書き込み、ValueChanged イベントを登録して内部キューに溜め始め
ます。受信したデータは ble_notify_poll で取り出します。
ble_notify_poll
Notify キューから 1 件取り出す
指定 characteristic のキューから最古の 1 件を取り出して var_buf
と var_len に格納します。chr を空文字にした場合は任意の chr の
1 件を取ります。stat=1 で成功、stat=0 でキューが空。
hspble ― スキャン
ble_scan_poll
スキャン結果を 1 件取り出す
内部キューから 1 件取り出して引数の各変数に格納します。
stat=1 で取得成功、stat=0 でキューが空。
ble_scan_start
アドバタイズスキャン開始
BluetoothLEAdvertisementWatcher を Active モードで Start します。
受信したアドバタイズは内部キュー (最大 4096 件) に蓄積され、
ble_scan_poll で取り出します。
hspble ― 基本
ble_init
BLE サブシステム初期化
WinRT apartment (multi_threaded) は DllMain で自動初期化される
ので、この命令は内部状態フラグの ON のみを行います。プラグイン
を使う前に 1 回呼び出してください。
hspble ― 接続
ble_connect
BLE デバイスに接続
BluetoothLEDevice::FromBluetoothAddressAsync で接続を確立し、
内部スロット (最大 16) に格納します。var_handle に 0~15 の
デバイスハンドルが格納されます。負値はエラー。
ble_disconnect
BLE デバイスの切断
登録した ValueChanged イベントをすべて解除し、BluetoothLEDevice
オブジェクトを解放してスロットを空けます。