ASUS N55SF

From ArchWiki

This article or section does not follow the Laptop page guidelines.

Reason: Stub (Discuss in Talk:ASUS N55SF)

This article or section is out of date.

Reason: Has not seen an update since 2015. (Discuss in Talk:ASUS N55SF)
Hardware PCI/USB ID Working?
Intel graphics Yes
NVIDIA graphics Needs configuration
Graphic outputs Partial
Ethernet Yes
Wireless Yes
Audio Needs configuration
Touchpad Yes
Camera Yes
USB 3.0 Yes
Card Reader Yes
Special Keys Untested
Power management Needs configuration

Hardware

CPU: Intel Core i7-2630QM @ 2.00GHz

Mainboard: Intel HM65 Express

RAM: 6/8GB DDR3

Display: 15,6" HD LED (1920x1080)

Graphics adapter: Intel Core Processor Integrated Graphics Controller, NVIDIA GeForce GT 555M

Soundcard: Integrated Intel HDA, Bang & Olufsen speakers with external subwoofer

Network: Atheros Gigabit Ethernet Controller, Intel Centrino Wireless-N 1030

Hard disk: Seagate Momentus 750GB 5400rpm SATA

Webcam: IMC Networks

Touchpad: Synaptics

There is a BIOS update (v207) on ASUS support website (go to the English one if you do not find) that fix the numpad bug.

Audio

Follow the official documentation: ALSA or/and PulseAudio

Subwoofer

Pulseaudio

We need PulseAudio profile which will use surround21 ALSA device.

/usr/share/pulseaudio/alsa-mixer/profile-sets/default.conf
...
[Mapping analog-surround-21]
device-strings = surround21:%f
channel-map = front-left,front-right,lfe
paths-output = analog-output analog-output-lineout analog-output-speaker analog-output-desktop-speaker
priority = 10
direction = output
...

Lfe remixing must be enabled for remixing third channel.

~/.config/pulse/daemon.conf
enable-lfe-remixing = yes

To prevent volume changing of PCM set volume to ignore in:

/usr/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
[Element PCM]
switch = on
volume = ignore
override-map.1 = all
override-map.2 = all-left,all-right

Install blop,cmt and ladspa and append these lines to your default.pa if you want to configure subwoofer on every PulseAudio daemon start:

Note: Before using this configuration you should change alsa_output.pci-0000_00_1b.0.analog-stereo-21 to your own name of sink(you can find names of your sinks in PulseAudio with command $ pactl list sinks ).
~/.config/pulse/default.pa
load-module module-ladspa-sink  sink_name=ladspa_low_pass master=alsa_output.pci-0000_00_1b.0.analog-stereo-21 plugin=lp4pole_1671 label=lp4pole_fcrcia_oa control=200,0
load-module module-remap-sink   sink_name=remapLFE        master=ladspa_low_pass                               remix=no   channels=1 master_channel_map=lfe                    channel_map=lfe
load-module module-remap-sink   sink_name=remap20         master=alsa_output.pci-0000_00_1b.0.analog-stereo-21 remix=no   channels=2 master_channel_map=front-left,front-right channel_map=front-left,front-right
load-module module-combine-sink sink_name=combine         slaves=remap20,remapLFE                                         channels=3                                           channel_map=front-left,front-right,lfe
set-default-sink combine

Commands to control volume:

pactl set-sink-volume 0 +10%
pactl set-sink-volume 0 -- -10%
pactl set-sink-mute 0 toggle
Note: When we compare PulseAudio and ALSA low pass filter configuration we find out that subwoofer is less heard, it is because PulseAudio use own remixing method which sends to subwoofer half of left and right channel.

ALSA

External subwoofer + low pass filter configuration. Configuration uses blop,cmt and ladspa.

/etc/asound.conf
# upmix 2channels to 3, one for LFE
pcm.upmix2021 {
    type plug
    slave.pcm lowpass2121
    slave.channels 3
    ttable {
        0.0    1
        1.1    1
        0.2    1
        1.2    1
    }
}

# low pass filter for LFE channel
pcm.lowpass2121 {
    type ladspa
    slave.pcm upmix2121
    path "/usr/lib/ladspa"
    channels 3
    plugins {       
        0 {
            id 1672 # 4 Pole Low-Pass Filter with Resonance (FCRCIA) (1672/lp4pole_fcrcia_oa)
            policy none
            input.bindings.2 "Input";
            output.bindings.2 "Output";
            input { controls [ 200 0 ] }
        }
        1 {
            id 1098
            policy duplicate
            input.bindings.0 "Input";
            output.bindings.0 "Output";        
        }         
    }
}

pcm.upmix2121 {
    type plug
    slave.pcm surround21
    slave.channels 3
    ttable {
        0.0 1
        1.1 1
        2.2 1
    }
}

pcm.!default upmix2021