問題タブ [iobluetooth]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
macos - IOBluetooth + Arduino: writeSync:length: データの形式が正しくありませんか?
Mac から Bluetooth arduino ボードにデータを送信できません。
arduino は、Mac から送信される各バイトのランダムな値を確認するため、送信されるデータが何らかの方法で不正な形式になっているようです。
NSDataの作成
次の構造を持つ NSData オブジェクトを作成します。
バイト 0: uint8_t タグ バイト 1: uint8_t オペコード バイト 2: uint8_t ターミネータ
例: 0x01 0x20 0xff
電話をかける前に、データが不正な形式ではないことを確認します
データは常に問題ありません。
Arduinoシリアル読み取り
デバッグの目的で、次のことを行います。Arduino ボードが受信するすべてのバイトに対して、受信バイトを最初のバイトとして 32 バイトのデータを返し、その後に 30 個の 0x00、次にターミネータ バイトを返します。下記参照。
CoolTerm を使用してこれをテストしたところ、うまく機能しました。
IOBluetooth 読み取りデータ
Arduino の応答を受信したら、それをバッファに追加し、32 バイトのチャンクで解析します
ただし、最初のバイトである「タグ」は、何度試しても乱数のようです。ただし、このランダム タグは常に 16 で割り切れます。
ヘルプ!
ハードコードされた値を ardunio から mac に送信しようとしましたが、これらは完全に送信されたので、正しくないのは arduino の Serial.write メソッドではないことがわかりました。
なぜこれが起こっているのか、誰にも考えがありますか? そのせいで文字通り髪を抜いています。
macos - ホストコントローラーのアドレスを設定するための IOBluetooth (OSX) の API はありますか?
IOBluetooth APIを検索しましたが、ホスト コントローラーのアドレスを設定する方法が見つかりませんでした。このAPIを介して可能ですか?そうでない場合、別の回避策はありますか?
objective-c - Xcode ビルドの失敗「アーキテクチャ x86_64 の未定義シンボル」
Xcode 初心者の質問:
Xcode 4.6.3 は初めての経験です。
ペアリングされた BT デバイスを検索して NSLog に出力する、非常に単純なコンソール プログラムを作成しようとしています。
次のエラーでビルドされます。
狂ったように探しました。一般的な問題は、ヘッダー ファイルのみがインポートされ、リンカによって実装 (*.m ファイル) が見つからないファイルへの参照です。ただし、IOBluetooth ライブラリは、Foundation Framework のような標準フレームワークです。
上記のステートメントで何が欠けていますか?
また、32 ビット マシン用にビルドしようとしました (ビルドは再び失敗します)。これは明らかにリンカー エラーですが、それが何に関連するのかはわかりませんが、x86 と x64 の両方のアーキテクチャで IOBluetoothDevice の実装を見つける際に問題があることを除いて、ヘッダー ファイルは標準の組み込みフレームワークからのものであり、 IOブルートゥース?
参考までに、私のメインコード「main.m」は次のとおりです。
正しい方向への助けや指針をありがとう。
objective-c - IOBlueTooth に関する情報が必要
MAC 用の IOBlueTooth フレームワークについていくつか知っておく必要があります。
- このフレームワークは BTLE をサポートしていますか?
- iOS フレームワークの CoreBlueTooth との違いは何ですか?
- MAC OSX で BTLE をサポートするには、IOBlueTooth と CoreBlueTooth フレームワークの両方が必要ですか? もしあれば、サンプルアプリのリンクを共有してください。
また、IOBlueTooth フレームワークの適切なドキュメントまたは WWDC ビデオを教えてください。
objective-c - Bluetooth サービスが開始されていない、コンソールに次のように表示されます: sandboxd blued deny file-read-metadata
IOBluetooth を使用して自分自身を Bluetooth サービスとして登録し、着信 RFCOMM 接続を受信したときに自動起動するように設定するアプリがあります。
OS X Lionで動作していました。
ただし、Mavericks ではアプリが起動せず、コンソールを開くと次のように表示されます。
sandboxd が私をブロックしているようです。なんで?IOBluetooth API がこれを処理するべきではありませんか? どうすればこれを防ぐことができますか?
ios - BR-LE4.0-S2A の技術仕様はどこにありますか。つまり、サービスと特性の UUID のリストですか?
BLE デバイスと通信するための iOS アプリを開発しています。BR-LE4.0-S2A デバイスを入手しましたが、その仕様はわかりません。iPhone をデバイスとペアリングしたら、時間とシーケンス ID を BLE デバイスに書き込む必要があることだけはわかっています。書き込みが成功すると、BLE はいくつかのデータのブロードキャストを開始します。しかし、これらの値をどの特性 (UUID) に書き込む必要があるのか わかりません。BLE からのデータ ブロードキャストを開始する方法の特性 ID またはフローを知っている場合は、私に知らせてください。それは私にとって大きな助けになります。デバイスに接続し、デバイスからデバイス名を読み取ることができます。
Stack でこの種の質問をすることができるかどうかわかりません。スタックは私が残した唯一の希望です。
macos - IOBluetooth が一部のサービスの特性を返さない
Bluetooth LE デバイスのサービスから特性を読み取ろうとしています。何らかの理由で、一部の特性について、 を呼び出した後-[CBPeripheralManager discoverCharacteristics:forService]
、peripheral:didDiscoverServices:
コールバックが 0 の特性を取得しています。このサービスの特性を読み取れるようにするための回避策はありますか?
Xcode 用のハードウェア IO ツールをインストールし、PacketLogger を実行すると、discoverServices 呼び出しが、開始ハンドル = 0x1a、終了ハンドルで 0x08 タイプ要求 (Bluetooth® コア仕様ボリューム 3、パート F、セクション 3.4.4.1) による読み取りを引き起こしていることが明らかです。 =0x1a、属性タイプ=0x2803。
Also, by defining the following class extensions to read the protected fields, it is apparent that the service that I’m interested in, 0x180a=Device Information, also has ATT handles too close to comfort: _startHandle=0x1a and _endHandle=0x1a.
By the way, when I read the device from LightBlue on an iPhone 4S, the service works fine, and I can read the 3 characteristics of this service.
I’m testing this on OSX 10.9 Mavericks with Apple Bluetooth Software Version: 4.2.0f6 12982. The device that I’m testing is a Livescribe 3.
Here is a table of the actual GATT handles, CBService handles, and UUIDs. It looks like having a 16-bit UUID after a 128-bit UUID messed up the table. Bluetooth 4.0 section 3.1 states that 16-bit UUID services “should” be grouped together for performance, but I don’t think they must.
- 0001–0004 0001–0004 uuid:1801
- 0005–0009 0005–0009 uuid:1800
- 0010–0019 0010–0019 uuid:128 bit UUID
- 001A–0020 001A–001A uuid:180a
- 0021–0023 missing uuid:180f
- 0024–002A 0021–0027 uuid:128 bit UUID
- 002E–0031 002B–002E uuid:128 bit UUID
bluetooth-lowenergy - ibeacon と sensortag は同じですか?
どちらもBluetoothスマートデバイスであることは知っています。両方を同じアプリケーションに使用できるかどうかを知る必要があります。そうでない場合、それらの共通点と相違点は何ですか?