Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mtl heads #974

Merged
merged 16 commits into from
Jan 22, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
231 changes: 114 additions & 117 deletions docs/unified/clevo/post-install.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,168 +3,165 @@
This document contains extra steps to perform after installing Dasharo in order
to enable full functionality of your device.

## Linux
Select your operating system to view applicable instructions:

This section covers Linux post-install steps tested on Ubuntu 22.04. It is
likely thas similar procedures would for others Linux distributions as well.
=== "Ubuntu"
### Touchpad hotkey enablement

### Touchpad hotkey enablement
The touchpad hotkey may need extra setup to function correctly under Linux.
If the key isn't working, execute the following command to apply a fix:

The touchpad hotkey needs extra setup to function correctly under Linux. To
enable the touchpad hotkey to work under Linux, follow the steps below:

1. Execute fixup script:

```bash
curl -sSf https://raw.githubusercontent.com/Dasharo/dasharo-tools/main/clevo/touchpad-fixup | sudo sh
```

After executing these steps, it should be possible to enable and disable the
touchpad using the touchpad hotkey (Fn+F1) on the keyboard when using GNOME.
```bash
curl -sSf https://raw.githubusercontent.com/Dasharo/dasharo-tools/main/clevo/touchpad-fixup | sudo sh
```

### Touchpad multi-touch support
After executing these steps, it should be possible to enable and disable the
touchpad using the touchpad hotkey (Fn+F1) on the keyboard when using GNOME.

On NS7x an additional fix is necessary to enable multi-touch on Linux. Create
a file `/etc/modprobe.d/blacklist-psmouse.conf` with the following contents:
### Touchpad multi-touch support

```bash
blacklist psmouse
```
On NS7x an additional fix is necessary to enable multi-touch on Linux. Create
a file `/etc/modprobe.d/blacklist-psmouse.conf` with the following contents:

and then run the following commands:
```bash
blacklist psmouse
```

```bash
sudo depmod -a
sudo update-initramfs -u
```
and then run the following commands:

### Updated kernel
```bash
sudo depmod -a
sudo update-initramfs -u
```

On Gen 14 (Meteor Lake), it's recommended to install the Ubuntu mainline kernel,
which is a newer version than the default Ubuntu kernel. This version contains
additional fixes for newer hardware which helps with power management and
suspend on Gen 14 laptops. To install the mainline kernel, run the following
commands:
and reboot to use the new kernel.

```bash
wget https://kernel.ubuntu.com/mainline/v6.9/amd64/linux-headers-6.9.0-060900_6.9.0-060900.202405122134_all.deb \
https://kernel.ubuntu.com/mainline/v6.9/amd64/linux-image-unsigned-6.9.0-060900-generic_6.9.0-060900.202405122134_amd64.deb \
https://kernel.ubuntu.com/mainline/v6.9/amd64/linux-modules-6.9.0-060900-generic_6.9.0-060900.202405122134_amd64.deb
sudo apt install ./linux-headers-6.9.0-060900_6.9.0-060900.202405122134_all.deb \
./linux-image-unsigned-6.9.0-060900-generic_6.9.0-060900.202405122134_amd64.deb \
./linux-modules-6.9.0-060900-generic_6.9.0-060900.202405122134_amd64.deb
```
### Nvidia drivers

and reboot to use the new kernel.
If your device comes with NVIDIA graphics, proprietary NVIDIA drivers are
recommended for optimal performance and battery life.

### Nvidia drivers
1. Install drivers according to
[instructions provided by Ubuntu](https://ubuntu.com/server/docs/nvidia-drivers-installation)

> It is only necessary to follow this step if your device has Nvidia GPU
1. Reboot the device to apply changes

For proper working of the sleep mode on Ubuntu 22.04, it is required to
install additional Nvidia drivers.
1. (Optional) If you're suffering from poor battery life caused by the GPU
not turning off, ensure On-Demand mode is enabled in NVIDIA Control
Panel:

1. Install drivers by executing the following command in the terminal:
![](../../images/nv4x_nvidia_panel.jpg){ class="center" }

```bash
sudo apt install nvidia-driver-535 nvidia-dkms-535
```
1. (Optional) If the GPU is still not powering down, run the following
command, and then reboot the laptop:

1. Reboot the device to apply changes by executing the following command in the
terminal:
```bash
echo options nvidia "NVreg_DynamicPowerManagement=0x02" | sudo tee /etc/modprobe.d/nvidia_rtd3.conf
```

```bash
sudo reboot
```
### Suspend fix for SATA disks

1. (Optional) For power saving while the card is not in use, enable On-Demand
mode in NVIDIA Control Panel:
Only affects laptops with M.2 SATA disks experiencing sleep issues (the power
LED not blinking while the laptop is suspended)

![](../../images/nv4x_nvidia_panel.jpg){ class="center" }
Windows and certain Linux distros such as Ubuntu do not enable the necessary
power saving tweaks to enable sleep mode while a SATA disk is installed.

1. If for some reason dynamic power management for the GPU is not working
(causing high power draw, poor sleep time or high temperatures), you may
need to run this command, and then reboot the laptop:
Execute fixup script:

```bash
echo options nvidia "NVreg_DynamicPowerManagement=0x02" | sudo tee /etc/modprobe.d/nvidia_rtd3.conf
curl -sSf https://raw.githubusercontent.com/Dasharo/dasharo-tools/main/clevo/sata-suspend-fixup | sudo sh
```

### Suspend fix for SATA disks
=== "Qubes OS"
### Touchpad hotkey enablement

Only affects laptops with M.2 SATA disks experiencing sleep issues (the power
LED not blinking while the laptop is suspended)
The touchpad hotkey may need extra setup to function correctly under Qubes.
If the key isn't working, follow the steps below:

Windows and certain Linux distros such as Ubuntu do not enable the necessary
power saving tweaks to enable sleep mode while a SATA disk is installed.
1. Open dom0 terminal window

1. Execute fixup script:
1. Open /etc/udev/hwdb.d/60-keyboard.hwdb in your preferred text editor,
e.g. nano:

```bash
curl -sSf https://raw.githubusercontent.com/Dasharo/dasharo-tools/main/clevo/sata-suspend-fixup | sudo sh
```
```bash
sudo nano /etc/udev/hwdb.d/60-keyboard.hwdb
```

### Headset jack fix for NV4x 12th Gen
1. Type the following into the file:

The headset jack in NV4x 12th Gen (Alder Lake) needs a fix that is available
starting with kernel version v6.0 (patch
[be561ffad708f0cee18aee4231f80ffafaf7a419](https://github.com/torvalds/linux/commit/be561ffad708f0cee18aee4231f80ffafaf7a419)).
If you are using an older kernel, you need to add the fix manually:
!!! note
The following applies only to NV4x 12th Gen and V560TU, which are
currently the only officially Qubes-certified models. If you use
Qubes on any other model, you may need to adjust the SMBIOS product
name in the section below.

1. Execute fixup script:
```
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnNV4xPZ:*
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnV54x_6x_TU:*
KEYBOARD_KEY_f7=touchpad_toggle
KEYBOARD_KEY_f8=touchpad_toggle
KEYBOARD_KEY_81=micmute
```

```bash
curl -sSf https://raw.githubusercontent.com/Dasharo/dasharo-tools/main/clevo/nv4x-audio-fixup | sudo sh
```
1. Execute the following command:

```bash
sudo systemd-hwdb update
sudo udevadm trigger
```

1. Reboot. The audio jack will now work correctly.
1. Reboot to apply changes

## Windows 11
After executing these steps, the hotkey should generate the correct keycode.
You may need to map it to the correct action in Xfce settings to ensure it
disables the touchpad.

### Updates and drivers installation
=== "Windows 11"
### Updates and drivers installation

Several features on Windows 11 (i. e. suspending the device) may not work or
work unexpectedly without installing all of the updates and drivers.
Several features on Windows 11 (i. e. suspending the device) may not work or
work unexpectedly without installing all of the updates and drivers.

To install all of them, log into the system, connect the device to the mains
and Internet, then follow the steps below:
To install all of them, log into the system, connect the device to the mains
and Internet, then follow the steps below:

1. Press the `Windows` button on the keypad.
1. Type `Windows Update Settings` in the search and press `Enter`.
1. Select the `Check for updates` bar to start installing available updates and
drivers. During this process previously selected bar might be changed to
`Restart now` or `Retry`, so click them if something hasn't been installed
yet, something has gone wrong or a restart is just required. The entire
process may take up to 30 minutes.
1. Select the `Advanced options` option in the `Windows Update Settings` window.
1. Locate the `Optional updates` option and click on it.
1. Select all displayed updates and drivers.
1. Select the `Download & Install` bar to start installing additional updates
and drivers. During this process previously selected bar might be changed
to `Restart now` or `Retry`, so click them if something hasn't been
installed yet, something has gone wrong or a restart is just required.
The entire process may take up to 30 minutes.
1. Repeat all steps until all updates have been installed.
1. Press the `Windows` button on the keypad.
1. Type `Windows Update Settings` in the search and press `Enter`.
1. Select the `Check for updates` bar to start installing available updates and
drivers. During this process previously selected bar might be changed to
`Restart now` or `Retry`, so click them if something hasn't been installed
yet, something has gone wrong or a restart is just required. The entire
process may take up to 30 minutes.
1. Select the `Advanced options` option in the `Windows Update Settings` window.
1. Locate the `Optional updates` option and click on it.
1. Select all displayed updates and drivers.
1. Select the `Download & Install` bar to start installing additional updates
and drivers. During this process previously selected bar might be changed
to `Restart now` or `Retry`, so click them if something hasn't been
installed yet, something has gone wrong or a restart is just required.
The entire process may take up to 30 minutes.
1. Repeat all steps until all updates have been installed.

### Suspend fix for SATA disks
### Suspend fix for SATA disks

Only affects laptops with M.2 SATA disks experiencing sleep issues (the power
LED not blinking while the laptop is suspended)
Only affects laptops with M.2 SATA disks experiencing sleep issues (the power
LED not blinking while the laptop is suspended)

Windows and certain Linux distros such as Ubuntu do not enable the necessary
power saving tweaks to enable sleep mode while a SATA disk is installed.
Windows and certain Linux distros such as Ubuntu do not enable the necessary
power saving tweaks to enable sleep mode while a SATA disk is installed.

1. Download the script: [link](https://raw.githubusercontent.com/Dasharo/dasharo-tools/main/clevo/sata-suspend-fixup.bat)
2. Double click on the script to install the tweak
1. Download the script: [link](https://raw.githubusercontent.com/Dasharo/dasharo-tools/main/clevo/sata-suspend-fixup.bat)
2. Double click on the script to install the tweak

### Unrecognized USB Controller device in device manager
### Unrecognized USB Controller device in device manager

Windows Update may sometimes fail to automatically install drivers for the
Thunderbolt DMA controller device. The driver may be installed manually from
the Windows Update Catalog:
Windows Update may sometimes fail to automatically install drivers for the
Thunderbolt DMA controller device. The driver may be installed manually from
the Windows Update Catalog:

1. Download the update cabinet: [Windows Update link](https://catalog.s.download.windowsupdate.com/d/msdownload/update/driver/drvs/2023/10/12081e68-169e-483b-9180-87f40ecc6904_8aa1088bc7bd88105d5c4e4a504bfb9bdcd01078.cab)
2. Right-click on the cabinet and select `Install` to install the driver
1. Download the update cabinet: [Windows Update link](https://catalog.s.download.windowsupdate.com/d/msdownload/update/driver/drvs/2023/10/12081e68-169e-483b-9180-87f40ecc6904_8aa1088bc7bd88105d5c4e4a504bfb9bdcd01078.cab)
2. Right-click on the cabinet and select `Install` to install the driver

After the update, Thunderbolt Control Center will become available and the
warning in device manager will disappear.
After the update, Thunderbolt Control Center will become available and the
warning in device manager will disappear.
39 changes: 27 additions & 12 deletions docs/unified/novacustom/building-manual.md
Original file line number Diff line number Diff line change
Expand Up @@ -294,28 +294,43 @@

## Building

1. Clone Dasharo Heads repository:
1. Clone and navigate to the Dasharo Heads repository:

```bash
git clone https://github.com/Dasharo/heads.git
cd heads
```

1. Navigate to the source code directory and checkout to the desired revision:
1. Checkout to the desired revision:

```bash
cd heads
git checkout novacustom_nv4x_adl_v0.9.0
```
=== "V560TU 14th Gen"
```bash
git checkout novacustom_v56x_mtl_v0.9.0
```

=== "NV4x 12th Gen"
```bash
git checkout novacustom_nv4x_adl_v0.9.0
```

1. Start the build inside the docker container:

```bash
docker run --rm -it -v $PWD:$PWD -w $PWD \
3mdeb/heads-docker:3.0.1 make BOARD=nitropad-nv41
```
=== "V560TU 14th Gen"
```bash
/docker_repro.sh make BOARD=novacustom-v560tu
```

This will produce a Dasharo binary placed in
`build/x86/novacustom-v560tu/dasharo-novacustom-v560tu-*.rom`.

=== "NV4x 12th Gen"
```bash
docker run --rm -it -v $PWD:$PWD -w $PWD \
3mdeb/heads-docker:3.0.1 make BOARD=nitropad-nv41
```

This will produce a Dasharo binary placed in
`build/x86/nitropad-nv41/dasharo-nitropad-nv41-*.rom`.
This will produce a Dasharo binary placed in
`build/x86/nitropad-nv41/dasharo-nitropad-nv41-*.rom`.

## Install Dasharo firmware

Expand Down
31 changes: 18 additions & 13 deletions docs/unified/novacustom/firmware-transition.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,20 +59,25 @@ back on to boot into your new Heads installation!

## Switching from Dasharo Heads back to UEFI

To revert back to UEFI, you will need to boot into DTS from a USB stick.

- Follow the [Dasharo Tools Suite
documentation](https://docs.dasharo.com/dasharo-tools-suite/documentation/running/)
to boot DTS from a USB stick
- In the DTS main menu, select `Update Dasharo firmware` to check for available
updates.
- When prompted to revert back to UEFI, press `Y`
- Proceed with [DTS firmware
update](https://docs.dasharo.com/dasharo-tools-suite/documentation/features/#firmware-update)
as usual
To revert back to UEFI, you will need to use Heads' built-in firmware update
tool:

- Prepare USB stick with UEFI firmware binary

!!! note "Supported filesystems"
FAT, exFAT or ext4 filesystem is recommended

- Insert the USB stick into the laptop
- Enter Heads main menu -> ++"Options"++ -> ++"Flash/Update the BIOS"++
- Select ++"Flash the firmware with a new ROM, erase settings"++
- Confirm that you have inserted the USB stick
- Select your downloaded firmware binary on the USB stick
- (Optional) Compare sha256 checksum with the official, signed digests available
on the `Releases` page for your device on docs.dasharo.com
- Select ++"Yes"++ to begin flashing
- When the update is done, press ++enter++ to reboot your device.

Once finished, your laptop will shut down automatically. Power it back on to
boot into your UEFI firmware.
Your device should reboot into UEFI firmware.

> When reverting to UEFI, it's not possible to restore EFI boot manager entries
> that were added before installing Heads. Therefore, you may need to re-create
Expand Down
Loading
Loading