Correct the camera triage: both Pi 5 connectors take a camera
The first version told the reader a camera in "a DISP port" would never appear. That is Pi 4 thinking. The Pi 5 has two 4-lane MIPI connectors, CAM/DISP 0 and CAM/DISP 1, and BOTH are dual-purpose — either one accepts a camera. Left as written it would have sent someone hunting a port mix-up that cannot happen, and away from the likelier cause. Promotes that likelier cause to the top: the Pi 5 uses the narrow 22-pin FPC, while Pi 4-era camera modules ship with a 15-pin cable and need the adapter. Also records the evidence that narrows this to hardware rather than config. pisp_be is loaded and /dev/media0-2 exist, so the imaging pipeline is up, but /sys/bus/i2c/devices holds only i2c-13 and i2c-14 — no camera bus was instantiated and no CFE bound. camera_auto_detect probes at boot and loads a sensor overlay when it finds one, so an absent bus means the firmware found nothing to probe. Confirmed unchanged across a reboot.
This commit is contained in:
@@ -30,21 +30,38 @@ This is a *detection* problem, not a software one — the userland is already in
|
||||
- **`dmesg` contains no camera probe lines at all** — no sensor (`imx*`, `ov5647`), no CFE
|
||||
|
||||
That last point is the diagnostic one. A camera that is seen but misconfigured still leaves probe
|
||||
messages; **silence means the sensor is not being reached electrically.** So check the physical
|
||||
connection before changing any config:
|
||||
messages; **silence means the sensor is not being reached electrically.**
|
||||
|
||||
1. The Pi 5 has **two CAM/DISP connectors, and they are interchangeable in shape** — a camera in a
|
||||
DISP port looks correctly seated and will never appear.
|
||||
2. Ribbon **orientation**: contacts face the correct side at both ends (the board end and the camera
|
||||
end are not the same way round).
|
||||
The imaging pipeline itself is fine, which narrows it further:
|
||||
|
||||
```console
|
||||
$ lsmod | grep -iE 'pisp|cfe'
|
||||
pisp_be 49152 0 # ISP backend loaded
|
||||
$ ls /sys/bus/i2c/devices/
|
||||
i2c-13 i2c-14 # no camera i2c bus
|
||||
```
|
||||
|
||||
`camera_auto_detect=1` probes the connectors at boot and loads a sensor overlay when it finds
|
||||
something. **No sensor i2c bus was instantiated and no CFE bound**, so the firmware found nothing to
|
||||
load an overlay for. Nothing in software will change that.
|
||||
|
||||
So check the physical connection, power off first:
|
||||
|
||||
1. The Pi 5 uses the **narrower 22-pin** FPC connector. Cameras from the Pi 4 era ship with a
|
||||
**15-pin** cable, which needs the 22-pin-to-15-pin adapter cable — this is the most common cause
|
||||
of a camera that is connected but invisible.
|
||||
2. Ribbon **orientation**: contacts face the correct side at *each* end, and the two ends are not the
|
||||
same way round.
|
||||
3. The connector latch is fully seated at both ends.
|
||||
4. The Pi 5 uses the **narrower 22-pin** connector — a 15-pin camera cable needs an adapter.
|
||||
4. Try the **other connector** — the Pi 5 has two, `CAM/DISP 0` and `CAM/DISP 1`, and **both are
|
||||
dual-purpose**, so either accepts a camera. Swapping isolates a faulty port.
|
||||
|
||||
Power off before reseating. Re-check with:
|
||||
Re-check with:
|
||||
|
||||
```bash
|
||||
rpicam-hello --list-cameras # should list a sensor
|
||||
dmesg | grep -iE 'imx|ov5647|cfe'
|
||||
rpicam-hello --list-cameras # should list a sensor
|
||||
dmesg | grep -iE 'imx|ov5647|cfe' # should show a probe
|
||||
ls /sys/bus/i2c/devices/ # a new bus should appear
|
||||
```
|
||||
|
||||
⚠ **Do not treat `/dev/video*` as evidence the camera works.** Those nodes exist on this Pi already
|
||||
|
||||
Reference in New Issue
Block a user