Skip to content

Commit d42a8cd

Browse files
Linux: try camera before doing CameraManager.add_camera()
1 parent 08d12ba commit d42a8cd

File tree

1 file changed

+15
-8
lines changed
  • internal_filesystem/lib/mpos/board

1 file changed

+15
-8
lines changed

internal_filesystem/lib/mpos/board/linux.py

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -123,14 +123,21 @@ def adc_to_voltage(adc_value):
123123
SensorManager.init(None)
124124

125125
# === CAMERA HARDWARE ===
126-
import mpos.camera_manager as CameraManager
127-
128-
# Desktop builds can simulate a camera for testing
129-
CameraManager.add_camera(CameraManager.Camera(
130-
lens_facing=CameraManager.CameraCharacteristics.LENS_FACING_BACK,
131-
name="Desktop Simulated Camera",
132-
vendor="MicroPythonOS"
133-
))
126+
127+
try:
128+
# Try to initialize webcam to verify it's available
129+
import webcam
130+
test_cam = webcam.init("/dev/video0", width=320, height=240)
131+
if test_cam:
132+
webcam.deinit(test_cam)
133+
import mpos.camera_manager as CameraManager
134+
CameraManager.add_camera(CameraManager.Camera(
135+
lens_facing=CameraManager.CameraCharacteristics.LENS_FACING_FRONT,
136+
name="Video4Linux2 Camera",
137+
vendor="ACME"
138+
))
139+
except Exception as e:
140+
print(f"Info: webcam initialization failed, camera will not be available: {e}")
134141

135142
print("linux.py finished")
136143

0 commit comments

Comments
 (0)