You are on page 1of 7

24/02/2017 TUMBLEWEED Enable the subwoofer on Asus N551

Advanced Search

Downloads Support Community Development

Forum Articles Blogs What's New?


Help Login Register

New Posts FAQ Calendar Forum Actions Quick Links


> Forum > English > Get Technical Help Here > How To/FAQ Forums > Unreviewed How To and FAQ >
TUMBLEWEED Enable the subwoofer on Asus N551

Welcome! If this is your first visit, be sure to check out the FAQ. You will have to register before
you can post in the forums. (Be aware the forums do not accept user names with a dash "-")
Also, logging in lets you avoid the CAPTCHA verification when searching . Select Articles,
Forum, or Blog. Posting in the Forums implies acceptance of the Terms and Conditions.

This forum is
NOT for
asking
questions, but
contains
submissions
to be
reviewed and
potentially
moved to the
How To/FAQ
area. If you
see
something
here you really
like and feel
should be
permanent,
take a couple
of seconds
and give the
thread a
rating.
Alternately, if
you see
something
here you don't
think should
be made
permanent for
one reason or
https://forums.opensuse.org/showthread.php/509661-Enable-the-subwoofer-on-Asus-N551 1/7
24/02/2017 TUMBLEWEED Enable the subwoofer on Asus N551

another,
comment in
the thread and
give the
thread the
appropriate
rating. Your
input will help
pinpoint which
items posted
here are the
important
ones. Thanks
for taking the
time to help.

Results 1 to 3 of 3

Thread: Enable the subwoofer on Asus N551


Thread Tools Display

11-Sep-2015, 07:55 #1

OrsoBruno Join Date: Oct 2014

Wise Pengu in Location: Italy

Posts: 1,024

Enable the subwoofer on Asus N551

The Asus N551 comes equipped with an external subwoofer, like a few other similar models.
Needless to say, the subwoofer doesn't work in Linux out of the box.
Apparently, BIOS setup of the snd-hda-intel driver is only basic and the subwoofer amplifier is not connected to
any codec output.
Searching the Net for a solution, I found a number of "fixes", mainly in Arch or *buntu forums, but none worked
satisfactorily in OpenSUSE (Tumbleweed, actually), maybe because of distribution, model or BIOS dependent
details.
So I tweaked the fix found here and did what follows (with root privileges).

1) Create file /etc/modprobe.d/50-asus-n551-hda-fix.conf which contains:

Code:
options snd-hda-intel patch=asus-n551-hda-fix.fw,asus-n551-hda-fix.fw

2) Create file /lib/firmware/asus-n551-hda-fix.fw which contains:

Code:
[codec]
0x10ec0668 0x104313bf 0
[model]
asus-mode8
[pincfg]
https://forums.opensuse.org/showthread.php/509661-Enable-the-subwoofer-on-Asus-N551 2/7
24/02/2017 TUMBLEWEED Enable the subwoofer on Asus N551
[pincfg]
0x1a 0x90170150

The first block addresses the Realtek ALC668 codec that drives the internal speakers.
The second identifies the correct setup for the sound board in the N551 (activating also the internal "capture"
microphone, by the way).
The third connects the subwoofer jack to the "internal speaker" output of the codec.

3) Reboot and have a lot of fun with OpenSUSE, the N551 with subwoofer and your favourite music!

The subwoofer acts as a "Right speaker" in Stereo mode, as a "Subwoofer" in 2.1 mode (but you need a
genuine 2.1 source, the codec won't synthesise it for you), and as a "Rear Right speaker" in 4.0 mode.

This was tested with a N551JW, BIOS rev. 207, openSUSE 20150819 (Tumbleweed) (x86_64) with Gnome
3.16.2.

It should work with similar models (ASUS N550, N56, ...) and other OS versions with recent kernel and alsa,
but I can't test.

If this is not the case, try installing hdajackretask and launch it from a terminal.
A GUI opens, choose "Realtek ALC 668" in the codec combo box.
Tick the option "Show unconnected pins".
Scroll down to Pin ID: 0x1a
Tick Override
Choose "Internal speaker" in the combo box.
Push "Install boot override" (root password needed) and close the "Ok, now reboot..." prompt.
DO NOT REBOOT at this stage.

Look for file /lib/firmware/hda-jack-retask.fw and open it. It should contain something like:

Code:
[codec]
0x10ec0668 0x104313bf 0 <<<<<<<<<
[pincfg]
0x12 0x99a30970
0x14 0x99130110
0x15 0x01214020
0x16 0x40000000
0x18 0x01a19840
0x19 0x411111f0
0x1a 0x90170150 <<<<<<<<<<<<<<<<<
0x1b 0x411111f0
0x1d 0x40c6832d
0x1e 0x411111f0
0x1f 0x411111f0

Check the two highligthed lines and change file /lib/firmware/asus-n551-hda-fix.fw accordingly, if needed.

Before rebooting, be sure to push "Remove boot override" in hdajackretask (apparently this override
scrambles something in the microphone setup, beyond connecting the subwoofer).

Reboot with your fingers crossed.


Maybe checking that no speaker is muted, with alsamixer for instance, avoids the obvious.
If still no joy, look out for a better fix and let us know...

11-Nov-2015, 07:25 #2

OrsoBruno Join Date: Oct 2014

Wise Pengu in Location: Italy

Posts: 1,024

https://forums.opensuse.org/showthread.php/509661-Enable-the-subwoofer-on-Asus-N551 3/7
24/02/2017 TUMBLEWEED Enable the subwoofer on Asus N551

Re: Enable the subwoofer on Asus N551 with full 2.1 surround

It is possible to have a full 2.1 experience with the ASUS N551; just add the following to my former
recommendations.

Uncomment and change the following two lines in /etc/pulse/daemon.conf


Code:
default-sample-channels = 3
default-channel-map = front-left,front-right,lfe

Please note that in openSUSE the following is the default, so no need touching that:
Code:
; enable-remixing = yes
; enable-lfe-remixing = yes
; lfe-crossover-freq = 120

Choose "Analog Surround 2.1 Output" in the Gnome Sound settings panel and enjoy a gorgeous 2.1 sound,
with full bass from the subwoofer.

Thanks to impossiblyfunky for pointing out this Arch Linux link:


https://wiki.archlinux.org/index.php/ASUS_G750JH#Sound

Main: Leap 42.2 Gnome on i7 4720HQ + Geforce GTX960M


Test: Leap 42.2 (& others) on Core2Duo + GM965

04-Jan-2016, 08:35 #3

OrsoBruno Join Date: Oct 2014

Wise Pengu in Location: Italy

Posts: 1,024

Updated setup for ASUS N551

The following setup applies as stated to N551 models only; other similar models might require tweaking here
and there.

The must have


1) Create file /etc/modprobe.d/50-asus-n551-hda-fix.conf with the following content:

Code:
options snd-hda-intel patch=,asus-n551-hda-fix.fw

Please note the comma after the = sign: the codec to be patched is in the second card.
The first card (HDMI codec) needs no patching.

2) Create file /lib/firmware/asus-n551-hda-fix.fw with the following content:

Code:
[codec]
0x10ec0668 0x104313bf 0

[pincfg]
https://forums.opensuse.org/showthread.php/509661-Enable-the-subwoofer-on-Asus-N551 4/7
24/02/2017 TUMBLEWEED Enable the subwoofer on Asus N551
[pincfg]
0x1a 0x90170151

This is needed to connect pin "0x1a" (wired to the yellow jack on the N551 right side) to the "Internal speaker
(LFE)" DAC output "0x90170151" on the Realtek ALC668 codec.

3) Add the following line either to ~/.config/pulse/daemon.conf on a per-user basis or to /etc/pulse/daemon.conf


on a system-wide basis:

Code:
lfe-crossover-freq = 250

The beer can size "SonicMaster" subwoofer shipped with the N551 has a resonance at about 160 Hz, the
internal speakers show a resonance at about 380 Hz: a 250 Hz crossover allows both to perform at their best.
The Pulseaudio default at 120 Hz would cut off most of the output from the SonicMaster.

At this point you should be able to select "Analog Surround 2.1 Output" on your desktop sound
panel or on Pulseaudio Volume Control and enjoy 2.1 audio on the N551.

The optionals
A) The following lines added to daemon.conf yield a somewhat clearer sound, matching one of the native PCM
formats of the ALC668 at 24 bits/48 kHz:

Code:
default-sample-format = s24le
default-sample-rate = 48000
alternate-sample-rate = 44100

I didn't hear any further improvement with other options available on my test unit.

B) The following lines might be added to daemon.conf if your system occasionally refuses to engage properly
the 2.1 output, even though they seem not to be essential and are usually overridden by something else in the
system.

Code:
default-sample-channels = 3
default-channel-map = front-left,front-right,lfe

NOTES
The individual volume controls for the subwoofer in the desktop sound panel or pavucontrol don't work; use
alsamixer if you need to adjust the subwoofer output independently of the master output volume.

The internal stereo mic works, but to enable the headphone mic (when inserted) you have to play with
hdajackretask and find a line to add to [pincfg] in asus-n551-hda-fix.fw [see point 2) above]: apparently there is
no automatic sensing to assess whether the jack inserted in the black side socket should be treated as a
headset, a headphone, an external speaker or an external mic.

HINTS for other similar models


Apparently every ASUS model has its own wiring and codec and many hints found over the net, like using
asus-modeX on the snd_hda_intel kernel module options, may apply to ASUS motherboards rather than
laptops; so you may have to tweak the setup to your specific model.

H1) Try hdajacksensetest with everything unplugged, then with the subwoofer plugged in: it should show which
pin is connected to the subwoofer jack so that it can be checked with hdajackretask according to post#1 in
this thread.

https://forums.opensuse.org/showthread.php/509661-Enable-the-subwoofer-on-Asus-N551 5/7
24/02/2017 TUMBLEWEED Enable the subwoofer on Asus N551
Code:
LT_B:/home/bruno # hdajacksensetest -c 1 -a
Pin 0x12 (Internal Mic): present = No
Pin 0x14 (Internal Speaker): present = No
Pin 0x15 (Black Headphone, Right side): present = No
Pin 0x16 (Not connected): present = No
Pin 0x18 (Not connected): present = No
Pin 0x19 (Not connected): present = No
Pin 0x1a (Internal Speaker): present = Yes <<<<<<< check this one <<<<
Pin 0x1b (Not connected): present = No
Pin 0x1d (Not connected): present = No
Pin 0x1e (Not connected): present = No
Pin 0x1f (Not connected): present = No
LT_B:/home/bruno #

H2) Many ASUS laptops appear to use the ALC662 codec; accordingly, hdajackretask might suggest that the
first lines in asus-<yourmodelhere>-hda-fix.fw should read something like:

Code:
[codec]
0x10ec0662 0x.......
[pincfg]
0x.. 0x.........

H3) Play with hdajackretask until you find a suitable setup (see post#1 for details)

H4) Larger models like the N751 might require a lower crossover frequency for best performance, maybe 200 to
220 Hz.
Models with integrated subwoofer or array speakers, like some ROG models, might need some experiments to
find their resonant frequencies and then guess the best crossover frequency.

Main: Leap 42.2 Gnome on i7 4720HQ + Geforce GTX960M


Test: Leap 42.2 (& others) on Core2Duo + GM965

« Previous Thread | Next Thread »

Tags for this Thread

asus, n551, subwoofer


View Tag Cloud

Bookmarks Posting Permissions

Digg You may not post new BB code is On


del.icio.us threads Smilies are On
StumbleUpon You may not post [IMG] code is On
replies [VIDEO] code is
Google
You may not post On
Facebook
attachments HTML code is Off
Twitter
You may not edit your
Forum Rules
posts

https://forums.opensuse.org/showthread.php/509661-Enable-the-subwoofer-on-Asus-N551 6/7
24/02/2017 TUMBLEWEED Enable the subwoofer on Asus N551

Contact Us openSUSE Forums Archive Privacy Statement Terms & Conditions Top -- openSUSE-CMS -- English

All mes are GMT -7. The me now is 08:08.


© 2015 SUSE, All Rights Reserved.

https://forums.opensuse.org/showthread.php/509661-Enable-the-subwoofer-on-Asus-N551 7/7

You might also like