1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

古いWindows10タブレットを再活用!MagicMirror2を稼働してGoogleフォトフレームを作ろう!

Last updated at Posted at 2024-03-30

はじめに

([2024/04/13補足]インストール後の手順に誤りがありましたので、訂正致します。コメント欄でご指摘くださったとおり(@rabe さま、ありがとうございました!)、npm startで動かす場合、追加手順が必要になります。稼働手順をpm2経由のみに変更いたしました。ついでにタイトルも変えました(笑)

以前RaspberryPi+MagicMirror2で超簡単にGoogleフォトフレームをつくる を書きました。少し前に、ShigeZoneで売られていたSHARP Mebius Padを手に入れてしまい、MagicMirror2を稼働してみました。この機種はIntel ATOM Z3770 (Passmark:739)・4GBメモリですが、使用で困らない程度に動作します。

windows-mm2.jpg

このように、MagicMirror2稼働にはちょうどいいサイズ・性能の中古タブレットPCが入手しやすくなっています。そこで、それらタブレットにプレインストールされているWindows10でMagicMirror2をそれなりに動かすためのインストール手順をまとめてみました。

ここでは起動時にMagicMirror2が安定的に稼働することまでを記載しておりますので、その後の設定は、以前まとめた RaspberryPi+MagicMirror2で超簡単にGoogleフォトフレームをつくる をご確認ください。

手順の概要

  • MagicMirror2は、node.jsとPM2を使って稼働していることから、Windows 10 Proに以下手順でインストールすることで、RaspberryPiと同様の稼働環境にしています。ただし、一部シェルスクリプトが使われていることから、この部分は手作業で設定します。(Windows 10 Proにインストールしたので、Windows 10 Homeですと、手順の一部が異なる可能性があります)
  • MagicMirror2自身は、%USERPROFILE% (/Users/<ユーザー名>/)にインストールします。
  • MagicMirror2は、稼働すると画面を占有してしまいます。他のPCから、SSH経由でコマンドプロンプトを利用することを前提にしています。
  • Windowsは、バージョンや稼働環境によってビミョウに挙動が異なることから、質問を頂いてもお答えするのは難しいです。むしろ「この環境だと、ここが違うのでこのようにすると動くよ」的なコメントを記載頂けると、他の閲覧者が助かります!

Windows環境を整備する

OpenSSHを入れてリモートでコマンドプロンプト/ファイル転送できるようにする。

メンテナンスしやすいように、リモートでコマンドプロンプトとファイル転送が行えるように、OpenSSHをインストールします。

  • スタートメニューから、> 設定 >アプリ >アプリと機能 >オプション機能 >機能の追加 を選びます。
  • ここで「OpenSSHサーバー」を選んでインストールを行います。
  • インストール後、%ProgramData%\ssh\sshd_config の最後の以下2行をコメントアウトします。
# Match Group administrators
#       AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
  • コントロールパネルから、> 管理ツール >サービス で、「OpenSSH SSH Server」を「自動」にして、OpenSSHを起動時に実行するようにします。
    • /Users/<ユーザー名>/.ssh/ にauthorized_keysを用意した場合は、authorized_keysの Everyone 権限に読み取り権限が付加されますが、これがあると SSH 鍵認証が通らないため、この権限を削除しておきます。

これで、他のWindows PCのコマンドプロンプトなどから、

ssh <ユーザー名>@<コンピュータ名>

で、設定したPCのコマンドプロンプトを開くことができます。ファイル転送はWinSCP などのSCPクライアントも使えるようになります。

ロック画面を表示しないよう、windowsの設定を変更する

https://otona-life.com/2022/07/10/126547/ や、https://hirogura.com/2016/08/18/post-3982/ などを参考にして、サスペンドなどからの復帰時でも、ロック画面を表示せずにすぐにMagicMirror2が表示されるように設定します。

  • コントロールパネル > 電源オプション で、「スリープ」ボタンの動作を「なし」に設定します。
  • コントロールパネル > 管理ツール > コンピュータの管理 で、「ヒューマンインターフェイスデバイス」→「USB入力デバイス」→「プロパティ」→「電源の管理」→「電力の節約のために…」をOFFに設定します。

MagicMirror2に必要なツールをインストールします。

MagicMirror2をインストールする

  • 管理者権限でコマンドプロンプトを開きます。以下コマンドを順に実行します。
> cd %USERPROFILE%
> git clone https://github.com/MichMich/MagicMirror
> cd MagicMirror/
> npm run install-mm
  • Windows だと途中でインストールに失敗するので、以下を手動で実行します。
> cd fonts  && npm install && cd ..
> cd vendor && npm install && cd ..
> cd config && copy config.js.sample config.js && cd ..
  • %USERPROFILE%\MagicMirror\config\config.js を修正します。(localhostがIPv6アドレスの「::1」だと、うまく動かないことがあります。)
let config = {
	address: "localhost", 
⇒	address: "127.0.0.1", に変更します。
  • 正常にインストールできていれば、以下コマンドでMagicMirror2が起動します。
>  npm start
  • 無事に動いたら、[CTRL]+[C]で、いったんMagicMirror2を終了しておきます。
  • ** (2024/04/13修正) npm start での起動は、Installation & Usage の5a項目にある package.json の修正が必要です。修正を行うか、そのまま次の項目に進んでください。**

PM2をインストールする

node.jsで標準的に使われている管理ツール PM2で、MagicMirror2を自動実行できるようにします。

  • 管理者権限でコマンドプロンプトを開き、pm2をnpmコマンドでグローバルインストールします。
npm install -g pm2
cd %USERPROFILE%\MagicMirror\
pm2 init simple
  • 自動作成されたファイル「%USERPROFILE%\MagicMirror\ecosystem.config.js」を修正します。なお、ファイル内でフォルダパスを記載するときは、「\」ではなく「/」で区切ります。ファイル内で環境変数(%USERPROFILE%)は使えないので、フルパスを記載してください。
module.exports = {
  apps : [{
    name   : "MagicMirror",
    script : "node_modules/electron/cli.js",
    args   : "js/electron.js",
    watch  : ["config/config.js"] ,
    cwd    : "MagicMirrorのあるフォルダ(例:/Users/ユーザー名/MagicMirror)"
  }]
}
  • 変更したら、管理者権限でコマンドプロンプトを開き、以下を順に実行してPM2を設定します。
cd %USERPROFILE%
npm install pm2-windows-startup -g
cd MagicMirror
pm2 start
pm2 save
pm2-startup install
  • これで、PCの電源を入れると、MagicMirror2が自動的に起動するようになります。

MagicMirror2の起動と停止手順

  • MagicMirror2は、実行すると画面を占有してしまいます。MagicMirror2を一旦起動・停止する場合は、リモートでコマンドプロンプトを開き、以下コマンドで停止・実行します。
    • MagicMirror2を実行する⇒ pm2 start all
    • MagicMirror2を停止する⇒ pm2 stop all

PM2ログをローテートする手順

しばらく稼働するとPM2ログがたまってくるので、ログを適宜削除するように設定します。管理者権限でコマンドプロンプトを開き、以下を順に実行します。

  • インストール
    • pm2 install pm2-logrotate
  • 1つのログの最大サイズ(1Mバイト)を設定します。
    • pm2 set pm2-logrotate:max_size 1M
  • logを保持する数(8つ)
    • pm2 set pm2-logrotate:retain 8

PM2を定期的にリスタートする手順

以下に詳しいです。

cron_restart: '15 4 * * *',	//4:15に再起動

MagicMirror2のバージョンアップ手順

MagicMirror2は,だいたい3か月ごとにバージョンアップします。管理者権限でコマンドプロンプトを開き、以下手順で更新します。

pm2 stop all
cd MagicMirror
copy /y config\config.js config\config.js.update.bak
copy /y css\custom.css css\custom.css.update.bak
git pull
npm run install-mm
cd fonts  && npm install && cd ..
cd vendor && npm install && cd ..
cd ..
pause
pm2 start all

最後に

実際の環境設定やカスタマイズは、過去の記事 RaspberryPi+MagicMirror2で超簡単にGoogleフォトフレームをつくる をご確認ください。
なお、上記記事中でモジュールのインストールを行うときは、「cd ~/MagicMirror/」の部分を、windowsの表記「cd %USERPROFILE%\MagicMirror\」に置き換えてください。

1
0
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?