質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Bluetooth

Bluetoothとは短距離の間でデータを交換するための無線通信規格である。固定・モバイル両方のデバイスから、短波の電波送信を行うことで、高いセキュリティをもつパーソナルエリアネットワーク(PAN)を構築する。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

WPF

Windows Presentation Foundation (WPF) は、魅力的な外観のユーザー エクスペリエンスを持つ Windows クライアント アプリケーションを作成するための次世代プレゼンテーション システムです

Q&A

解決済

3回答

4493閲覧

BluetoothLEのアドバタイズアプリのテスト環境となるデバイスを探しています。

tride

総合スコア68

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Bluetooth

Bluetoothとは短距離の間でデータを交換するための無線通信規格である。固定・モバイル両方のデバイスから、短波の電波送信を行うことで、高いセキュリティをもつパーソナルエリアネットワーク(PAN)を構築する。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

WPF

Windows Presentation Foundation (WPF) は、魅力的な外観のユーザー エクスペリエンスを持つ Windows クライアント アプリケーションを作成するための次世代プレゼンテーション システムです

0グッド

0クリップ

投稿2021/06/02 13:00

編集2021/06/02 13:23

質問違いかもしれませんが、一応プログラム開発に関わるという事でこちらに質問させて頂きます。

趣味レベルではあるのですが、BluetoothLEを試してみたくてWindows10とスマホ(iOS 14.5.1/iPhone7/LightBlue)で以下のようなコードを書いてテストしています。
ですが、BluetoothLEAdvertisementWatcherでウォッチャーによる検出には成功しているにも関わらず、GattDeviceServicesResultのStatus がUnreachableとなってしまって取得に失敗してしまいます。(ペアリング済)

そこで、私なりに調べた所、以下URLのサイトでWindowsとスマホの環境がダメっぽいという事が分かりました。
なので、何かBluetoothLEのテストできるガジェットなどのデバイスがないかと探しているのですが、如何せん初めてのBluetoothLEという事もあって、何をどう探していいのか分からずに困っています。

最終的にはキャラクタリスティックUUIDを取得して値を取得/書き換えをしたいので、求める仕様としてはUUIDと値を任意に設定できるペリフェラルになれるデバイスであれば良いと思うのですが、何かお勧めとか知っている方おられませんでしょうか。
希望としては5000円未満が嬉しいところです。

<参考コード>

C#

1/* 省略 */ 2 3// BluetoothLEデバイス情報を取得 4BluetoothLEDevice device = 5 await BluetoothLEDevice.FromBluetoothAddressAsync(args.BluetoothAddress); 6 7// 対象のBluetoothLEのサービスを取得 8GattDeviceServicesResult servicesResult = 9 await device.GetGattServicesAsync(BluetoothCacheMode.Uncached); 10 11 12//サービスの受信判定 13if (servicesResult.Status == GattCommunicationStatus.Success) // ←ここでservicesResult.StatusがUnreachableになる 14{ 15 /* 省略 */ 16} 17/* 省略 */

<参考サイト>
URL:https://stackoverflow.com/questions/50441237/displaying-device-unreachable-after-running-bluetoothle-app-code-in-visual-stu

<構成>
セントラル:Windows10Pro (Bluetooth V5.0 USBドングル付き)
ペリフェラル:iOS 14.5.1(iPhone7/Bluetooth V4.2)
使ったアプリ:LightBlue

<開発環境>
OS:Windows10
IDE:Visual Studio 2019
言語:C#
プラットフォーム:WPF

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

様々な考え方があるとは思いますが、動作確認用のBLEペリフェラルの端末をお求めなのであれば、iBeaconなど確実にそれ用の端末として動く既成の製品をひとつ用意しておいた方が良いように思います。確認用の端末が原因不明に動かなくなると、問題の切り分けもしづらくなりますし、本末転倒になります。例えば以下は私がひとつ所有している製品ですが、

乾電池Beacon BVMCN1101AA B - Braveridge

取り扱い説明書を読むと分かるように、iBeaconのフォーマットにのっとってUUIDやその他のデータ項目を変更することができるものです。しかし製品の発売自体が2015年と古く、今はほとんど流通していないようです。言いたいことは、このような製品をひとつ持っておくと確実に動いて安心、と言うことです。

マイコンとしては例えば「RedBearLab BLE Nano」と言う製品があり、これも私は所有しているのですが、残念ながらこれも販売終了です。ARMのmbedのオンライン開発環境が使え、BLEペリフェラルの簡単なサンプルプログラムを書き込むことですぐに動作し、プログラマブルということでソフトの改造もし易く、使い易いものでした。

RedBearLab BLE Nanoキット V2--販売終了 - スイッチサイエンス

BLEで「ビーコン」と呼ばれるもの(ガジェット等)の多くはiBeaconのフォーマット仕様に則っていることが多く、そうであればAdvertisingパケットを簡単に拾うことができます。スマホのアプリでLightBlueやnRF/NordicのBluetooth関連ツールを使えば簡単に確認できるでしょう。

もちろん、BLEペリフェラルでの稼働実績、製作記事の多いArduinoやmbedなどのプロトタイピングのし易いマイコン製品を選べば製作に失敗するリスクも少ないでしょうから、それらから挑戦されることを否定するものでもありません。

投稿2021/06/02 15:53

dodox86

総合スコア9256

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tride
dodox86

2021/06/03 06:41

> iBeaconでも良かったんですね。知りませんでした。 はい。iBeaconはまぁ言うなればAppleのBluetooth LEの製品サービスをも含めた名前ですが、それに則って多くの製品で使われているようです。既知のフォーマットであるし、セントラル側のアプリも実装し易いからだと思います。 > 一応確認ですが、以下のような製品ですよね? そうですね。ご提示の2番の「ReUdo R1Beacon BLE4.0」は「技適取得済」と称しているので、そんな製品が良さそうです。「技適」を取得していない製品は日本での販売は許されているものの、購入して使う方が違法になりますので。 まぁ、以下のような救出策もありますが。 [「技適」なし端末、(2019年の)11月20日から届け出で最大180日間利用可能に 改正電波法施行] https://www.itmedia.co.jp/news/articles/1911/15/news122.html
Yoshi88

2021/06/03 07:17

>確実にそれ用の端末として動く既成の製品をひとつ用意しておいた方が良いように思います。 これは、まさに同感ですね。また、こんな製品があることを初めて知りました。情報ありがとうございます。
tride

2021/06/03 07:40

> iBeaconはまぁ言うなればAppleのBluetooth LEの製品サービスをも含めた名前ですが、 > それに則って多くの製品で使われているようです。 > 既知のフォーマットであるし、セントラル側のアプリも実装し易いからだと思います。 なるほど、そういう事だったんですね。別物だと頭から思っていたので、誤解していました。 ビーコンについても、探したものはv4とちょっと古いので、指定の製品のような類似品で探してみたいと思います。 技適の救済策も知らなかったので、情報をありがとうございました。
tride

2021/06/03 07:42

一番目的と合致したので、dodox86さんの回答をベストアンサーとさせていただきました。
guest

0

的外れな回答かもしれませんが....

Android アプリ

もし、Android 5.1以上※をお持ちで、
一般的なGattを使用されるのでしたら、AndroidアプリのnRF Connect (nordic semiconductor) というアプリでアドバタイズできます。
※Androidのバージョンが5.1以上必要だったと記憶しています
Andoroid 10で、当該アプリを軽く触った感じでは、カスタムでいろいろできそうです。

デバッグのためのスニフ

次の製品でSmartRF Packet Snifferを使用してアドバタイズ等のデバッグが可能です。
ただし、アドバタイズしているチャンネルを指定しないといけないので、
何度かペアリングしないと拾うことができないことがあるので、
かなりお困りでかつ、時間があるならば持っておいても損はないかと存じます。

https://www.tij.co.jp/tool/jp/CC2540EMK-USB

Windows のBLEについての情報

(未検証、2018年以前の情報)

色々状況が違うので、合致しないかもしれませんが、
過去の話ですが、Windows 10のとあるバージョン(忘れた)で、Disposeすると、
その後再ペアリングしないと通信できなくなるという現象を見たことがあります。
https://social.msdn.microsoft.com/Forums/sqlserver/en-US/e945ecb1-f1c1-43f3-a290-521a0d3c152f/ble-dispose-method-for-bluetoothledevice-gattdeviceservice-gattsession-classes-is-missing-from

Raspberry piを活用する

(未検証)
Raspberry pi でもペリフェラルとして動作させることができるようなので、個人的に試したいとは思っています。
http://dream-of-electric-cat.hatenablog.com/entry/2015/04/13/221940

投稿2021/06/02 18:11

testset

総合スコア223

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tride

2021/06/03 06:27

残念ながらAndroidは所有していないので検証はできませんが、今回の問題だとAndroidでも起こるようなので、今回は避けようと思います。 スニフについては、今一使い方と言いますか利便性がピンと来ていませんが、前向きに検討したいと思います。 Raspberry Piがペリフェラルとして動作させることができるのは、頭にありませんでした。 有力な候補として検討したいと思います。
guest

0

C# でゴリゴリ書けるようですし、多少はコストを払うとのことですので、
それでしたら、仕様がハッキリしないガジェットを探すより、ワンボードマイコンボードを手に入れるのが一番、確実な方法でしょうね。

でしたら、 Arudino (アルディーノ) というものがあります。

ウィキペディア Arudinoリンク内容

Google 検索結果 "arduino bluetooth ble"

互換機や仕様違いなど、選択肢が多岐にわたるため、価格帯は広いのですが、まあ 3,000 ~4,000 円 ぐらいあれば、大体のことはできます。

ざっと値段を調べるのでしたら、これら有名どころの店をのぞいてみると良いでしょう。

スイッチサイエンス

秋月電気通商

投稿2021/06/02 14:52

Yoshi88

総合スコア623

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tride

2021/06/03 06:30

先でtestset宛てに回答したRaspberry Piの対抗馬としてArudinoも検討に入れたいと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問