Question Description
**Have you searched the community for Have you searched the community for related issues?
Yes. I found previous Surface Go 2 camera reports, but my issue is not caused by the camera being disabled in UEFI.
Description
The front camera works on my Microsoft Surface Go 2, but switching to the rear camera results in a completely black screen.
After selecting the rear camera:
- The Camera app shows a black image.
- No frames are received.
- I cannot switch back to the front camera.
- Restarting the cros-camera service restores the front camera.
- Selecting the rear camera again reproduces the problem.
The rear camera is enabled in Surface UEFI.
The same rear camera produced a visible image when I previously tested Mobian Linux, although camera support there was not fully polished. This suggests the rear camera hardware is functional.
Hardware and system information
Device: Microsoft Surface Go 2 LTE
Processor: Intel Core m3-8100Y
RAM: 8 GB
Storage: 128 GB
FydeOS product: FydeOS for You – Surface Go 2
FydeOS version: v22.1 stable
Build: 16503.20.22.7
Board: surface-go2-io
Kernel: 6.6.99-09011-gfdc62122de5f-dirty
Expected behaviour
The Camera app should switch between the working front OV5693 camera and rear OV8865 camera.
Actual behaviour
The rear camera is detected by the kernel and ChromeOS camera HAL, but opening it produces a black screen and no camera frames.
Hardware detection
The kernel detects all three Surface camera sensors:
ipu3-cio2 0000:00:14.3: Found supported sensor INT33BE:00
ipu3-cio2 0000:00:14.3: Found supported sensor INT347A:00
ipu3-cio2 0000:00:14.3: Found supported sensor INT347E:00
ipu3-cio2 0000:00:14.3: Connected 3 cameras
The required drivers are loaded:
ipu3_cio2
ipu3_imgu
ov5693
ov8865
intel_skl_int3472_discrete
The camera service also detects both normal cameras:
ProbeMediaController(): Probing sensor ‘ov5693 4-0036’
ProbeMediaController(): Probing sensor ‘ov8865 2-0010’
StartOnThread(): Camera module “libcamera camera HALv3 module” has 2 built-in camera(s)
StartOnThread(): SuperHAL started with 2 modules, 2 built-in cameras
Reproduction steps
- Boot FydeOS v22.1 on the Surface Go 2.
- Open the standard Camera app.
- Confirm that the front camera displays an image.
- Press the switch-camera button.
- The rear camera opens to a black screen.
- The application then cannot switch back to the front camera.
Relevant logs when rear camera is opened
OpenDeviceImpl(): CHROME, camera_id = 0, camera_module = libcamera camera HALv3 module, internal_camera_id = 0
ConfigureStreams(): id = 0, type = CAMERA3_STREAM_OUTPUT, size = 1600x1200, format = HAL_PIXEL_FORMAT_YCbCr_420_888
ConfigureStreams(): id = 1, type = CAMERA3_STREAM_OUTPUT, size = 1600x1200, format = HAL_PIXEL_FORMAT_BLOB
ipu3-cio2 0000:00:14.3: CSI-2 receiver port 0: escape mode ultra-low power state exit for clock lane
MonitorTimeoutOnThread(): No results for more than 2 s
MonitorTimeoutOnThread(): No requests for more than 2 s
Earlier attempts also produced repeated errors on CSI-2 receiver port 0:
multiple packet header errors detected
payload checksum (CRC) error
DPHY synchronization error
Android camera access also fails, including with a 640x480 preview, so this is not limited to the ChromeOS Camera application.
The following warning appears but may be unrelated because both cameras are still detected:
OnOptionsUpdated(): Cannot find feature profile as dict for device model “surface-go2”
Restarting the service temporarily restores the front camera:
restart cros-camera
Request
Please investigate the Surface Go 2 OV8865 rear-camera pipeline in the FydeOS v22.1 build.
The problem appears to be in the OV8865 / IPU3 CIO2 / libcamera pipeline because:
- The rear sensor is detected.
- The driver is loaded.
- The camera HAL exposes it.
- Opening it produces CSI-2 receiver errors.
- No frames reach cros-camera.
- The front camera works through the same camera service.
- The rear camera previously produced an image under Mobian Linux.
I can provide the complete /var/log/messages output if required. issues?**
- No similar issues found.
Please describe the problem you’ve encountered in detail:
- Description:
System & Device Information
-
Hardware & System Configuration:
- Processor:
- Graphics Card(Please specify if there’s a discrete graphics card):
- RAM:
- FydeOS Version:
-
Relevant System Logs:
- Open the Chromium browser and enter
/var/log/messagesto retrieve logs. - Log Details:
- Open the Chromium browser and enter
Note: If you’ve lost your FydeOS subscription, please refer to this FAQ for assistance.