PiPower 5 ツール
PiPower 5 ツールは、PiPower 5 のコンパニオンソフトウェアです。
以下の機能を提供します:
安全なシャットダウンサポート
バッテリーおよび充電管理
電力監視
Web ダッシュボードへのアクセス
イベント通知
PiPower 5 は以下の状況で Raspberry Pi にシャットダウン要求を送信できます:
PiPower ボタンを 2 秒間長押ししたとき
バッテリーレベルが設定されたシャットダウン残量を下回ったとき
Raspberry Pi のシャットダウン完了後、PiPower 5 は自動的に電源を切断し、SD カードの破損や予期しない電源喪失の問題を防ぐことができます。
pipower5 ツールのインストール
PiPower 5 ツールをインストールします:
リポジトリをクローン:
git clone https://github.com/sunfounder/pipower5
ディレクトリに移動:
cd pipower5
インストーラーを実行:
sudo python3 install.py
プロンプトが表示されたら Raspberry Pi を再起動します。
コマンドリファレンス
pipower5 ツールは PiPower 5 のステータス情報と設定オプションへのアクセスを提供します。
たとえば、以下のコマンドは現在の PiPower 5 ステータスを表示します:
pipower5 -a
出力例:
Input:
voltage: 0 mV
current: 0 mA
power: 0.000 W
plugged in: False
Output:
voltage: 5296 mV
current: 452 mA
power: 2.394 W
Battery:
voltage: 8028 mV
current: -315 mA
power: -2.529 W
percentage: 91 %
source: 1 - Battery
charging: False
Internal:
shutdown request: 0 - NONE
power button: 0 - RELEASED
max charging current: 0 mA
default on: on
shutdown percentage: 10 %
これらの設定はニーズに合わせてカスタマイズできます。
pipower5 または pipower5 -h で手順を表示します。
usage: pipower5 [-h] [-v] [-c] [-drd [DATABASE_RETENTION_DAYS]]
[-dl [{debug,info,warning,error,critical}]] [-rd]
[-cp [CONFIG_PATH]] [-sp [SHUTDOWN_PERCENTAGE]] [-iv] [-ic]
[-ov] [-oc] [-bv] [-bc] [-bp] [-bs] [-ii] [-ichg] [-do] [-sr]
[-pb] [-cc] [-a] [-fv] [-pfs [POWER_FAILURE_SIMULATION]]
[-seo [SEND_EMAIL_ON]] [-set [SEND_EMAIL_TO]]
[-ss [SMTP_SERVER]] [-smp [SMTP_PORT]] [-se [SMTP_EMAIL]]
[-spw [SMTP_PASSWORD]] [-ssc [SMTP_SECURITY]] [-bzo [BUZZ_ON]]
[-bzv [BUZZER_VOLUME]] [-bzt [BUZZER_TEST]] [-u [{C,F}]]
[{start,stop}]
PiPower 5
positional arguments:
{start,stop} Command
options:
-h, --help show this help message and exit
-v, --version Show version
-c, --config Show config
-drd [DATABASE_RETENTION_DAYS], --database-retention-days [DATABASE_RETENTION_DAYS]
Database retention days
-dl [{debug,info,warning,error,critical}], --debug-level [{debug,info,warning,error,critical}]
Debug level
-rd, --remove-dashboard
Remove dashboard
-cp [CONFIG_PATH], --config-path [CONFIG_PATH]
Config path
-sp [SHUTDOWN_PERCENTAGE], --shutdown-percentage [SHUTDOWN_PERCENTAGE]
Set shutdown percentage, leave empty to read
-iv, --input-voltage Read input voltage
-ic, --input-current Read input current
-ov, --output-voltage
Read output voltage
-oc, --output-current
Read output current
-bv, --battery-voltage
Read battery voltage
-bc, --battery-current
Read battery current
-bp, --battery-percentage
Read battery percentage
-bs, --battery-source
Read battery source
-ii, --is-input-plugged_in
Read is input plugged in
-ichg, --is-charging Read is charging
-do, --default-on Read default on
-sr, --shutdown-request
Read shutdown request
-pb, --power-btn Read power button
-cc, --charging-current
Max charging current
-a, --all Show all status
-fv, --firmware PiPower5 firmware version
-pfs [POWER_FAILURE_SIMULATION], --power-failure-simulation [POWER_FAILURE_SIMULATION]
Power failure simulation
-seo [SEND_EMAIL_ON], --send-email-on [SEND_EMAIL_ON]
Send email on: ['battery_activated', 'low_battery',
'power_disconnected', 'power_restored',
'power_insufficient', 'battery_critical_shutdown',
'battery_voltage_critical_shutdown']
-set [SEND_EMAIL_TO], --send-email-to [SEND_EMAIL_TO]
Email address to send email to
-ss [SMTP_SERVER], --smtp-server [SMTP_SERVER]
SMTP server
-smp [SMTP_PORT], --smtp-port [SMTP_PORT]
SMTP port
-se [SMTP_EMAIL], --smtp-email [SMTP_EMAIL]
SMTP email
-spw [SMTP_PASSWORD], --smtp-password [SMTP_PASSWORD]
SMTP password
-ssc [SMTP_SECURITY], --smtp-security [SMTP_SECURITY]
SMTP security, 'none', 'ssl' or 'tls'
-bzo [BUZZ_ON], --buzz-on [BUZZ_ON]
Buzz on: ['battery_activated', 'low_battery',
'power_disconnected', 'power_restored',
'power_insufficient', 'battery_critical_shutdown',
'battery_voltage_critical_shutdown']
-bzv [BUZZER_VOLUME], --buzzer-volume [BUZZER_VOLUME]
Buzz volume
-bzt [BUZZER_TEST], --buzzer-test [BUZZER_TEST]
Test buzzer on selected event.
-u [{C,F}], --temperature-unit [{C,F}]
Temperature unit
注釈
pipower5.service の状態を変更するたびに、以下のコマンドを使用して設定変更を反映させる必要があります。
sudo systemctl restart pipower5.service
systemctl ツールを使用して pipower5 プログラムの状態を確認します。
sudo systemctl status pipower5.service
または、プログラムが生成したログファイルを確認します。
cat /opt/pipower5/log
Web ダッシュボード
PiPower 5 ツールには、監視と設定のための内蔵 Web ダッシュボードが含まれています。
ブラウザからダッシュボードにアクセスします:
http://<raspberry-pi-ip>:34001
ダッシュボードの機能:
バッテリー残量の監視
充電状態の監視
入力・出力電圧の監視
電流の監視
シャットダウン残量の設定
通知管理
Raspberry Pi デバイス情報
ダッシュボードから直接シャットダウン残量を設定することもできます:
ダッシュボードが不要な場合は、以下のコマンドで削除します:
pipower5 --remove-dashboard
安全なシャットダウン
PiPower 5 は Raspberry Pi システムの自動安全シャットダウン保護をサポートします。
シャットダウンのワークフロー:
シャットダウンがトリガーされる
-> Raspberry Pi が安全なシャットダウンを実行
-> PiPower 5 がシャットダウン完了を検出
-> PiPower 5 が自動的に電源を切断
これにより以下を防止します:
SD カードの破損
ファイルシステムの損傷
予期しない電源喪失の問題
Raspberry Pi シャットダウン後の電源オフ
Raspberry Pi のシャットダウン後に PiPower 5 が自動的に電源を切断できるようにするには、追加の設定が必要です。
Raspberry Pi 4 または 5 を使用している場合:
Raspberry Pi 3 以前を使用している場合:
設定後、PiPower 5 は自動的に Raspberry Pi のシャットダウンを検出し、安全に電源を切断できます。
サポートされている安全なシャットダウン方法:
PiPower ボタンを 2 秒間長押し
Raspberry Pi デスクトップメニューからシャットダウン
sudo shutdown nowの実行バッテリーレベルが設定されたシャットダウン残量を下回った場合の自動シャットダウン
シャットダウン残量の設定
自動シャットダウンをトリガーするバッテリー残量を設定できます。
例:
pipower5 -sp 30
これでシャットダウン閾値が 30% に設定されます。
次に以下のコマンドで設定変更を反映させます。
sudo systemctl restart pipower5.service
バッテリーレベルが 30% を下回ると、PiPower 5 は Raspberry Pi にシャットダウンを通知し、自動的に電源を切断します。
現在のシャットダウン残量を読み取ることもできます:
pipower5 -sp
Tip
高電力消費 (>3A) の Raspberry Pi 5 システムでは、シャットダウン残量を 100% に設定することを推奨します。
これにより、外部電源が切断されたときに Raspberry Pi がすぐにシャットダウンし、システムとストレージデバイスを保護できます。
電力監視
PiPower 5 は以下をリアルタイムで監視します:
バッテリー残量
充電状態
入力電圧
出力電圧
入力電流
出力電流
バッテリー電圧
バッテリー電流
便利なコマンド:
バッテリー残量の表示:
pipower5 -bp
充電状態の表示:
pipower5 -ichg
入力電圧の表示:
pipower5 -iv
すべてのステータス情報の表示:
pipower5 -a
全コマンドリスト:
pipower5 --help
通知
PiPower5 は以下を通じてイベント駆動型通知をサポートします:
ブザーアラート
メール通知
サポートされているイベント:
battery_activatedlow_batterypower_disconnectedpower_restoredpower_insufficientbattery_critical_shutdownbattery_voltage_critical_shutdown
注釈
pipower5.service の状態を変更するたびに、以下のコマンドを使用して設定変更を反映させる必要があります。
sudo systemctl restart pipower5.service
イベントの説明
battery_activatedバッテリーが電力供給を開始したときにトリガーされます。これは通常、外部電源が切断されたか、十分な電力を供給できない場合に発生します。
リセット条件: 外部電源が切断された後、自動的にリセットされます。
low_batteryバッテリー充電レベルが**設定されたシャットダウン閾値**を下回ったときに有効になります。
繰り返し: バッテリーがこの閾値を下回ったままの場合、10分ごとにイベントがトリガーされます。
リセット条件: バッテリー充電量が**シャットダウン閾値 + 5%** を超えるとリセットされます。
power_disconnected外部電源が切断されたときにトリガーされます。
リセット条件: 外部電源が復旧するとリセットされます。
power_restored外部電源が復旧したときにトリガーされます。
リセット条件: 外部電源が再び切断されるとリセットされます。
power_insufficient外部電源が不十分で、バッテリーが補助電力を供給する必要がある場合に発生します。
推奨アクション: 電源の定格出力を確認するか、設定された充電電力設定を確認してください。
リセット条件: 外部電源が切断されるとリセットされます。
battery_critical_shutdownバッテリー容量が極めて低いためにシステムがシャットダウンする直前にトリガーされます。
battery_voltage_critical_shutdownバッテリー電圧が危険閾値を下回り、シャットダウンにつながる場合にトリガーされます。
注意: このイベントは通常の使用ではめったにトリガーされません。通常、
low_batteryイベントが電圧がここまで低下する前にシャットダウンシーケンスを開始します。これは**フェイルセーフシャットダウンメカニズム**として機能します。
これらのイベントにより、PiPower5 はプロアクティブな警告 (低バッテリー、電力不足など) と重要な保護 (シャットダウントリガー) の両方を提供し、安定した動作とデータ保護を保証します。
ブザーアラート
PiPower5 は異なるシステムイベントに対するブザー通知をサポートします。
Web ダッシュボードまたはコマンドラインツールを通じてブザーアラートを設定できます。 設定されたイベントが発生すると、PiPower5 は対応するブザー音を再生します。
機能:
イベントベースのブザー通知
調整可能なブザー音量 (1~10)
イベント音のプレビュー
カスタムサウンドエフェクトのサポート
上級ユーザーはカスタムブザーサウンドエフェクトを作成することもできます。
設定ファイルを開きます:
/opt/pipower5/venv/lib/python3.11/site-packages/pipower5/config.json
pipower5_buzz_sequenceセクションを見つけます。各サウンドエフェクトは以下の形式で定義されます:
[action, duration]
ここで:
actionは以下が可能です:"A4"、"D3"、"C#4"などの音符周波数値 (整数)
無音を表す
"pause"
durationは再生時間 (ミリ秒)
メールアラート
PiPower5 は以下のような重要なシステムイベントに対するメール通知をサポートします:
低バッテリー
電源切断
電源復旧
重大なシャットダウンイベント
メール通知は Web ダッシュボードまたはコマンドラインツールを通じて設定できます。
メールアラートを使用するには SMTP サーバーが必要です。ほとんどのメールプロバイダーが SMTP サービスをサポートしています。
Gmail の場合、アプリパスワードを作成するだけです
その他のプロバイダーの場合、SMTP アクセスを有効にし、必要に応じて専用の SMTP パスワードを生成してください
設定前に以下の情報を準備してください:
SMTP サーバーアドレス (例:
smtp.gmail.com)SMTP ポート (例:
465または25)暗号化タイプ (
None/SSL/TLS)SMTP アカウント (通常はメールアドレス)
SMTP パスワード (アプリパスワードまたは SMTP パスワード)
SMTP 情報を入力した後、受信者メールアドレスを設定します。
注釈
PiPower5 は SMTP サーバーを使用してメールアカウントにログインし、通知を送信します。
同じメールアドレスを送信者と受信者の両方に使用できます。
セットアップ後、テストコマンドを使用して SMTP 接続とメール配信を確認します。