iPadからmicro:bitのBluetoothペアリングができなくなったときの対処方法

来月から1か月ほど、子ども向けのmicro:bitのワークショップを開催することになりました。プログラミングに使用するのはPCではなく、iPadなので、ちょっとだけ電波状態や都度手間がかかる点が不安要素ではあります。USB接続のほうが圧倒的に楽なのはわかっていますが、手持ちの端末はiPadだけなので仕方ありません。iPadのアプリでもPCと遜色なくプログラムは作れると思います。Bluetoothによるペアリング設定とダウンロード時に毎回Aボタン+Bボタン+resetボタンを押す必要があるのだけが少し面倒かもしれませんけど。

ペアリング作業は以下の動画の通りになります。(この動画はBluetoothのペアリング動画なんですが、USB給電をしているのでぱっと見では微妙に感じます)


Pairing and Flashing in iOS

そんな中で、ワークショップの生徒募集を行う際のデモ用のプログラムを作る必要が出てきました。いつも通り、事前設定としてBluetoothのペアリングを行います。よくやりなれた作業ではあるのですが、はまりました。何度やっても、ペアリングまで進んでいってくれません。デバイスが見つからないといった状況です。

f:id:ueponx:20201125004136p:plain

今回はそんなときのリカバリー方法をメモっておこうと思います。多分大量にmicro:bitを持っていて、ワークショップをするような人しか使わなさそうだけど。

とりあえず、状態の確認

最初はBluetoothのOFFでもされているのかなと思ったりもしたのですが、設定としてはONになっていました。

しかたないので、iPadを再起動してみました。それでも、うまくペアリングしてくれません。ここまでくるとかなりやばい感じで、micro:bitの故障も考えましたが、PCにUSBの有線接続を行うと問題なく認識、ダウンロードできています。この時点でmicro:bit側は故障していなかったのでほっとしました。

原因はiPad側?

あとはiPad側が疑われます。再起動は行っているのでアプリ側の問題ではなくOS側の処理に問題があるのかなと思いました。ただ、BluetoothはONになっているのでハード的なものではなく、ペアリング情報でのエラーではないかと疑いました。

そこで、iOSBluetoothの設定を確認してみます。

iPadの【設定アイコン】をタッチして、

f:id:ueponx:20201125004326p:plain

画面左側にある【Bluetooth】をタッチして設定画面に入ります。

f:id:ueponx:20201125004415p:plain

すると、画面右側に現在登録済みのBluetoothバイスが表示されていると思います。 登録済みのmicro:bitは【BBC micro:bit ほげほげ】と表示されているので 登録済みのmicro:bitをいったん削除していくことになります。デバイスの(i)のついたアイコンをクリックします。

f:id:ueponx:20201125004606p:plain

すると、【このデバイスの登録を削除】と表示されるので、削除を行います。

f:id:ueponx:20201125005023p:plain

この作業を繰り返して、登録されたmicro:bitの設定をすべて削除していきます。

すべてを削除した後に、再度micro:bitアプリから【Pair a new micro:bit】ボタンをタッチしてやり直すと治りました。

f:id:ueponx:20201125004750p:plain

おわりに

個人で20台とかmicro:bitを管理していると割とこういう事象にも当たる可能性があるということでのトラブルシューティングでした。新しいmicro:bitのVersion2もでたのに20台も旧バージョンをもっている…。新しいもの好きの自分としては複雑な気分ではあります。そのうち、新しい方も購入すると思いますけどね。

簡単なQRコードリダイレクターを作ってみた

2次元コード(以下QRコード)をリダイレクトしたい

f:id:ueponx:20201119013243p:plain

チラシや告知などでQRコードを画像として貼り付けたいと思うことはよくあります。ただ、たまにQRコードで指定されるURLが間違っていることがたまにでてきます。そんなとき紙面の場合には、修正ができないことが多くて非常に苦い思いをしてしまいます。加えて、長期間表示しているQRコードのリンク先の情報が古くなったので、リンク先を変更したいなどの要望が出ることもあります。(例えばマニュアルに印刷したりするとき)こういう場合にもなかなか修正できないという悩みがあります。

そこで、QRコードのリンク先をリダイレクトしてくれる中間サーバがあればよいのですが、そんな都合のよいサーバがクソ営業セクションでは生成・運用ができません。コストもかけられないのが現状です。

そこで、なにかいい手がないかと思いつくってみたのが今回の簡単QRコードリダイレクターになります。基本先ほど言ったようにQRコードで指定されるURLをリダイレクトするものになるので技術的には大したことはないのですが、作り方を知っているとわりと便利です。備忘のためにメモしておきます。

続きを読む

【RaspberryPi】PythonでSnowboyを利用して「GPIOを使用」と「設定した音声再生」を行う

前回はSnowboyを使って中二魂全開DXでない日輪刀を作りましたが、そのあたりの処理に関してはあまり触れていませんでした。 なので、久しぶりにpythonのコードについて記述していこうと思います。

記述は本家のSnowboyのサイトを参考にしています。

【参考】 snowboy.kitt.ai

【関連】 uepon.hatenadiary.com

uepon.hatenadiary.com

続きを読む

【RaspberryPi】Hot Word検出SnowboyでオリジナルのHot Wordを検知してみる(後編:オリジナルモデル作成)

サブタイトル:ハロウィンなんだし、おじさんも鬼殺隊に入って「全集中」したいんじゃ!

先日書いたエントリーの続きになります。前回のエントリでは、SnowboyRaspberryPi上から動作設定を行うというものでしたが、今回はHotwordの音声認識を自分好みのものに変更してみようと思います。これで、自由な呼びかけができるようになります。

参考

uepon.hatenadiary.com

続きを読む

【RaspberryPi】Hot Word検出SnowboyでオリジナルのHot Wordを検知してみる(前編:設定)

今回は、以前のエントリでも挑戦してみたいと思っていた、音声のホットワードを検知するSnowboyをインストールして、トリガー検知を行ってみたいと思います。

f:id:ueponx:20201026022104p:plain

使用するSnowboyは以下のような説明になっていました。

Snowboy is an highly customizable hotword detection engine that is embedded real-time and is always listening (even when off-line) compatible with Raspberry Pi, (Ubuntu) Linux, and Mac OS X.

日本語訳すると…

Snowboyは高度にカスタマイズ可能なホットワード検出エンジンであり、リアルタイムに組み込まれ、Raspberry Pi、(UbuntuLinux、およびMac OS Xと互換性があります(オフラインの場合でも)。

snowboy.kitt.ai

ホットワードとは、Google Homeでいえば「OK、Google」、Alexaでいえば「Alexa」というアレです。Snowboyを使用するとこのホットワードを任意のものに変換することでできるようにできます。あとオフラインでの認識ができるので、ネットワークを使わない分、高速に動作させることもできます。しかもRaspberryPiでも動作できるのでライトウエイトな実装でもあります。

以下のエントリーを参考にさせていただきました。リリースの時期が結構古いので動作環境も変わっているので、ちょっと注意が必要かもしれません。

qiita.com

nyabot.hatenablog.com

続きを読む