AI で何が作れるかを考え続けるブログ。

自己紹介はこちら →

発見

専用アプリなしで、缶バッジをMacから更新できる小型ディスプレイにした話

推し活用のデジタル缶バッジを、Macから画像送信できる端末に変える。個人AI工作の本質は、この小さな転用にある。

専用アプリなしで、缶バッジをMacから更新できる小型ディスプレイにした話
Zenn
https://zenn.dev/optimisuke/articles/7f4c2a9d1e6b30

うまいのは、缶バッジを缶バッジとして見ていないところ

今回見たのは、Adget Can-Badge というデジタル缶バッジを解析し、専用スマホアプリなしでMacから画像を送れるようにした記事だ。元記事では、Python の send_image.py から画像を送り、Mac側で Can-Badge 独自形式に変換し、Bleak 経由で BLE 送信している。

ぱっと見ると「ガジェットをハックした話」だ。でも二度見したのは、そこではない。いちばん良いのは、作者がこの製品を最初から“缶バッジ”として扱っていない点だ。

推し活用の小物を、小さな表示デバイスとして見ている。ここで用途が反転する。専用アプリで画像を送る商品ではなく、Macから状態を出せるかもしれない小型スクリーンとして見ている。Claude や Codex の進捗表示、タッチ操作による操作まで期待していたと書かれているが、試した結果かなり難しそうだったらしい。それでも、画像送信までは通している。

この落としどころがいい。全部を乗っ取るのではなく、本体のファームウェアは変えず、既存の BLE プロトコルだけを調べる。派手な魔改造ではなく、製品がもともと持つ通り道を、別の入口から使えるようにする。個人がAIを使ってモノを作る時、この“壊さず横から入る”感覚はかなり大事だ。

AIに投げた作業が、ちゃんと分解されている

記事で一番盗みたいのは、AIに全部丸投げしているように見えて、手順がかなり堅いところだ。

最初からAndroidアプリを完全解析しに行かない。まず BLE を観測して、GATT を見る。Notification から平文 JSON が見つかり、長さやチェックサムをPythonで確認する。次に、BLEスキャンだけでは画像の送り方が分からないので、Flutter製アプリの libapp.so を見る。静的解析で詰まったら、Android の Bluetooth HCI スヌープで実通信を見る。

最後が特にいい。正規アプリのパケットをMacから再送し、BLE経路が合っているか確認する。そのあと自作画像に差し替える。そこで JPEG の 4:2:0 と 4:4:4 の差まで絞り込み、正規アプリと同じ 4:4:4 にしたら成功した、という流れだ。

これはAIの使い方としてかなり現実的だ。AIに「この缶バッジをMac対応にして」と願うのではなく、観測、再送、差し替え、失敗箇所の絞り込みという階段を作っている。本人は、Bluetooth、Android、Flutter、逆コンパイル、スヌーピングは概要を知っている程度だったと書いている。ここが大きい。専門家でなくても、問題を小さく切ればAIと進められる。

自分ならたぶん、最初にアプリ解析へ突っ込んで疲れていた。この記事の強さは、知らない領域を“理解してから作る”のではなく、“触りながら理解の足場を増やす”順番にある。

専用形式を読めた瞬間、商品は素材になる

ファクトとして面白いのは、画像送信の中身がただのBLE通信ではなく、Can-Badge 独自形式だった点だ。IMB という36バイトの独自ヘッダがあり、画像サイズや幅・高さを持つ。画像は496バイトずつに分割され、各パケットに1バイトのチェックサムが付く。BLEの共通仕様ではなく、実通信から分かった製品固有の作法だと説明されている。

この情報が分かった瞬間、専用アプリ前提の商品が“素材”に変わる。アプリの画面から送るしかなかった画像を、Pythonから生成して流せるようになる。手元のCSV、イベント受付、作業ステータス、配信中のコメント、AIエージェントの進捗。そういうものを画像化して、バッジへ出せる可能性が生まれる。

もちろん、元記事ではAPKや生の通信ログは公開していない。自分で購入した機器と自分の端末、自分の通信だけを調べているとも明記している。この線引きは大事だ。ここを雑にすると、ただ危ない話になる。

個人制作の目線では、この“専用アプリの外に小さな通路を作る”発想はかなり応用が効く。既製品をゼロから作り直すのではなく、既製品の一部だけを自分の制作環境に引き込む。これなら中くらいの実装スキルでも、AIの助けを借りて現実のモノに届く。

売り物にするなら、ハック自体ではなく表示の型だ

この手の話は、読んだあとに「すごい」で終わりがちだ。でも作る側として考えるなら、売れるのは解析手順そのものではなく、その上に乗る表示の型だ。

たとえば地域イベントなら、スタッフ用の小さな案内バッジになる。教室なら、授業中の役割カードや、5分だけ動くミニ教材の表示端末になる。店舗なら、日替わりPOPや整理券状態を胸元で見せる小物になる。大きなサイネージを置くほどではない場所に、動的に変えられる小さな表示面をばらまける。

ここで大事なのは、「AIで缶バッジをハックできます」では弱いということだ。買う人はBLE解析にお金を払わない。払うとしたら、「イベント受付バッジ一式」「教室用ミニ表示教材」「スタッフ状態表示テンプレート」のように、すぐ使える名前のついた売り物だ。

今回の記事は、そこまで商品化している話ではない。けれど、自分にはかなり強い原型に見えた。AIが個人の手を伸ばすのは、巨大なアプリを一気に作る時だけではない。専用アプリに閉じた小さなガジェットを、自分の制作物の一部に変える。こういう地味な接続のほうが、仕事や店や教室には刺さる場面が多い。