Featured image of post 外部のシステムモニターの設定

外部のシステムモニターの設定

目次

概要

  • Windowsが重いと時に、重いのにいちいち新たにTask Managerを開くのは辛い
  • そこで、システム外部モニターのセットアップをし、Task Mangerを見える化する
  • モチベーションはCPUとGPUとメモリの使用量を外部モニターで常に把握できるようにする

前提

前提として、以下のモノを使用した。

  • Windows 11
  • Python 3.10.6
  • XuanFang 3.5
  • Nano tape(両面)
  • turing-smart-screen-python 3.3.4

NOTE:

  • ハードウェアとしてはXuanFang 3.5を購入して使用
  • Nano TapeはメインのPCモニターに張り付けるため、オプショナル

また、システムモニター用のソフトウェアはAIDA64ではなく、
無償かつOSSのturing-smart-screen-python(以下、スマスク)を使用した。

スマスク

PowerShellの起動の仕方

作業にはPowerShellを利用する。
スマスクの実行には管理者権限が必要なので、Windows MenuのRun as Administratorを押下してPowerShellを実行する。

PowerShellの管理者での起動の仕方

スマスクのインスコ

まず、Users以下にaida64というフォルダを作った。

1
2
3
4
5
6
7
PS C:\Users\mike> dir

    Directory: C:\Users\mike

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        12/15/2023  11:34 AM                aida64

NOTE:

  • 今回使うのはスマスクだが、便宜上形式的にaida64の名前の方がシステムモニターの為のソフトウエアと分かりやすい為、aida64としている

その後、Github(Releases · mathoudebine/turing-smart-screen-python)から3.3.4のzipファイルをDLし展開し、aida64配下に設置した。

展開後はフォルダ名をにappとした。
以下のような形になる。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
PS C:\Users\mike\aida64\app> dir

    Directory: C:\Users\mike\aida64\app


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        12/15/2023  11:31 AM                .github
d-----        12/15/2023  11:47 AM                .vscode
d-----        12/15/2023  11:31 AM                external
d-----        12/15/2023  12:16 PM                library
d-----        12/15/2023  11:31 AM                res
d-----        12/15/2023  11:31 AM                tools
-a----        12/15/2023  11:31 AM           1962 .gitignore
-a----        12/15/2023  11:31 AM            546 AUTHORS
-a----        12/15/2023  11:31 AM           3128 CODE_OF_CONDUCT.md
-a----        12/15/2023  12:25 PM           2165 config.yaml
-a----        12/15/2023  11:31 AM          17863 configure.py
-a----        12/15/2023  11:31 AM           8862 CONTRIBUTING.md
-a----        12/15/2023  11:50 AM             66 exe22.bat
-a----        12/15/2023  11:31 AM          35149 LICENSE
-a----        12/15/2023  12:35 PM           7650 log.log
-a----        12/15/2023  11:31 AM           9407 main.py
-a----        12/15/2023  11:31 AM          12712 README.md
-a----        12/15/2023  11:31 AM           1439 requirements.txt
-a----        12/15/2023  11:31 AM            394 SECURITY.md
-a----        12/15/2023  11:31 AM           8164 simple-program.py
-a----        12/15/2023  11:31 AM          10081 theme-editor.py

なお、RemoteからDLした共有ライブラリはロックされているので、ロックを外す必要がある。
以下のコマンドをexternal\LibreHardwareMonitorで実行する。

1
PS C:\Users\mike\aida64\app\external\LibreHardwareMonitor> dir *.dll | Unblock-File

依存のインストール

まずvenvを作る。

1
PS C:\Users\mike\aida64\app> python -m venv .venv

その後、環境をactivateする。

1
2
PS C:\Users\mike\aida64\app> .venv\Scripts\activate.ps1
(.venv) PS C:\Users\mike\aida64\app>

PythonのPathは以下であった。

1
2
3
4
(.venv) PS C:\Users\mike\aida64\app> where.exe python
C:\Users\mike\aida64\app\.venv\Scripts\python.exe
C:\Users\mike\AppData\Local\Programs\Python\Python310\python.exe
C:\Users\mike\AppData\Local\Microsoft\WindowsApps\python.exe

次に必要なパッケージをインストールする。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
(.venv) PS C:\Users\mike\aida64\app> pip install -r requirements.txt
Ignoring numpy: markers 'python_version < "3.9"' don't match your environment
Ignoring GPUtil: markers 'python_version >= "3.12"' don't match your environment
Ignoring pyamdgpuinfo: markers 'sys_platform == "linux" and python_version <= "3.12"' don't match your environment
Collecting Pillow~=10.1.0
  Downloading Pillow-10.1.0-cp310-cp310-win_amd64.whl (2.6 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.6/2.6 MB 18.4 MB/s eta 0:00:00
Collecting pyserial~=3.5
  Downloading pyserial-3.5-py2.py3-none-any.whl (90 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 90.6/90.6 kB ? eta 0:00:00
Collecting PyYAML~=6.0.1
  Downloading PyYAML-6.0.1-cp310-cp310-win_amd64.whl (145 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 145.3/145.3 kB 9.0 MB/s eta 0:00:00
Collecting psutil~=5.9.6
  Downloading psutil-5.9.6-cp37-abi3-win_amd64.whl (252 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 252.3/252.3 kB 15.1 MB/s eta 0:00:00
Collecting pystray~=0.19.5
  Downloading pystray-0.19.5-py2.py3-none-any.whl (49 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 49.1/49.1 kB ? eta 0:00:00
Collecting babel~=2.13.1
  Downloading Babel-2.13.1-py3-none-any.whl (10.1 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.1/10.1 MB 25.8 MB/s eta 0:00:00
Collecting ruamel.yaml~=0.18.5
  Downloading ruamel.yaml-0.18.5-py3-none-any.whl (116 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 116.4/116.4 kB ? eta 0:00:00
Collecting sv-ttk~=2.5.5
  Downloading sv_ttk-2.5.5-py3-none-any.whl (49 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 49.4/49.4 kB ? eta 0:00:00
Collecting numpy~=1.26.0
  Downloading numpy-1.26.2-cp310-cp310-win_amd64.whl (15.8 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 15.8/15.8 MB 23.3 MB/s eta 0:00:00
Collecting GPUtil~=1.4.0
  Downloading GPUtil-1.4.0.tar.gz (5.5 kB)
  Preparing metadata (setup.py) ... done
Collecting pyadl~=0.1
  Downloading pyadl-0.1.tar.gz (24 kB)
  Preparing metadata (setup.py) ... done
Collecting pythonnet~=3.0.3
  Downloading pythonnet-3.0.3-py3-none-any.whl (290 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 291.0/291.0 kB 17.5 MB/s eta 0:00:00
Collecting pywin32>=306
  Downloading pywin32-306-cp310-cp310-win_amd64.whl (9.2 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 9.2/9.2 MB 20.3 MB/s eta 0:00:00
Collecting six
  Downloading six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting ruamel.yaml.clib>=0.2.7
  Downloading ruamel.yaml.clib-0.2.8-cp310-cp310-win_amd64.whl (117 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 117.8/117.8 kB ? eta 0:00:00
Collecting clr-loader<0.3.0,>=0.2.6
  Downloading clr_loader-0.2.6-py3-none-any.whl (51 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 51.3/51.3 kB ? eta 0:00:00
Collecting cffi>=1.13
  Downloading cffi-1.16.0-cp310-cp310-win_amd64.whl (181 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 181.6/181.6 kB 10.7 MB/s eta 0:00:00
Collecting pycparser
  Downloading pycparser-2.21-py2.py3-none-any.whl (118 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 118.7/118.7 kB ? eta 0:00:00
Using legacy 'setup.py install' for GPUtil, since package 'wheel' is not installed.
Using legacy 'setup.py install' for pyadl, since package 'wheel' is not installed.
Installing collected packages: pywin32, pyserial, pyadl, GPUtil, sv-ttk, six, ruamel.yaml.clib, PyYAML, pycparser, psutil, Pillow, numpy, babel, ruamel.yaml, pystray, cffi, clr-loader, pythonnet
  Running setup.py install for pyadl ... done
  Running setup.py install for GPUtil ... done
Successfully installed GPUtil-1.4.0 Pillow-10.1.0 PyYAML-6.0.1 babel-2.13.1 cffi-1.16.0 clr-loader-0.2.6 numpy-1.26.2 psutil-5.9.6 pyadl-0.1 pycparser-2.21 pyserial-3.5 pystray-0.19.5 pythonnet-3.0.3 pywin32-306 ruamel.yaml-0.18.5 ruamel.yaml.clib-0.2.8 six-1.16.0 sv-ttk-2.5.5

[notice] A new release of pip available: 22.2.1 -> 23.3.1
[notice] To update, run: python.exe -m pip install --upgrade pip

スマスクの設定

次のコマンドで実行する。

1
(.venv) PS C:\Users\mike\aida64\app> python configure.py

すると以下のWindowが立ち上がるので、好きなThemeを設定する。
自分の環境は以下である。

Turning System Monitor Configuration

その後、Save Settingsを押下し、終了する。

スマスクの起動

まず外部モニターとPCを接続する。
その後、次のコマンドを実行する。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
(.venv) PS C:\Users\mike\aida64\app> python main.py

12/15/2023 2:10:04 PM [INFO] Loading theme Cyberpunk from res/themes/Cyberpunk/theme.yaml
12/15/2023 2:10:04 PM [DEBUG] HW revision: A
12/15/2023 2:10:04 PM [DEBUG] Auto detected COM port: COM3
12/15/2023 2:10:05 PM [DEBUG] Found LibreHardwareMonitorLib 0.9.2.0
12/15/2023 2:10:15 PM [INFO] Found CPU: AMD Ryzen 9 5900HX with Radeon Graphics
12/15/2023 2:10:15 PM [INFO] Found Memory: Generic Memory
12/15/2023 2:10:15 PM [INFO] Found AMD GPU: AMD Radeon(TM) Graphics
12/15/2023 2:10:15 PM [INFO] Found Storage: KXG60ZNV512G TOSHIBA
12/15/2023 2:10:15 PM [INFO] Found Storage: BUFFALO Portable HDD
12/15/2023 2:10:15 PM [INFO] Found Storage: WD My Passport 0829
12/15/2023 2:10:15 PM [INFO] Found Storage: SanDisk SDSSDH3 1T00
12/15/2023 2:10:15 PM [INFO] Found Network interface: Bluetooth Network Connection
12/15/2023 2:10:15 PM [INFO] Found Network interface: Ethernet
12/15/2023 2:10:15 PM [INFO] Found Network interface: Ethernet 4
12/15/2023 2:10:15 PM [INFO] Found Network interface: Local Area Connection* 10
12/15/2023 2:10:15 PM [INFO] Found Network interface: Local Area Connection* 9
12/15/2023 2:10:15 PM [INFO] Found Network interface: vEthernet (WSL (Hyper-V firewall))
12/15/2023 2:10:15 PM [INFO] Found Network interface: Wi-Fi
12/15/2023 2:10:15 PM [DEBUG] Using Python 3.10.6 (tags/v3.10.6:9c7b4bd, Aug  1 2022, 21:53:49) [MSC v.1932 64 bit (AMD64)]
12/15/2023 2:10:15 PM [INFO] Tray icon has been displayed
12/15/2023 2:10:15 PM [INFO] Display reset (COM port may change)...
12/15/2023 2:10:20 PM [DEBUG] Static COM port: COM3
12/15/2023 2:10:20 PM [DEBUG] HW sub-revision: SubRevision.USBMONITOR_3_5
12/15/2023 2:10:20 PM [DEBUG] Drawing Image: BACKGROUND
12/15/2023 2:10:20 PM [DEBUG] Bitmap res/themes/Cyberpunk/background.png is now loaded in the cache
12/15/2023 2:10:20 PM [DEBUG] Drawing Text: CPU_MODEL
12/15/2023 2:10:20 PM [DEBUG] Drawing Text: GPU_MODEL
12/15/2023 2:10:20 PM [DEBUG] Drawing Text: RAM_MODEL
12/15/2023 2:10:20 PM [DEBUG] Drawing Text: DISK_USED
12/15/2023 2:10:20 PM [DEBUG] Drawing Text: DISK_FREE
12/15/2023 2:10:20 PM [DEBUG] Found one supported GPU: AMD Radeon(TM) Graphics
12/15/2023 2:10:20 PM [WARNING] Your GPU temperature is not supported yet

5s程待ち、以下の様に外部モニターに画面が映ればOK。

モニターにシステムモニターを張り付けた例

上の写真では、Nano Tapeで外部モニターをメインのモニターに張り付けている。

自動起動設定

スタートアップから自動起動に設定する方法はTask Schedulerに設定する事。

次の画面の様に、Task Scheduler > Action > Create Taskから次のWizardに進み設定する。

Create Task > General

上の画面では次を設定した。

  • Name:
    • sumasuku
  • Run whether user is logged on or not:
    • Checked
  • Run with highest priviledges:
    • Checked

Create Task > Actions

上の画面では次を設定した。

  • Program / Script:
    • C:\Users\mike\aida64\app.venv\Scripts\python.exe
  • Add arguments:
    • main.py
  • Start in:
    • C:\Users\mike\aida64\app

Create Task > Triggers

上の画面では次を設定した。

  • Begin the task:
    • At log on

まとめ

  • 見える化する事によって不要な操作やストレスが減った
  • また、CyberpunkのThemeなのでテンションが上がる

参考文献

Built with Hugo
テーマ StackJimmy によって設計されています。