Thinkpad X1 Carbon
X1 Carbon Gen 5
X1 Carbon Gen 7 (private)
- Model 20QE - S5JY1S
- 14"
- Arch wiki Gen 7
- ifixit: Lenovo ThinkPad X1 Carbon 7th Gen SSD Replacement
X1 Carbon Gen 10 (work)
- Arch wiki: Lenovo ThinkPad X1 Carbon (Gen 10)
- LVFS firmware updates
- The ThinkPad X1 Carbon Gen 10 as a Linux laptop
Webcam
Doesn't work yet. From the arch wiki page:
Warning: Do not buy this laptop (says even Lenovo) with a 2.8k OLED screen because the only webcam available with that screen is the MIPI camera (listed by Lenovo as 'Computer Vision camera') which does not have open source drivers and will just not work in the coming few years.
- Hans de Goede: IPU6 camera support status update
- intel/ipu6-drivers: Fedora 38 on X1 carbon gen 10
- Lenovo forum: Ubuntu/Mint on Thinkpad X1 Carbon Gen 10
- Ubuntu bug: Support Intel IPU6 MIPI camera on Alder Lake platforms
- Ubuntu webcam issues for Dell Laptops, see LP:#1978757 Cheese can't playback preview not working on 22.04
- Browser webcam test
- Build with dkms
- Suspend/hibernate issue on Thinkpad x1 carbon gen10
- archlinux-ipu6-webcam support issue
Installation from kernel v6.11 onwards
- Please upstream modules into mainline kernel IPU6 was enabled in the 6.11~rc4-1~exp1 release of the Linux kernel
- How to use the IPU6 webcam with kernel 6.10+?
- Fedora wiki: Changes/IPU6 Camera support
- Debian bugtracker: linux-image-amd64: Please enable several CONFIG_ options required for IPU6/MIPI cameras
Working installation
Prerequisites:
- Linux kernel >=
6.14
- libcamera >=
0.4.0
- systemd >
v256
Install packages shown in this success tutorial:
sudo pacman -S \
extra/gst-plugin-libcamera \
extra/pipewire-libcamera \
extra/libcamera-tools \
extra/libcamera-ipa \
extra/libcamera
pamac install intel-ivsc-firmware
✅ Test the cam, this should generate a lot of files (stop it after a second with Ctrl+C) and turn on the camera light if everything is working correctly:
cam -c 1 -F'/tmp/#.bin' -C
✅ Test with gstreamer, this should show the stream from the camera:
gst-launch-1.0 libcamerasrc ! queue ! glimagesink
Apps that work with the camera:
- ✅ Gnome snapshot
- ❌ cheese (image freezes)
- ❌ Chromium: WebRTC samples: getUserMedia
- Enable
#enable-webrtc-pipewire-camera
inchrome://flags/
getUserMedia error: NotReadableError
- Enable
- ❌ Chromium: Mozilla WebRTC getUserMedia
NotFoundError: Requested device not found
- ✅ Firefox: WebRTC samples: getUserMedia
- Make sure to enable
media.webrtc.camera.allow-pipewire
inabout:config
- Image is pretty dark and of bad quality, compared to i.e.
gnome snapshot
- Make sure to enable
- ❌ Firefox: Mozilla WebRTC getUserMedia
Still with cheese:
Internal data stream error.: ../gstreamer/subprojects/gstreamer/libs/gst/base/gstbasesrc.c(3177): gst_base_src_loop (): /GstCameraBin:camerabin/GstWrapperCameraBinSrc:camera_source/GstBin:bin36/GstPipeWireSrc:pipewiresrc1:
streaming stopped, reason not-negotiated (-4)
Pre 6.11 install
sudo pacman -S linux65-headers
git clone https://github.com/stefanpartheym/archlinux-ipu6-webcam \
~/work/webcam/archlinux-ipu6-webcam
cd ~/work/webcam/archlinux-ipu6-webcam
./install.sh
If it breaks compiling the icamerasrc-git
AUR package dependency follow
this fix:
git clone https://aur.archlinux.org/icamerasrc-git.git ~/work/webcam/icamerasrc-git
cd ~/work/webcam/icamerasrc-git
sed -i 's/branch=icamerasrc_slim_api/commit=17841ab6249aaa69bd9b3959262bf182dee74111/'\
PKGBUILD
makepkg -sic
Then run the install script again:
cd ~/work/webcam/archlinux-ipu6-webcam
./install.sh
After successfull execution:
reboot
Test webcam with ./test.sh
./test.sh
Uninstall:
sudo pacman -R
dkms \
icamerasrc-git \
intel-ipu6-dkms-git-fix \
intel-ipu6ep-camera-bin \
intel-ipu6ep-camera-bin-fix \
intel-ipu6ep-camera-hal-git-fix
intel-ipu6ep-camera-hal-git-fix \
intel-ivsc-driver-dkms-git \
v4l2-relayd-fix \
v4l2loopback-dkms-git-fix \
v4l2loopback-dkms-git-fix \