このカメラ センサ AR1335 を NXP MCU で使用したことがあるかどうかお聞きしたいのですが。もしそうなら、ドライバのソースコードを共有してください。
よろしくお願いいたします。
ファリド
こんにちは、ファビオさん。
私はyoctoを使用しています。
最新の ar1335 センサ カーネル ドライバはここにあります:
https://github.com/nxp-imx/isp-vvcam/tree/lf-5.15.y_2.0.0/vvcam/v4l2/sensor/ar1335
Yocto を使用する場合は、上記のisp-vvcamに加えてisp-imxも必要です。
このソース コードに興味がある場合は、Ubuntu ホストで bin ファイルをダウンロードして実行することで入手できます。
https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/isp-imx-4.2.2.20.0.bin
バージョンをBSPで使用しているものに置き換えます(ここではv20を使用します)
別のセンサ用のドライバを展開する方法の例を次に示します。
https://www.nxp.com/docs/en/application-note/AN13712.pdf
こんにちは、ありがとうございます。私はこの分野の初心者なので、質問がおかしくなるかもしれません。Debian または Yocto を使用しましたか?標準ドライバへのリンクを教えていただけますか?
こんにちは、ファビオさん。
はい、標準ドライバを使用して実行できました。
これまではHD 1080pの解像度を使用していました。
数日中に4K以上も試してみる予定です。
こんにちは、
カメラAR1335とMx8 plusの接続に成功したかどうかを知りたいです
お願いします
ファビオ
こんにちは、マイケル。
>>このセンサはNXP iMX8M Mini SoCを使用してすでに動作しています
私はこれにとても興味があります。ソースコードとデバイスツリーファイルを提供する事は可能でしょうか?
私はこれを非常によく似た iMX8M-plus でも動作させようとしています。
ありがとう、MC
こんにちは、 michael_partheiさん
すでに弊社の社内専門家に確認していただき、新しい投稿で返信させていただきます。
新しい問題が発生した場合は、新しい投稿をフォローしてください。
よろしくお願いいたします。
kerry
ありがとう、ケリー!この問題について議論するために新しいトピックを開きました: https://community.nxp.com/t5/i-MX-RT/RT1170-Using-MIPI-CSI-with-grayscale-or-raw-image-sensors/mp/12...
こんにちは、 michael_partheiさん
内部 AE の説明によると、これは SDK の問題ではなく、チップ MIPI CSI がサポートできない問題です。
SO、リファレンス・マニュアルにはFUTUREに関連する説明が追加される予定です。
ただし、生データを使用する場合は、mipi-csi ではなくパラレル CSI インターフェースを使用する必要があります。
ご不便をおかけして申し訳ございません。
よろしくお願いいたします。
kerry
こんにちは、ケリーさん。
明確にするために:これは、RT1176(正確にはOV9281、データ形式はRAW8)では8ビットモノクログレースケールセンサの使用は不可能だという意味ですか?これはハードウェアの根本的な制限でしょうか、それともFUTURE修正される予定の SDKs の問題でしょうか?
同様の MIPI CSI ペリフェラルを使用していると思われる NXP iMX8M Mini SoC を使用して、このセンサをすでに実行していますが、RT1176 に移植する必要があります。
ベスト、マイケル
Jetson nano 用の AR1335 Linux ドライバ:
こんにちは、 fmabroukさん
返信が遅くなって本当に申し訳ありません。
内部 AE 応答を取得すると、本当に悲しい話になりますが、MIPI-CSI2 は VIDEO_MUX のバグのために生データをサポートできず、この情報は RT1170 リファレンス・マニュアルに追加されます。
SO、外部 AR1335 がサポートされるように構成できるかどうかを確認してください。RGBですか?
現在、生のデータは 10 ビットですが、回避策はありません。
返信が遅くなってしまい申し訳ございません。ご尽力いただきまして誠にありがとうございます。
よろしくお願いいたします。
kerry
フォーラムの他のメンバーまたは NXP チームからの私の問題に対するフィードバック。本当に時間がないので、これを整理する必要があります。CAN助けてください。
お元気でお過ごしでしょうか?あなたに連絡して、私の問題に関して何か最新情報があるかどうかを確認したいだけです。
ここでも、出力ピクセル データごとに 10 ビットの生データをキャプチャできるように CSI ドライバを構成するための支援が必要です。データをキャプチャした後、独自のソフトウェアを使用してデータを RGB 888 形式に変換できます。
よろしくお願いいたします。
こんにちは、ケリーさん。
もう 1 つお知らせしたいのは、カメラ センサの出力形式は RAW10 (10 ビット) ですが、現在の nXP CSI/カメラ ドライバではこの形式はサポートされていないということです。私が目にしたのは以下のものだけです:
/*! @brief ピクセル形式の定義。 */
typedef enum _video_pixel_format
{
/* RGB */
kVIDEO_PixelFormatXRGB8888 = FSL_VIDEO_FOURCC('X', 'R', '2', '4'), /*!< 32ビットXRGB8888。 */
kVIDEO_PixelFormatRGBX8888 = FSL_VIDEO_FOURCC('R', 'X', '2', '4'), /*!< 32ビットRGBX8888。 */
kVIDEO_PixelFormatXBGR8888 = FSL_VIDEO_FOURCC('X', 'B', '2', '4'), /*!< 32ビットXBGR8888。 */
kVIDEO_PixelFormatBGRX8888 = FSL_VIDEO_FOURCC('B', 'X', '2', '4'), /*!< 32ビットBGRX8888。 */
kVIDEO_PixelFormatRGB888 = FSL_VIDEO_FOURCC('R', 'G', '2', '4'), /*!< 24ビットRGB888。 */
kVIDEO_PixelFormatBGR888 = FSL_VIDEO_FOURCC('B', 'G', '2', '4'), /*!< 24 ビット BGR888。 */
kVIDEO_PixelFormatRGB565 = FSL_VIDEO_FOURCC('R', 'G', '1', '6'), /*!< 16 ビット RGB565。 */
kVIDEO_PixelFormatBGR565 = FSL_VIDEO_FOURCC('B', 'G', '1', '6'), /*!< 16 ビット BGR565。 */
kVIDEO_PixelFormatXRGB1555 = FSL_VIDEO_FOURCC('X', 'R', '1', '5'), /*!< 16 ビット XRGB1555。 */
kVIDEO_PixelFormatRGBX5551 = FSL_VIDEO_FOURCC('R', 'X', '1', '5'), /*!< 16ビットRGBX5551。 */
kVIDEO_PixelFormatXBGR1555 = FSL_VIDEO_FOURCC('X', 'B', '1', '5'), /*!< 16 ビット XBGR1555。 */
kVIDEO_PixelFormatBGRX5551 = FSL_VIDEO_FOURCC('B', 'X', '1', '5'), /*!< 16ビットBGRX5551。 */
kVIDEO_PixelFormatXRGB4444 = FSL_VIDEO_FOURCC('X', 'R', '1', '2'), /*!< 16 ビット XRGB4444。 */
kVIDEO_PixelFormatRGBX4444 = FSL_VIDEO_FOURCC('R', 'X', '1', '2'), /*!< 16ビットRGBX4444。 */
kVIDEO_PixelFormatXBGR4444 = FSL_VIDEO_FOURCC('X', 'B', '1', '2'), /*!< 16ビットXBGR4444。 */
kVIDEO_PixelFormatBGRX4444 = FSL_VIDEO_FOURCC('B', 'X', '1', '2'), /*!< 16ビットBGRX4444。 */
/* YUV */
kVIDEO_PixelFormatYUYV = FSL_VIDEO_FOURCC('Y', 'U', 'Y', 'V'), /*!< YUV422, YUYV。 */
kVIDEO_PixelFormatYVYU = FSL_VIDEO_FOURCC('Y', 'V', 'Y', 'U'), /*!< YUV422, YVYU. */
kVIDEO_PixelFormatUYVY = FSL_VIDEO_FOURCC('U', 'Y', 'V', 'Y'), /*!< YUV422, UYVY。 */
kVIDEO_PixelFormatVYUY = FSL_VIDEO_FOURCC('V', 'Y', 'U', 'Y'), /*!< YUV422, VYUY. */
kVIDEO_PixelFormatXYUV = FSL_VIDEO_FOURCC('X', 'Y', 'U', 'V'), /*!< YUV444, XYUV. */
kVIDEO_PixelFormatXYVU = FSL_VIDEO_FOURCC('X', 'Y', 'V', 'U'), /*!< YUV444, XYVU. */
} ビデオピクセルフォーマットt;
アプリケーションコードでRaw10をRGB888に変換できますか?
参考までにデータシートをいくつか添付しました。
こんにちは、 fmabroukさん
情報をいただきありがとうございます。
しばらくお待ちください。コードの詳細を確認し、社内の CSI エキスパートに確認します。
有益な情報が入りましたら、できるだけ早くお知らせいたします。
もう少しお時間をください、SOありがとうございます!
よろしくお願いいたします。
kerry
カメラ センサがデータをストリーミングしていることをスコープで確認し、コードのデバッグ中に CSI 読み取りレジスタをキャプチャできました。添付のスクリーン ショットを参照してください。ただし、完全なフレーム バッファーの CSI 割り込みを取得できません。これも MIPI CSI を初期化した方法に関係しています。前回の電子メールで述べたイメージ要件に基づいて、これを適切に設定するのに、あなたまたは他の誰かが協力してくれませんか。
乾杯!
以下は私が興味を持っている画像パラメータの概要です。
[PLLパラメータ]
; ターゲットVtピクセル周波数: 220 MHz
; 入力クロック周波数: 24 MHz
;
; 実際のVtピクセルクロック: 220 MHz
; 実際のオペレーションピクセルクロック: 110 MHz
;
; pll_multiplier (M値) = 55
; pre_pll_clk_div (N値) = 2
; pll_multiplier2 (M2値) = 55
; pre_pll_clk_div2 (N2値) = 2
; Fpfd = 12 MHz
; Fvco = 660 MHz
; Fvco2 = 660 MHz
; Vt システム除算器 = 1
; Vt Pix Divider = 3
; オペレーションシステム除算器 = 1
; Op Pix Divider = 6
;
; [画像パラメータ]
; 要求フレーム数/秒: 30
; 出力列数: 640
; 出力行数: 480
; Y合計を使用する: チェックなし
; Xのみのビニング: チェックなし
; スキップを許可する: チェックあり
; ブランキング計算: HB Max、次にVB
;
; 最大フレーム時間: 33.3333 ミリ秒
; 最大フレームクロック: 7333333.3時計
; 読み出しモード: 1、YSum: いいえ、XBin: いいえ
; 水平クロック: 640 アクティブ + 1688 ブランク = 合計 2328
; 垂直行: 480 アクティブ + 2674 空白 = 合計 3154
; 出力列数: 640
; 出力行数: 480
; 視野角: 640
; 視野行数: 480
; 実際のフレームクロック: 7342512 クロック
; 行時間: 10.582 マイクロ秒 / 2328 クロック
; 積分時間: 33 ミリ秒。
; フレーム時間: 33.375055 ミリ秒
; 最大フレームレート: 191.739fps
; フレームレート: 29.962 fps
私はimx RT1170でmipi CSI2デモ コードを使用して、AR1335から480x640の画像を取得しています。
このカメラセンサの出力形式は 10 ビットであることがわかりました。必要なイメージをキャプチャできるようにするには、CSI ドライバでどのような変更を行う必要がありますか。
メーカーのツールを使用して構成ファイルを生成しましたが、CSI ドライバが誤って構成されているため、イメージを取得できません。
AR1335 からイメージをキャプチャするためにデモ コード CSI ドライバで何を変更する必要があるかアドバイスをお願いします。
敬具
こんにちは、 fmabroukさん
今のところ、別のカメラセンサをインポートすることに関する直接的なドキュメントはまだありません。
私の知る限り、カメラ センサには、構成を行ってコードを生成できる構成ツールも必要です。AR1335には、すでにNXPについての関連ドライバがありますか?
内部的にも確認しましたが、今まで AR1335 RT 関連のドライバは見つかりませんでした。
よろしくお願いいたします。
kerry
私は、imX RT1170 開発ボードで OV5640 の代わりにこのカメラセンサ AR1335 を使用しています。AR1335 は 10 ビットの画像のみを送信します。OV5640 ピクセル データ バスは 16 ビットだと思います。
このセンサで画像を取得できるように、NXP SDK に付属の mipi csi デモ コードを変更するにはどうすればよいですか?
このデモ コードに別のカメラ センサをインポートするプロセスをガイドするドキュメントがあればいいと思います。
よろしくお願いします!
こんにちは、 fmabroukさん
あなたが言及した時計については、RT1170 リファレンス・マニュアルから見つけることができます。
お役に立てれば幸いです!
よろしくお願いいたします。
kerry
上記に投稿した質問の他に、ピクセル クロックを 80MHz に設定する必要があります。imx RT1170 の CSI2 mipi デモ コードでどのレジスタを変更する必要がありますか?
ご回答をお待ちしています。
私はまだ AR1335 カメラ ドライバを ImX RT1170 CCI2 mipi デモ コードに移植しようとしています。
CS2 mipi コードで次のクロックを見つけました:
CLOCK_SetRootClock(kCLOCK_Root_Csi2、&csi2ClockConfig);
CLOCK_SetRootClock(kCLOCK_Root_Csi2_Esc、&csi2EscClockConfig);
CLOCK_SetRootClock(kCLOCK_Root_Csi2_Ui、&csi2UiClockConfig);
これらの時計の用途を説明できる人はいますか?
ご回答をお待ちしています。
こんにちは、 fmabroukさん
今まで、 AR1335 に関する RT チップ ドライバは見つかりませんでした。内部的に検索しても見つかりませんでした。
インターネットで検索すれば、サードパーティ製の製品に AR1335 ドライバがあるかもしれません。
Nxp の公式側では見つけられませんでしたが、今までのところ、RT は主に MT9M114 または OV7725 カメラ モジュールを使用しています。
ご不便をおかけして申し訳ございませんが、ご理解のほどよろしくお願いいたします。
よろしくお願いいたします。
kerry