Raspberry Piカメラモジュールを使用しているときにENOSPCエラーが発生する原因は何ですか?


33

Raspberry Piカメラを使用しようとすると、以下のエラーメッセージが表示されます。

# raspistill -o /tmp/gate_now.jpg
mmal: mmal_vc_component_enable: failed to enable component: ENOSPC
mmal: camera component couldn't be enabled
mmal: main: Failed to create camera component
mmal: Failed to run camera app. Please check for firmware updates

これを調査すると、ENOSPCメッセージにつながる多くの理由があります。考えられる原因をカタログ化するために、ここで質問を作成すると思いました。


温度センサーも使用していますか?温度センサーを設定するときにmodprobeコマンドを実行すると、この問題が発生しました。参照してくださいgithub.com/raspberrypi/linux/issues/435
Anconia

OctoPi画像でもこの問題を取得: github.com/guysoft/OctoPi/issues/31
GuySoft

2019年であり、新しい回答を投稿することはできません(閉じられています)が、以前に「ps -ef」を使用して見つけるのに十分幸運だったraspimjpegをインストールしていました。「sudo pkill raspimjpeg」は問題を解決しました。
ギャビンシンプソン

回答:


19

カメラソフトウェアGitHubプロジェクトページに言及

エラー:ENOSPCが表示されました。カメラのGPUメモリが不足している可能性があります。/ boot /フォルダーのconfig.txtを確認します。gpu_memオプションは少なくとも128でなければなりません。

この問題は、モジュールが正しい順序でロードされていない場合、1-Wire(W1)モジュールのドライバーとの競合が原因でこのエラーが発生する可能性があることを示しています。

RPiフォーラムのこの投稿は、 1-Wireに使用されるピンをピン18に切り替えることで問題を解決できると述べています。

/boot/cmdline.txt:
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait bcm2708.w1_gpio_pin=18

2016年5月現在、GPU_MEM = 128では十分ではありません。128から144に増やすと、エラーはなくなりました。


gpio_memではなくgpu_memを意味すると思います。
tedder42

14

私はpiでモーションを使用し、ラスピスティルを実行したい場合は、モーションを停止する必要があります(これもカメラを使用して動きを検出します)。

pi@raspberrypi ~ $ sudo /etc/init.d/motion stop
[ ok ] Stopping motion detection daemon: motion.
pi@raspberrypi ~ $ /usr/bin/raspistill -o cam2.jpg
pi@raspberrypi ~ $ sudo /etc/init.d/motion start
[ ok ] Starting motion detection daemon: motion.

これは答えかもしれませんが、それは間違いなく改善されます。
ベックス

走っていたのは動きではありませんでしたが、カメラを使用する別のデーモンがあり、停止するとエラーが発生しなくなりました。
リチャードワイズマン

はい、カメラは1つのプロセスでしか制御できないようです。
schemacs

10

「通常の状況では、常に最先端のファームウェアとカーネルに到達するため、rpi-updateを実行する必要はありません。テストバージョンである可能性があるため、RPiを起動できなくなる可能性があります。」https://www.raspberrypi.org/forums/viewtopic.php?p=916911#p916911 rpi-updateのドキュメントで も、「Raspbianでも正当な理由がある場合にのみこれを使用する必要があります。これにより、最新の最先端を得ることができます。カーネル/ファームウェア。」

同じ問題がありました。ファームウェアの更新で解決しました。

sudo rpi-update

これで解決し、Raspicam 2.1を動作させるために必要だと思われました(更新前にRapicam 1.3を正常に使用しました)。更新によりから4.1.7-v7+にアップグレードさ4.9.25-v7+れ、新しいモデルが機能するようになりました。この場合、からGPIO_MEM=128に変更するGPIO_MEM=144必要はありませんでした。
nh2

9

同じ問題がありました。他の多くの投稿と比較すると、最も可能性の高い答えは、2つのプロセス/アプリケーションが同時にPiCamにアクセスしようとしているということです。これには、ffmpegストリーミング、モーション、raspivid、raspistillなどがあります。

私の0.02ドル


true :))ある程度の時間を失い、モーションプロセスがバックエンドにインストールされ、カメラへのアクセスを妨げていることを忘れました
-soField

2
またはoctoprint(私にとっては)
サラン

私はpicameraライブラリを利用するraspividとpythonスクリプトの両方を実行しようとしていました。彼らは一緒に走ることはできません
ダンテ

私も同じ間違いをしていましたが、他の投稿が私のファームウェア、distパッケージなどの更新に役立ちましたsudo service motion stop。そして、カメラは再び動き始めました。
アミット・レイ

私の状況と解決策も提供します。picameraPythonスクリプトをインポートしましたが、機能していなかったためraspistill、代わりにスクリプト内のコマンドライン呼び出しから使用することにしました。私はimport picameraそれを使用する前にカメラリソースを占有していたので、削除しませんでしたraspistill
キンバリーW

6

私は最近、ENOSPECエラーの同じ問題を経験しました。私の場合、カメラをPiCamハウジングに入れるまで、すべてが完璧に動作していました。このハウジングが(PiCamera用に設計されていても)カムとボード間のコネクタが緩んでいる限り、チップを押すことがわかりました。それを元に戻すことで、私の問題は解決しました。コネクタが適切に配置されているかどうかを確認するのは簡単ではありません。

これは通常のケースではないでしょうが、最初の投稿が示唆するように、これはこのエラーの考えられる原因のカタログを強化するはずです。


2

私は(経由でファームウェアを更新していなかったので、私は同じエラーメッセージを持っていたsudo rpi-updateの後を介してカメラを有効にしますraspi-config。私はすでに数日前にファームウェアを更新していましたが、それで十分だと思いましたが、カメラが当時有効にされていなかったので、助けにはなりませんでした。



1

PI CAMERA 2.1を搭載したPI3B v1.2で最後のRASPBIAN STRETCH LITE(9.4-2018-06-27)で試しましたが、すべて完全にアップグレードされました(apt-get upgrade)

次のように、このコマンドが「detected = 1」のカメラを検出しない場合:

pi@raspberrypi:~ $ vcgencmd get_camera
supported=1 detected=1

次に、接続の問題があります。ケーブルの両方向がピンに対して良好な側にあるかどうかを確認します(もちろん、同じサイズの「ディスプレイ」バスではなく、「カメラ」バスに接続します)。

(もちろん、raspi-configでカメラインターフェイスを有効にして再起動した後)

うまくいかなかった場合、通常はカメラのハードウェアの問題であり、簡単なオプションはカメラを新しいものに変更することです。

detected = 1の場合、raspistillを使用しようとすると次のメッセージが表示されます。

pi@raspberrypi:~ $ raspistill -o test.jpg
mmal: mmal_vc_component_enable: failed to enable component: ENOSPC
mmal: camera component couldn't be enabled
mmal: main: Failed to create camera component
mmal: Failed to run camera app. Please check for firmware updates

接続は問題ありませんが、確かに問題はカメラのハードウェアの問題であり、カメラを新しいものに交換する必要があります。それは欠陥のあるカメラであるため、それを解決しようとして時間を無駄にしないでください。新しいものを入手した場合、それは機能します。


それでも、カメラが機能していないとは言えません。これらの問題はすべてありましたが、http:// {my ip}:8081 /?action = streamを使用してライブストリーミングを実行したとき、機能していました。これは、raspimjpegが実行中であったことを意味します。検出された= 1は少なくともカメラと接触できることを意味するため、すでにカメラを使用している1つ以上のプロセスがある場合、これはおそらく起こります。
アミットレイ

0

私の場合、ドライバーをアンロードするにはmodprobeを使用する必要がありました。sudomodprobe -r bcm2835-v4l2

その後、カメラの赤いLEDが消灯し、raspividを使用してカメラを再度有効にすることができます。


0

私の場合、カメラにケーブルを取り付け直す必要がありました。ケーブルをケースに通すために切断しました。良好な接続を確立していないはずです。


0

カメラデモアプリを停止するのを忘れたため、AIY Vision Kit(Pi Zero W)でそのエラーが発生しました。

sudo systemctl stop joy_detection_demo

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.