Translation(s): none

DebianOn is an effort to document how to install, configure and use Debian on some specific hardware. Therefore potential buyers would know if that hardware is supported and owners would know how get the best out of that hardware.

The purpose is not to duplicate the Debian Official Documentation, but to document how to install Debian on some specific hardware.

Models covered

ASUS N551JW-CN068H

CPU:

Intel i7-4720HQ

Integrated video card:

Intel HD Graphics 4600

Discrete video card:

Nvidia ?GeForce GTX 960M 4GB GDDR5

Screen:

15.6" 16:9 Full HD (1920x1080)

Wireless card:

Qualcomm Atheros AR9485

Disks:

2.5" SATA3 1TB HDD 7200 RPM

RAM:

DDR3L 1600 MHz SDRAM 16GB

Bluetooth:

Atheros AR3012

Overall Status in Debian Stretch

Core Components

[ATTACH]

Boot Standard Kernel:

{OK}

LAN network card:

{OK}

Detect CD/DVD:

{OK}

Detect hard drives:

{OK}

CPU:

{OK}

Extra Features

Shutdown

{OK}

Reboot

{OK}

Hibernation

{OK}

Sleep / Suspend

{OK}

Display

- Integrated Intel video card

{OK}

- Discrete Nvidia video card

X-(

Screen backlight

{OK}

Switch to External Screen (HDMI)

{OK}

Built-in Touchpad

{OK}

Bluetooth

X-(

Wifi

{OK}

Keyboard's Hotkeys

{OK} (not all keys)

Audio

- Built-in speakers and microphone

{OK}

- External headphone (combo audio jack)

{OK}

- External microphone (combo audio jack)

/!\

- ?SonicMaster external subwoofer

{i}

MicroSD card reader

{OK}

Built-in camera

{OK}

Legend :
{OK} = OK ; {X} Unsupported(No Driver) ; /!\ = Error (Couldn't get it working); [?] Unknown, Not Test ; [-] Not-applicable
{i} = Configuration Required; X-( = Only works with a non-free driver and or firmware

Configuration

Display

The integrated video card is an Intel HD Graphics 4600 and it does not require the i915 driver (if present, the xserver-xorg-video-intel package can be uninstalled).

The discrete video card is an Nvidia ?GeForce GTX 960M and it should be used with Bumblebee. This video card works well with the Nvidia proprietary drivers (bumblebee-nvidia, nvidia-driver) but it may not work with the free ones (xserver-xorg-video-nouveau).

Audio

The built-in speakers and microphone work out of the box. This model has a headphone/microphone combo jack but only headphones seem to work.

SonicMaster external subwoofer

A configuration of the sound subsystem is required in order to use the ?SonicMaster external subwoofer. Please read the official HD-Audio documentation to understand the procedure described in the following.

The HD-Audio setup can be modified by using a firmware file, a patch file in plain text (see HD-Audio early patching). The required patch file can be created in this way:

cat << EOF | sudo tee /lib/firmware/asus-n551jw-subwoofer.fw > /dev/null
[codec]
$(cat /sys/class/sound/hwC1D0/vendor_id) $(cat /sys/class/sound/hwC1D0/subsystem_id) 0

[pincfg]
0x1a 0x90170151
EOF

Please pay attention that in the above code, under the [codec] section, /sys/class/sound/hwC1D0 refers to the ALC668 codec and should not be confused with /sys/class/sound/hwC0D0, the HDMI codec, that requires no changes (see HD-Audio reconfiguration for more info). In the [pincfg] section the first string, 0x1a, is the subwoofer pin and the second one, 0x90170151, is its configuration as Internal Speaker (LFE) (Bass only information).

The patch file then has to be declared as an option for the snd-hda-intel module:

echo "options snd-hda-intel patch=,asus-n551jw-subwoofer.fw" | \
sudo tee /etc/modprobe.d/asus-n551jw-subwoofer.conf > /dev/null

Please pay attention that the patch module option is specific to each card instance and it requires one file name for each instance, separated by commas (e.g. patch=hdmi-patch,on-board-patch). In this case the first file name, for the HDMI, is empty because it is not needed.

The last step is to configure PulseAudio (no tests were done for Alsa only setup), in this way:

cat << EOF > ~/.config/pulse/daemon.conf
default-sample-channels = 3
enable-lfe-remixing = yes
default-channel-map = front-left,front-right,lfe
lfe-crossover-freq = 250
EOF

Please check man pulse-daemon.conf for detailed info. The last string is a suggestion given in this post:

At this point the system has to be rebooted in order to apply the changes. Then it will be possible to choose two more configurations for the audio device: analogic sorround 2.1 (suggested) and analogic sorround 4.0 (the subwoofer acts as a rear right speaker).

Touchpad

The touchpad works out of the box but it lacks some functionalities with the default libinput driver. To solve this issue it is possible to make the synaptics driver take precedence over libinput (see Synpatics Touchpad - Change to libinput Xorg driver in Debian 9 "Stretch"):

sudo apt install xserver-xorg-input-synaptics
sudo cp /usr/share/X11/xorg.conf.d/70-synaptics.conf /etc/X11/xorg.conf.d/

Bluetooth

The Bluetooth requires the proprietary firmware (ar3k/AthrBT_0x01020200.dfu) provided by the package firmware-atheros.


System Summary

lspci

00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller [8086:0c04] (rev 06)                                                                                                                     
00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller [8086:0c01] (rev 06)                                                                                                           
00:02.0 VGA compatible controller [0300]: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller [8086:0416] (rev 06)
00:03.0 Audio device [0403]: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor HD Audio Controller [8086:0c0c] (rev 06)
00:14.0 USB controller [0c03]: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI [8086:8c31] (rev 05)
00:16.0 Communication controller [0780]: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 [8086:8c3a] (rev 04)
00:1a.0 USB controller [0c03]: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 [8086:8c2d] (rev 05)
00:1b.0 Audio device [0403]: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller [8086:8c20] (rev 05)
00:1c.0 PCI bridge [0604]: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 [8086:8c10] (rev d5)
00:1c.1 PCI bridge [0604]: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #2 [8086:8c12] (rev d5)
00:1c.2 PCI bridge [0604]: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3 [8086:8c14] (rev d5)
00:1c.3 PCI bridge [0604]: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #4 [8086:8c16] (rev d5)
00:1d.0 USB controller [0c03]: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 [8086:8c26] (rev 05)
00:1f.0 ISA bridge [0601]: Intel Corporation HM86 Express LPC Controller [8086:8c49] (rev 05)
00:1f.2 SATA controller [0106]: Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] [8086:8c03] (rev 05)
00:1f.3 SMBus [0c05]: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller [8086:8c22] (rev 05)
01:00.0 3D controller [0302]: NVIDIA Corporation GM107M [GeForce GTX 960M] [10de:139b] (rev ff)
04:00.0 Network controller [0280]: Qualcomm Atheros AR9485 Wireless Network Adapter [168c:0032] (rev 01)
05:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTL8411B PCI Express Card Reader [10ec:5287] (rev 01)
05:00.1 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 12)

lsusb

Bus 002 Device 002: ID 8087:8000 Intel Corp. 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 004: ID 04f2:b3fd Chicony Electronics Co., Ltd 
Bus 003 Device 014: ID 13d3:3402 IMC Networks 
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub