ブログ/こばさんの wakwak 山歩き

2017-04-04 ESP32 の Classic BT で Change_Local_Name が使えない?

ESP32 の Classic BT で Change_Local_Name が使えない?

| ESP32 の Classic BT で Change_Local_Name が使えない?を含むブックマーク

 201HW(Android 4.0.4 のため、Bluetooth LE に未対応)とペアリングさせたい(できれば最終的に SPP 接続したい)がためだけの目的で、Classic BT の勉強を開始しました。


 とはいえ、3月は年度末でバタバタしていて全く手を付けておらず、4月に入ってからようやく HCI Command の資料を斜め読みし始めた次第ですが、なんか急に頭が活性化し、今日ただちに Android 4.0.4 から Inquery したリストに ESP32 を出現させるところまで出来ました。 

参考にさせて頂いたサイト様

PIC16F1455http://www.yts.rdy.jp/pic/GB002/hcic.html
レガシー仕様https://www.bluetooth.com/ja-jp/specifications/adopted-specifications/legacy-specifications

順番コマンドHCI送信HCI受信
1リセット01 03 0c 0004 0e 04 05 03 0c 00
2BT ADDRの取得01 09 10 0004 0e 0a 05 09 10 00 xx xx 02 a4 ae 30
3スキャン有効化01 1a 0c 01 0104 0e 04 05 1a 0c 00

※メモ

 スキャン有効化で 01 じゃなくて 03 を指定すると、外から Inquery されたとき落ちる

 原因は分からない


※プログラムソースは中途半端なので、もうちょっとまとまってから貼ります。


http://dl.ftrans.etr.jp/?e60d2e0f096b4be9b3bcf6fe8e2a899ffd2c185b.jpg


 ちなみにデバイスクラス名を指定するとアイコンになって出てきましたが、ESP32 に相応しいクラス名は何だろう?と考え始めると夜も寝れなくなるので、とりあえず未指定。


 んで、本当は BT ADDR じゃなくて名前を通知させたかったので、ESP32という名前で端末名を登録しようと 01 13 0c 06 45 53 50 33 32 00 を送ったら 04 0e 04 05 13 0c 12 が戻ってきてしまいました。

(最後の 12 はパラメータエラーを示すステータスで、00 が戻らないといけないはず)


 うーん、なんで?

 端末名の登録に成功してる方おられませんかー?

野田篤司野田篤司 2017/04/25 22:59 ESP-WROOM-32のBluetooth Classic接続に一部成功しました。
接続後すぐに2〜3行でコアダンプしますように不安定ですが、一応SPP接続しました。
接続名も変更できているようです。

http://anoda.cocolog-nifty.com/mad/2017/04/esp-wroom-32blu.html

こばさんこばさん 2017/04/26 10:58 早速のぞきに行きます!