obnizをBLE MIDI機器としてiPadとBLE接続するプログラムを
公式ドキュメントを参考に作成してみました。
以下のプログラムで、iPadにBLE接続するところまでは出来ました。
<!DOCTYPE html>
<!-- HTML Example -->
<html>
<head>
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<script src="https://unpkg.com/obniz@3.13.0/obniz.js"></script>
</head>
<body>
<script>
// Javascript Full Example
var obniz = new Obniz("OBNIZ_ID_HERE");
obniz.onconnect = async function () {
await obniz.ble.initWait();
obniz.ble.peripheral.onconnectionupdates = function(data){
if (data.status === "connected") {
console.log("connected from remote device ", data.address)
} else if (data.status === "disconnected") {
console.log("disconnected from remote device ", data.address)
}
};
var service = new obniz.ble.service({ uuid : "03b80e5a-ede8-4b33-a751-6ce34ec4c700" });
var characteristic = new obniz.ble.characteristic({ uuid : "7772e5db-3868-4112-a1a9-f2669d106bf3", data: [1, 2, 3]});
service.addCharacteristic(characteristic);
obniz.ble.peripheral.addService(service);
obniz.ble.advertisement.setAdvData(service.advData);
obniz.ble.advertisement.setScanRespData({
localName : "obMIDI",
});
obniz.ble.advertisement.start();
}
</script>
</body>
</html>
接続については、BLE Scannerというアプリを使って確認しています。
ブラウザの方のログには
Time Content
16:01:15 connected from remote device
78:1d:7e:c5:92:c7
16:01:30 disconnected from remote device
78:1d:7e:c5:92:c7
とありますので、BLE接続と切断が正常にできていることが確認できます。
しかし、いざ本命のGarage Bandに接続しようとすると、
未接続という最初の状態の表示から、何かに接続しようとしている表示が出たあと、また未接続の表示に戻ってしまいます。
正常にBLE接続された場合は、接続と表示がでるはずなのですが、出てきません。
iPad側に、obnizをBLE MIDI機器として認識してもらえてないのかなと思うのですが、方法が分からず困っています。
どなたかご存知の方はいらっしゃいますでしょうか。