たくさんの自由帳
Androidのお話
たくさんの自由帳
投稿日 : | 0 日前
文字数(だいたい) : 4442
どうもこんばんわ。
ハジラブ -Making*Lovers- 攻略しました。
桜子ちゃんが可愛かったです。無印版もやりたいと思います。
あと別にこのゲームに限った話じゃないけど他のヒロイン攻略するのしんどくなるやつわかる人いますかね?
好きな娘からやればいいと思いますがおすすめは初穂さんを最後にやるといいかも?
なんかBLU出来るらしいから買ったXiaomi Mi 11 Lite 5G
、この子Mi Remote
っていうプリインアプリで赤外線を送信して家電操作ができるんですね。
でもこのアプリ、シーリングライトが何故か用意されてません。
赤外線通信、懐かしい響きなんですかね?。スマホ世代だからわからん
(iモード?、着せ替えツール?、フルブラウザ?、ネットワーク暗証番号?、センター問い合わせ?、富士通のプライバシーモード?、パケ・ホーダイ?)
なんかUSBデバッグとは別にUSB経由のアプリインストールの設定があって、これSIMカード
刺さないとONに出来ないので注意。
ConsumerIrManager#hasIrEmitter()
がtrue
を返す端末
Xiaomi Mi 11 Lite 5G
を利用。33W充電めっちゃ早くて怖いまである。なまえ | あたい |
---|---|
端末 | Xiaomi Mi 11 Lite 5G |
言語 | Kotlin |
UI | Jetpack Compose |
Raspberry Pi | 2 Model B |
赤外線受信モジュール | OSRB38C9AA (秋月で買えた) |
UI作るのだるいので、Jetpack Composeを使います。
今回はNEC
のシーリングライトの赤外線パターンを取得したいと思います。NECって昔ゲーム作ってたってマジ?
Raspberry Piと赤外線受信モジュールをGPIOで接続して取得するんですが、残念ながらこの辺は詳しくないので先人に乗っかります。この辺詳しくなくても出来るので先人GJ
こんな感じの配列。本当はもっと長い。
赤外線のパターンが手に入ればいいので、Nature Remo
をお持ちの方は、Nature Remo 赤外線データ
とかで調べるとそれっぽいパターンを取得できるそうですよ(そもそも持ってたらこんな事する必要すらないけどな)
先人に乗っかります。ラズパイのセットアップは各自。ディスプレイつないで初期設定終わらせておいてね。
受光部を正面にした場合、右から「3.3V」「グラウンド」「データ」線をつなぎます。
+-+
|●|
+-+
|||
321
3. データ線 GPIO 18 (ピン番号12)
2. グラウンド ピン番号 9 (GNDならどこでもおk)
1. 3.3V ピン番号 1 (3.3Vならどこでもおk)
以下結線例です。
SSH接続ってのはラズパイにあるターミナル(Windowsでいうコマンドプロンプト)を他PCから操作するときに使うやつです。リモートデスクトップでコマンドプロンプト操作してるみたいな感じだと思う。
Raspberry Piにリモートで入ります。別にラズパイにつないだディスプレイとキーボードで操作してもいいんだけど、赤外線のパターンを母艦(開発環境があるPC)にコピーするのが面倒なのでリモートで入ります。
ところで母艦って死語?
なんか最近はディスプレイなしでもファイル作ってラズパイと有線LANで繋げば初回起動からSSHに入れるそうですね?
SSHの有効化は省略させてもらいます。ごめんね。TeraTerm
かPowerShellのssh
でラズパイのターミナル画面が出るところまで用意しておいてください。
Wi-Fiの場合もLANの場合もmDNS
?のおかげでホストの欄にpi@raspberrypi.local
って入れれば接続できます。固定IPにしていない場合でもわざわざ調べに行かなくていいのでとても便利。
ちなみに以下の画像は関係ないです。
黒い画面に入れていきます
sudo apt install pigpio python3-pigpio
sudo systemctl enable pigpiod.service
sudo systemctl start pigpiod
赤外線モジュールのデータ線をGPIO 18
に繋いだのでその旨を教えてあげます。
echo 'm 18 r pud 18 u' > /dev/pigpio
curl http://abyz.me.uk/rpi/pigpio/code/irrp_py.zip | zcat > irrp.py
先程ダウンロードしたプログラムを実行すると赤外線パターンを入手出来ます。
以下のコマンドを実行した後、リモコンを赤外線受信モジュールへ向けてボタンを押します。
python3 irrp.py -r -g18 -f codes light_on --no-confirm --post 130
成功するとOkey
まで出ます。
Recording
Press key for 'light_on'
Okay
赤外線パターンはcodes
というファイルに保存されます。
以下のコマンドを打ち込むと赤外線パターンを記載したファイルを見ることが出来ます。
cat codes
[
から]
で囲われてる数値を控えておきます。
画像の例では8953
から]
の前まで。以下例
8953, 4544, 463, 730, 463, 1730, 463, 1730, 463, 586, 549, 586, 549, 586, 463, 586, 463, 586, 463, 1730, 463, 1730, 549, 586, 463, 586, 463, 586, 549, 1730, 463, 730, 463, 1730, 549, 586, 463, 586, 463, 730, 463, 586, 463, 1730, 549, 1730, 463, 1730, 463, 586, 549, 586, 463, 586, 463, 586, 463, 586, 463, 730, 463, 1730, 463, 1730, 463, 1730, 463, 41143, 8953, 2224, 463
赤外線パターンの中身知りたい方はNECフォーマットだけですが
適当にまとめたのでどうぞ:赤外線のNECフォーマットまとめ?
別に見なくても分からなくても作れます。
赤外線のパターンを入れて送信できるか試せるアプリです。
ソースコード:https://github.com/takusan23/IrSenDroid
APKダウンロード:https://github.com/takusan23/IrSenDroid/releases/tag/1.0
適当にComposeプロジェクトを作成します。
できたら、赤外線を使うので権限をManifest
に書き足します。
IrSendTool.kt
を作成して、以下をコピペ
LIGHT_OFF_DATA
とLIGHT_ON_DATA
の配列は各自取得したパターンを入れてください。
使うときはこんな風に
これでXiaomi Mi 11 Lite 5G
があればシーリングライト操作し放題です。やったね。
赤外線送信付いてるのおもろいな。
休日終わるの早すぎな~~~