Skip to content

Commit 629703f

Browse files
author
Alain Volmat
committed
shields: st_b_cams_imx_mb1854: add imx335 based MB1854 board shield
Introduce the B_CAMS_IMX camera shield for STM32 which embeds a IMX335 camera sensor. Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
1 parent 0a4116d commit 629703f

File tree

4 files changed

+113
-0
lines changed

4 files changed

+113
-0
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Copyright (c) 2025 STMicroelectronics.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config SHIELD_ST_B_CAMS_IMX_MB1854
5+
def_bool $(shields_list_contains,st_b_cams_imx_mb1854)
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
.. _st_b_cams_imx_mb1854:
2+
3+
ST B-CAMS-IMX-MB1854
4+
####################
5+
6+
Overview
7+
********
8+
9+
The B-CAMS-IMX camera module provides a compelling hardware set to
10+
handle multiple computer vision scenarios and use cases. It features
11+
a high-resolution 5‑Mpx RGB CMOS image sensor, an inertial motion unit,
12+
and a Time‑of‑Flight sensor. It can be used with any STM32 boards featuring
13+
a MIPI CSI-2® interface with a 22‑pin FFC connector to enable full-featured
14+
computer vision on STM32 microcontrollers and microprocessors easily.
15+
16+
.. figure:: st_b_cams_imx.webp
17+
:width: 600px
18+
:align: center
19+
:alt: B-CAMS-IMX-MB1854
20+
21+
B-CAMS-IMX MB1854 Image (Credit: STMicroelectronics.)
22+
23+
Requirements
24+
************
25+
26+
The camera module bundle is compatible with all STM32 Discovery kits and
27+
Evaluation boards featuring a 22 pins FFC connector, such as the STM32N6570_DK
28+
Discovery kit.
29+
30+
Usage
31+
*****
32+
33+
The shield can be used in any application by setting ``SHIELD`` to
34+
``_st_b_cams_imx_mb1854`` and adding the necessary device tree properties.
35+
36+
Set ``--shield "st_b_cams_imx_mb1854"`` when you invoke ``west build``. For example:
37+
38+
.. zephyr-app-commands::
39+
:zephyr-app: samples/drivers/video/capture
40+
:board: stm32n6570_dk
41+
:shield: st_b_cams_imx_mb1854
42+
:goals: build
43+
44+
References
45+
**********
46+
47+
- `Product page <https://www.st.com/en/evaluation-tools/b-cams-imx.html>`_
48+
49+
- `Databrief <https://www.st.com/resource/en/data_brief/b-cams-imx.pdf>`_
50+
51+
- `User manual <https://www.st.com/resource/en/user_manual/um3354-camera-module-bundle-for-stm32-boards-stmicroelectronics.pdf>`_
Binary file not shown.
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
/*
2+
* Copyright (c) 2025 STMicroelectronics.
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*
6+
*/
7+
8+
#include <zephyr/dt-bindings/gpio/csi-22pins-connector.h>
9+
#include <zephyr/dt-bindings/video/video-interfaces.h>
10+
11+
/ {
12+
chosen {
13+
zephyr,camera = &csi_22pins_capture_port;
14+
};
15+
16+
imx335_input_clock: imx335-input-clock {
17+
compatible = "fixed-clock";
18+
clock-frequency = <24000000>;
19+
#clock-cells = <0>;
20+
};
21+
};
22+
23+
&csi_22pins_interface {
24+
status = "okay";
25+
};
26+
27+
&csi_22pins_ep_in {
28+
remote-endpoint-label = "imx335_ep_out";
29+
bus-type = <VIDEO_BUS_TYPE_CSI2_DPHY>;
30+
data-lanes = <1 2>;
31+
};
32+
33+
&csi_22pins_i2c {
34+
imx335: camera@1a {
35+
compatible = "sony,imx335";
36+
clocks = <&imx335_input_clock>;
37+
reg = <0x1a>;
38+
reset-gpios = <&csi_22pins_connector CSI_22PINS_IO0 GPIO_ACTIVE_LOW>;
39+
40+
port {
41+
imx335_ep_out: endpoint {
42+
remote-endpoint-label = "csi_22pins_ep_in";
43+
bus-type = <VIDEO_BUS_TYPE_CSI2_DPHY>;
44+
data-lanes = <1 2>;
45+
};
46+
};
47+
};
48+
};
49+
50+
&csi_22pins_connector {
51+
/* Power the camera module */
52+
en-module-gpios {
53+
gpio-hog;
54+
gpios = <CSI_22PINS_IO1 GPIO_ACTIVE_HIGH>;
55+
output-high;
56+
};
57+
};

0 commit comments

Comments
 (0)