Laptop Build Notes - 2024/06/19
(Copied from email Stuart sent to Clif on 2024/06/19)
All six of the Panasonic Toughbooks are now running Linux Mint 21.3.
They auto logon with the user hippy which has the password hippy. Per your request, this user is not allowed to sudo to root, although ssh is enabled and root (using the low security password) is able to connect.
The current known issues with Linux on these machines are:
1 - The world facing webcam does not work - this is a driver issue with details sent in another email
2 - The A1/A2/Rotation Lock buttons on the tablet do not work - this requires a kernel module custom to the CF-33 models which will be similar to the panasonic-hbtn module available for other Toughbooks
Related information (look for Tablet Button Functionality section):
https://www.bobjohnson.com/blog/mastering-ubuntu-on-the-panasonic-toughbook-cf-19/
(Windows re-installation files/documentation/drivers/etc have been saved to mccloud:/home/backup/toughbooks)
The rough process I used to setup the Toughbooks is as follows:
Connect a USB drive with Linux Mint installer on it
Hold the A2 button while powering on to enter BIOS (this can be very temperamental)
Once in the BIOS:
Go to Exit tab, select Load Default Values
To to the Security tab, select Secure Boot, then select Clear Secure Boot keys
Go to Boot tab, select UEFI Priorities, remove all devices other than the USB device
Exit & save changes
Boot & Install Mint using defaults, install multimedia codecs, erase disk & install Linux Mint, create user 'Oregon Country Fair' username & password 'hippy' which logs in automatically, name system as 'toughbook00' (replacing 00 with correct number)
After install:
On the Welcome app, uncheck the 'Show this dialog at startup' option
Create script to setup user environment:
/bin/echo -e '# User customization for OCF Toughbooks\n\n# Set onboard on-screen keyboard to start minimized\ndconf write /org/onboard/start-minimized true\n\n# Enable screen rotation\n#dconf write /org/cinnamon/settings-daemon/peripherals/toughscreen/orientation-lock false\n# (Disabled as this will rotate the screen even with keyboard attached)\n\n# Set desktop background\ndconf write /org/cinnamon/desktop/background/picture-uri "'"'"'file:///usr/local/ocf/2024-OCF-Poster-Emily-Poole.webp'"'"'"\ndconf write /org/cinnamon/desktop/background/picture-options "'"'"'scaled'"'"'"\n' > ocf-config
Sudo to root
Set root password to low-security password
As root, install SSH & enable service:
apt install openssh-server
systemctl enable ssh
systemctl start ssh
(The following was typically done via SSH)
Enable root to SSH with password:
/bin/echo -e '33c33\n< #PermitRootLogin prohibit-password\n---\n>
PermitRootLogin yes' | /usr/bin/patch -b /etc/ssh/sshd_config
systemctl restart ssh
Copy in OCF background image:
mkdir /usr/local/ocf
scp 2024-OCF-Poster-Emily-Poole.webp root@{toughbookip}:/usr/local/ocf
Set onboard onscreen keyboard to auto start:
cp /usr/share/applications/onboard.desktop /etc/xdg/autostart/onboard-autostart.desktop
Update the system:
apt update
apt upgrade
Remove sudo ability for hippy user:
gpasswd -d hippy sudo
Returning to the system itself, while logged in as the hippy user, apply the desktop settings:
source ocf-config
rm ocf-config
Reboot the system and it should be ready for use.
Other miscellaneous notes:
To retrieve the Windows Product Key from the system while running Linux:
strings /sys/firmware/acpi/tables/MSDM
To get the system serial/model number or BIOS version run:
dmidecode
(The model & serial numbers of the keyboard are not present in this, only the model & serial of the main PC/tablet portion)
A Windows recovery thumb-drive was created and an image saved (using Clonezilla), however it does not reinstall any of the Panasonic Toughbook utilities so reinstalling from a recent ISO downloaded directly from Microsoft may make more sense if reinstalling Windows is necessary. Windows drivers can be downloaded from:
https://na.panasonic.com/us/support/toughbook-support-center#/computers;id=116/toughbook-33;id=11261;sid=401/all-drivers;id=002001 A complete driver package was also saved off and is in the same folder as the recovery drive image.
Webcam driver status for ToughBook world facing camera
(Copied from email Stuart sent to Clif on 2024/06/18)
The world facing camera on the ToughBooks is the Intel AVstream 2500 (PCI ID 8086:5916) which is showing up as an Intel IPU3 CIO2 device.
Searching for that, turns up this:
The IPU3 CIO2 device is a MIPI CSI-2 receiver. It can capture video from a camera sensor without any processing. Camera sensors used with IPU3 devices are usually raw Bayer sensors, which means not only that will most applications not work with them (as they expect RGB or YUV data), but also that the image quality will be very poor without image processing algorithms running auto-exposure or auto-white balance. The good news is that work is ongoing to support devices based on the Intel IPU3 as part of the http://libcamera.org/ project.
libcamera is a relatively new userspace framework to support this kind of cameras. It requires support from kernel drivers, so the first step will be to ensure that the IPU3 CIO2 driver correctly detects the camera sensor. You can do so by checking the media pipeline with the media-ctl tool, part of v4l-utils. I recommend asking from support on the libcamera mailing list or IRC channel.
libcamera's FAQ says:
Q: I have an Intel™ based laptop or tablet with an IPU3 running Windows™. Can I use libcamera to run my Webcam?
A: Currently, on selected Microsoft Surface™ devices only, with some effort. The ACPI tables created for those devices are not compatible with the Linux drivers, and as such the camera sensors can not be correctly identified on those platforms. The linux-surface community and the libcamera project are cooperating to progresss on the kernel side to address this issue, with part of the support merged in v5.12, and active ongoing development for the remaining problems. You can track the status in the linux-surface project on GitHub.
There are some libcamera packages on Mint 21.3 & on Ubuntu 24.04 - I've tried both distros and neither is able to enumerate the front facing camera at this time. I took a stab at building libcamera from source, but believe my time would be better spent on other projects and advise checking back on the overall status next year.