Raspberry Pi 3 Model Bの熱暴走
正直ハマった。
OpenMax ILを使ったffmpegエンコードを回しつつ無限ループさせるPythonプログラム動かしてたら、ラズパイがブルースクリーンになった。
結論
この方が書いた記事がとても参考になった。
が、室温25℃くらいでフル稼働数分でCPU温度が85℃超えてブルースクリーンになるなんて実用的ではないのでは…?
ということで、/boot/config.txtを編集してクロックダウンしました。
arm_freq = 1000 arm_freq_min = 600
経緯
ラズパイでカーオーディオ()を作り始めて、なぜかドライブレコーダー機能も付けようと頑張っていた所、ラズパイ3の音声出力からプチプチというノイズが乗るようになってきた。
その時、カメラから入力した映像をPython+OpenCVで処理させつつ、出力された動画ファイルをOpenMax ILを使ってffmpegを動かしていて、topを見るとPythonがCPUリソース100%台、ffmpegが200%~300%台使用していました。
そして、ラズパイでまさかのブルースクリーン。
カーネルパニックでもなくWindowsのようなブルースクリーンと違って、グラボ死にました的なブルースクリーン。
なんだこれ。
まず最初に疑ったのは、電源のUSBケーブルでした。
使用していたACアダプタが、「フル稼働検証済み」と謳って便利なスイッチ付きのやつで、そのUSBケーブルがやたら細いのが気になったので、試しにAmazonベーシックの太めのケーブルに交換してみた所、プチプチノイズは消えた。
が、再度ブルースクリーン。
別でフル稼働させている方のラズパイ3は、この現象が出ない。 (ちなみにこっちはAC100V電源→12V安定化電源→シガーソケット→シガーソケット型Quick Charge 3.0対応USBアダプタ)→ラズパイ3という構成)
じゃあ次はUSB電源を変えてみよう。
変わらず。
途方に暮れてブルースクリーンのまま放置しておいたら、HDMI出力信号が切れた。
でもラズパイの電源は入ったままっぽい。まるでPOSTエラー画面のような止まり方。
(勝手に再起動でもしてくれないかなと思いながら)またしばらく放置。
ケースに触れた時、妙に熱いことに気付いた。
別でフル稼働させている方は、自作(流用)の金属製ケース。
問題になっている方は「放熱?そんなの知らねーよw」と言わんばかりのおしゃれなプラスチックケース。
もしかして熱暴走…?
ブルースクリーンをよく見ると縦縞なノイズが乗っていて、確かにグラボが熱でやられた時の症状に似てる。
watch -n 1 vcgencmd measure_tempでCPU温度を監視。
いやっほう、85℃超えてるぜぃ!
てな感じで、結局プラスチック製のケースを外して動かしてみた所、80℃台うろうろしつつも、ブルースクリーンは逃れてるっぽい。
はい、熱暴走でした。
終わりに
先日、KSYさんからRaspberry Pi 3 Model B+が技適通ったとの発表がありました。
https://raspberry-pi.ksyic.com/news/page/nwp.id/75
こんな状態でクロック数が上がって本当に大丈夫なのかな…。
ていうかこんなんでラズパイカーオーディオ(仮)完成出来るのか…?
既に暖かい季節になってきて車内暑いんだけど真夏の車内耐えられるのか…???
以下引用
ラズパイ財団サイドからも、記事が上がりました。 "No, your Raspberry Pi 3 won't overheat in everyday use, says its creator" 「いいえ、通常使用ではラズベリーパイ3はオーバーヒートしない、創造者曰く」
http://www.zdnet.com/article/no-your-raspberry-pi-3-wont-overheat-in-everyday-use-says-its-creator/
いいえ、ラズベリーパイ3は85℃では停止しませんでした。
実際は87℃台まで上がっており、恐らく90℃で停止するのではないでしょうか。
上手く行けば焼きラズベリーパイが出来上がるでしょう。
ヘイ財団、(中指立てる)。