[{"content":"はじめに Raspberrypi 4B 8GBのリソースが余りまくっているので、Homebridgeを動かしてSwitctBotHubMiniと連携させつつ、moOdeやVolumioも簡易操作できるようにしたい。\nざっくり説明するとHomebridgeは、HomeKitに対応していないデバイスをプラグインなどで対応化させ、スイッチなどによる操作で制御できるようにするものです。\n1. Dockerインストール curl -sSL https://get.docker.com | sh\r現在のユーザ（管理者）をDockerグループに追加 sudo usermod -aG docker $USER\rdocker-composeをインストールして再起動する sudo apt -y install docker-compose sudo reboot\r2. Homebridge用のディレクトリを作り、設定ファイルを作成する mkdir ~/homebridge cd ~/homebridge\rdocker-compose.ymlを作成 vi docker-compose.yml\rdocker-compose.yml\rversion: \u0026#39;2\u0026#39; services: homebridge: image: oznu/homebridge:latest restart: always network_mode: host environment: - PGID=1000 - PUID=1000 - HOMEBRIDGE_CONFIG_UI=1 - HOMEBRIDGE_CONFIG_UI_PORT=8581 - TZ=Asia/Tokyo volumes: - ./homebridge:/homebridge logging: driver: json-file options: max-size: \u0026#34;10mb\u0026#34; max-file: \u0026#34;1\rconfig.jsonを作成 vi homebridge/config.json\rhomebridge/config.json\r{ \u0026#34;bridge\u0026#34;: { \u0026#34;name\u0026#34;: \u0026#34;Homebridge pi\u0026#34;, \u0026#34;username\u0026#34;: \u0026#34;0E:ED:B2:22:76:15\u0026#34;, \u0026#34;port\u0026#34;: 51826, \u0026#34;pin\u0026#34;: \u0026#34;123-45-678\u0026#34;, #8桁のpin番号、iPhoneなどから扱う番号 \u0026#34;bind\u0026#34;: [ \u0026#34;eth0\u0026#34;, #LANケーブル使用時 \u0026#34;wlan0\u0026#34; #Wi-Fi使用時 ] }, \u0026#34;platforms\u0026#34;: [ { \u0026#34;name\u0026#34;: \u0026#34;Config\u0026#34;, \u0026#34;port\u0026#34;: 8581, \u0026#34;platform\u0026#34;: \u0026#34;config\u0026#34; }, { \u0026#34;name\u0026#34;: \u0026#34;SwitchBot\u0026#34;, \u0026#34;credentials\u0026#34;: { \u0026#34;token\u0026#34;: \u0026#34;スイッチボット用トークン貼り付け\u0026#34;, \u0026#34;secret\u0026#34;: \u0026#34;スイッチボットシークレットコード貼り付け\u0026#34;, \u0026#34;notice\u0026#34;: \u0026#34;Keep your Token \u0026amp; Secret a secret!\u0026#34; }, \u0026#34;_bridge\u0026#34;: { \u0026#34;username\u0026#34;: \u0026#34;0E:24:BD:FE:C1:43\u0026#34;, \u0026#34;port\u0026#34;: 56709 }, \u0026#34;platform\u0026#34;: \u0026#34;SwitchBot\u0026#34; } ], \u0026#34;accessories\u0026#34;: [ { \u0026#34;accessory\u0026#34;: \u0026#34;CMD\u0026#34;, \u0026#34;name\u0026#34;: \u0026#34;Volumio\u0026#34;, \u0026#34;on_cmd\u0026#34;: \u0026#34;curl volumio.local/api/v1/commands/?cmd=play\u0026#34;, \u0026#34;off_cmd\u0026#34;: \u0026#34;curl volumio.local/api/v1/commands/?cmd=pause\u0026#34;, \u0026#34;_bridge\u0026#34;: { \u0026#34;username\u0026#34;: \u0026#34;0E:82:E6:B0:F4:1E\u0026#34;, \u0026#34;port\u0026#34;: 38019 } }, { \u0026#34;accessory\u0026#34;: \u0026#34;CMD\u0026#34;, \u0026#34;name\u0026#34;: \u0026#34;moOde\u0026#34;, \u0026#34;on_cmd\u0026#34;: \u0026#34;curl http://moode.local/command/?cmd=play\u0026#34;, \u0026#34;off_cmd\u0026#34;: \u0026#34;curl http://moode.local/command/?cmd=pause\u0026#34;, \u0026#34;_bridge\u0026#34;: { \u0026#34;username\u0026#34;: \u0026#34;0E:82:E6:B0:F4:1F\u0026#34;, \u0026#34;port\u0026#34;: 38020 } } ] }\rスイッチボット用トークンなどについてはググってくださいバージョンによって徐々にやり方が変わったりしているため……。\nHomebridge起動 docker-compose up -d\r3. Homebridge画面 ホスト名.local:8581　でPCからアクセスする\nうちの環境の場合moOdeをいれてホスト名をmoodeにしてあるのでhttp://moode.local:8581となる 最初にユーザ名、パスワードを設定する\nログインし直し、プラグインを入れる\nHomebridge SwitchBot\nHomebridge Cmd\nメイン画面にHomebridgeターミナルを表示させておくと、Node.jsのバージョンアップとかが簡単に行えて便利\nHomebridge上ターミナル\rhb-service update-node\rまとめ これで簡単な操作はHomebridge画面のアクセサリやiPhoneなどのホームアプリから可能になりました。\nなにかおかしいと思ったら端末をリブート、プラグイン系・Node.jsのアップデートをしてリブートすると大抵は直ります。\nそれにしても今のテーマだと何のコードか、何のファイルかがわかりにくい……。変えよかな。\n2026/05/24: 変えてある程度カスタマイズしました。\n","date":"2023-07-17T15:02:00+09:00","permalink":"/post/raspberrypi_memo_003/","title":"DockerでHomebridgeを動かす"},{"content":"Volumio編（記憶曖昧） 前提 RaspberryPiを4つ所持\n4B 8GB（遊び用）\n4B 8GB（moOde用）\nZero WH（Volumio用）\nZero2 W（遊び用, New）\n3つのDACを所持（基本部分は同じ）\nNFJ PCM5102A DAC (hifiberry-dac扱い)\nBit Trade One ADRSZDAC(PCM5122A) + ADRPM1801C (hifiberry-dacplus扱い)\nPimoroni AUDIO DAC SHIM (LINE-OUT)【PIM542】 (hifiberry-dac扱い)\n今回はサクッとRaspberrypi Zero WHとPimoroni AUDIO DAC SHIMの組み合わせで使用\nサブ用途です\nイメージファイルのDL Get Started | VolumioからRaspberry Pi用をDL\nRELEASE DATE: 25-06-2023\nVERSION: 3.512\nRaspberry pi Imager (1.7.5)にてSDカードに書き込む\n起動～その後一気に SDカードをRaspberrypiZeroに挿入し、DACも取付けて起動 しばらく待ってスマホ（iPhone）のWi-Fi設定を開く SSID:Volumioが出てきたら一旦しばし待つ 再度SSID:Volumio {79EB}みたいなVolumio + MACアドレスの一部？っぽいSSIDを選択 割愛するが、次へ次へと進み、DACをONにし、HiFiBerry DACを選択 無線LANのSSIDを選択し、パスフレーズを入力し進む 設定をすべて完了し、しばらくするとWiFiが無線LANの方を掴む これでLAN内でvolumio(ホスト名).localにてアクセスできる 寄り道 無線ルータのDHCPを利用するが、無線ルータにてラズパイのMACアドレスでIPを固定化すると初期化時とかに楽になる\nBonjour入ってない環境とかだとIP指定になる PCやスマホからアクセス 電源投入から約3分で使用できるようになる（Zeroは遅い）\nプレイバックオプションにて、ミキサータイプをソフトウェアに\n起動時の既定の音量を30程度に（耳やスピーカーがイカレないために）\nSource（情報源） 普通はNASを指定するが、あくまでもサブ用途（入眠用）なのでSDカード内に曲データを入れたい\n[ネットワーク] - [Volumio(ホスト名)] - [Internal Storage] （¥¥VOLUMIO¥Internal Storage¥）にMP3やらFLACやらのデータを好きに入れる\n豆知識 プラグインでタッチパネル表示させてみたが、Zero WHだと重すぎて耐えきれなかった\nvolumio(ホスト名).local/devにアクセスし、SSHを有効にできるがユーザ情報を変更するとプラグインのインストールなどでコケるので注意\nユーザ名: volumio\nパスワード: volumio\nmoOdeより、ラジオのジャンルの幅というか好みはVolumioのほうが好き\nどちらもurlが分かれば追加できるのでぶっちゃけどうでもいい PCM5122AなDACを使用する際はhifiberry-dacplusにし、\nalsamixer\rF6キーを押して [DAC]を選択\n上下キーでフィルターを変更可能\n変更を反映させるにはEscキーで戻り\n/usr/sbin/alsactl store sudo reboot\rmoOde編（記憶曖昧） 前提 RaspberryPi 4B 8GBに導入します イメージファイルのDL moodeaudio.orgからmoOde 8.3.3 (64-bit)をDL\nRaspberry pi Imager (1.7.5)にて下記をカスタマイズしてSDカードに書き込む\nホスト名 ユーザ名 ユーザパスワード SSID SSIDパスフレーズ Wi-Fi使用国 タイムゾーン 起動～その後一気に SDカードをRaspberrypi 4Bに挿入し、DACも取付けて起動 ローカル内のPC、スマホからアクセスして詳細設定を行う PCM5122AなDACはhifiberry-dacplusを選び、フィルターもそのまま選べる こちらもプレイバックオプションにて、ミキサータイプをソフトウェアに 音量を30程度に（耳やスピーカーがイカレないために） 音源はNASを指定したいが、メンテナンス中というかリプレース予定のため、USB To SSDでしのぐ事に… 豆知識 DACのポテンシャルを簡単に引き出したいならmoOde、UIの簡単さを優先するならVolumioといった感じ\nちなみに私はPi4B + NFJ PCM5102A DAC + moOdeのナチュラルフラット感が好みだったが、ディスプレイ（飾り）のこだわりでBit Trade One ADRSZDAC(PCM5122A) + ADRPM1801C　を使用する事に決定\nくっそてきと～な完成図 汚い写真で申し訳ない\n","date":"2023-07-12T17:42:23+09:00","permalink":"/post/raspberrypi_memo_002/","title":"ラズパイで音楽"},{"content":"はじめに この記事ではローカル環境で遊んでいるRaspberryPi等に施した設定などのログを残しておきます。\n主に自分用です。\nバックアップはとっているものの、いざというときに思い出せるように記録しておきます。\n初期設定 Vim関連を整える update, upgrade, remove vim-tiny, install vim-gtk fonts\nOSのバージョンや種類によっては不要かもしれないが一応\nsudo apt update sudo apt -y upgrade sudo apt -y dist-upgrade sudo apt remove -y --purge vim-common vim-tiny sudo apt install -y vim-gtk fcitx-mozc fonts-ipaexfont fonts-droid-fallback\r/etc/vim/vimrc に好みの設定を追記 sudo vi /etc/vim/vimrc\r/etc/vim/vimrc\rsyntax on set autoindent set expandtab set clipboard=unnamedplus set background=dark set number\rクリップボードが使えるようになっているか確認 vi --version | grep clipboard\rいったんキレイキレイする sudo apt -y autoremove \u0026amp;\u0026amp; sudo apt -y autoclean\rHDMI関連 TVに繋いでひとまず使用する場合 ホットプラグの有効化とHDMIグループをTV向けの最低限の設定に置換 sudo sed -i.bak -e \u0026#39;s/#hdmi_force_hotplug=1/hdmi_force_hotplug=1/g\u0026#39; -e \u0026#39;s/#hdmi_group=1/hdmi_group=0/g\u0026#39; /boot/config.txt\rPCモニタ、RaspberryPi対応モニタ(7inc等)を使用する場合 置換はせず、環境に合った設定を模索する 参照：Raspberry Pi Documentation - The config.txt file sudo vi /boot/config.txt\r/boot/config.txt\r# 例16:9 hdmi_group=2 hdmi_mode=14 or 16 or 85 hdmi_drive=2 #display_hdmi_rotate=3\r再起動してみて確認 sudo reboot\r","date":"2023-07-12T13:23:52+09:00","permalink":"/post/raspberrypi_memo_001/","title":"初期設定など"},{"content":"This article offers a sample of basic Markdown syntax that can be used in Hugo content files, also it shows whether basic HTML elements are decorated with CSS in a Hugo theme.\nHeadings The following HTML \u0026lt;h1\u0026gt;—\u0026lt;h6\u0026gt; elements represent six levels of section headings. \u0026lt;h1\u0026gt; is the highest section level while \u0026lt;h6\u0026gt; is the lowest.\nH1 H2 H3 H4 H5 H6 Paragraph Xerum, quo qui aut unt expliquam qui dolut labo. Aque venitatiusda cum, voluptionse latur sitiae dolessi aut parist aut dollo enim qui voluptate ma dolestendit peritin re plis aut quas inctum laceat est volestemque commosa as cus endigna tectur, offic to cor sequas etum rerum idem sintibus eiur? Quianimin porecus evelectur, cum que nis nust voloribus ratem aut omnimi, sitatur? Quiatem. Nam, omnis sum am facea corem alique molestrunt et eos evelece arcillit ut aut eos eos nus, sin conecerem erum fuga. Ri oditatquam, ad quibus unda veliamenimin cusam et facea ipsamus es exerum sitate dolores editium rerore eost, temped molorro ratiae volorro te reribus dolorer sperchicium faceata tiustia prat.\nItatur? Quiatae cullecum rem ent aut odis in re eossequodi nonsequ idebis ne sapicia is sinveli squiatum, core et que aut hariosam ex eat.\nBlockquotes The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a footer or cite element, and optionally with in-line changes such as annotations and abbreviations.\nBlockquote without attribution Tiam, ad mint andaepu dandae nostion secatur sequo quae. Note that you can use Markdown syntax within a blockquote.\nBlockquote with attribution Don\u0026rsquo;t communicate by sharing memory, share memory by communicating.\n— Rob Pike1\nTables Tables aren\u0026rsquo;t part of the core Markdown spec, but Hugo supports supports them out-of-the-box.\nName Age Bob 27 Alice 23 Inline Markdown within tables Italics Bold Code italics bold code A B C D E F Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus ultricies, sapien non euismod aliquam, dui ligula tincidunt odio, at accumsan nulla sapien eget ex. Proin eleifend dictum ipsum, non euismod ipsum pulvinar et. Vivamus sollicitudin, quam in pulvinar aliquam, metus elit pretium purus Proin sit amet velit nec enim imperdiet vehicula. Ut bibendum vestibulum quam, eu egestas turpis gravida nec Sed scelerisque nec turpis vel viverra. Vivamus vitae pretium sapien Code Blocks Code block with backticks \u0026lt;!doctype html\u0026gt; \u0026lt;html lang=\u0026#34;en\u0026#34;\u0026gt; \u0026lt;head\u0026gt; \u0026lt;meta charset=\u0026#34;utf-8\u0026#34;\u0026gt; \u0026lt;title\u0026gt;Example HTML5 Document\u0026lt;/title\u0026gt; \u0026lt;/head\u0026gt; \u0026lt;body\u0026gt; \u0026lt;p\u0026gt;Test\u0026lt;/p\u0026gt; \u0026lt;/body\u0026gt; \u0026lt;/html\u0026gt;\rCode block indented with four spaces \u0026lt;!doctype html\u0026gt; \u0026lt;html lang=\u0026quot;en\u0026quot;\u0026gt; \u0026lt;head\u0026gt; \u0026lt;meta charset=\u0026quot;utf-8\u0026quot;\u0026gt; \u0026lt;title\u0026gt;Example HTML5 Document\u0026lt;/title\u0026gt; \u0026lt;/head\u0026gt; \u0026lt;body\u0026gt; \u0026lt;p\u0026gt;Test\u0026lt;/p\u0026gt; \u0026lt;/body\u0026gt; \u0026lt;/html\u0026gt; Diff code block [dependencies.bevy] git = \u0026#34;https://github.com/bevyengine/bevy\u0026#34; rev = \u0026#34;11f52b8c72fc3a568e8bb4a4cd1f3eb025ac2e13\u0026#34; - features = [\u0026#34;dynamic\u0026#34;] + features = [\u0026#34;jpeg\u0026#34;, \u0026#34;dynamic\u0026#34;] One line code block \u0026lt;p\u0026gt;A paragraph\u0026lt;/p\u0026gt;\rList Types Ordered List First item Second item Third item Unordered List List item Another item And another item Nested list Fruit Apple Orange Banana Dairy Milk Cheese Other Elements — abbr, sub, sup, kbd, mark GIF is a bitmap image format.\nH2O\nXn + Yn = Zn\nPress CTRL + ALT + Delete to end the session.\nMost salamanders are nocturnal, and hunt for insects, worms, and other small creatures.\nThe above quote is excerpted from Rob Pike\u0026rsquo;s talk during Gopherfest, November 18, 2015.\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n","date":"2022-09-07T00:00:00Z","permalink":"/post/markdown-syntax-guide/","title":"Markdown Syntax Guide"}]