Difference between revisions of "ASUS Eee PC 1025c"

From ArchWiki
Jump to: navigation, search
m (Undo revision 274179 by Dfe (talk))
(I don't think we're gonna get a better GMA500 driver anytime soon.)
 
(26 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{Box BLUE|Caution:|I am learning linux with arch and my Eee PC. So my solutions may be not the best.}}
 
 
 
[[Category:ASUS]]
 
[[Category:ASUS]]
 +
{{Poor writing|}}
 +
{{Note|This laptop uses a [[Poulsbo]] GPU. Hardware acceleration for GPU-related tasks is unsupported. Use the VESA display driver.}}
 +
 +
== Bootloader ==
 +
 +
Use i686 even if Intel ARK mentions support for Intel 64. The Arch ISO will detect i686.
 +
 +
For BIOS legacy boot, create a [[USB flash installation media#Using_dd|USB stick with dd]]. Press F2 to go into the boot menu. Choose the entry for your USB stick that doesn't say "UEFI:".
 +
The BIOS gives an option for UEFI booting but the option seems to be broken.
 +
 +
== Audio ==
 +
 +
=== Mono format ===
 +
 +
In case of missing voices, play all sounds in mono format. Using [[ALSA]] add to {{ic|.asoundrc}}:
 +
{{hc|~/.asoundrc|2=<nowiki>
 +
pcm.card0 {
 +
  type hw
 +
  card 0
 +
}
 +
 +
ctl.card0 {
 +
  type hw
 +
  card 0
 +
}
 +
 +
pcm.monocard {
 +
  slave.pcm card0
 +
  slave.channels 2
 +
#  type plug
 +
  type route
 +
  ttable {
 +
  # Copy both input channels to output channel 0 (Left).
 +
    0.0 1
 +
    1.0 1
 +
  # Send nothing to output channel 1 (Right).
 +
    0.1 0
 +
    1.1 0
 +
  }
 +
}
 +
 +
ctl.monocard {
 +
  type hw
 +
  card 0
 +
}
 +
 +
pcm.!default monocard
 +
</nowiki>}}
 +
 +
Save and reload ALSA.
 +
 +
To set mono in a [[PulseAudio]], run:
 +
 +
  $ pacmd list-sinks | grep name | head -n1
 +
 +
To get the master device name. The output of command will look like this:
 +
 +
  name: <alsa_output.pci-0000_00_1b.0.analog-stereo>
 +
 +
Put device name (in my case ''alsa_output.pci-0000_00_1b.0.analog-stereo'') in field 'master' of the command below:
 +
 +
  $ pacmd load-module module-remap-sink sink_name=mono master=alsa_output.pci-0000_00_1b.0.analog-stereo channels=2 channel_map=front-right,mono
 +
 +
This only works if PulseAudio is running. To make this permanent, add the pacmd argument last to {{ic|/etc/pulse/default.pa}}:
 +
 +
  # echo "load-module module-remap-sink sink_name=mono master=alsa_output.pci-0000_00_1b.0.analog-stereo channels=2 channel_map=front-right,mono" >> /etc/pulse/default.pa
 +
 +
== HDMI ==
  
==Bootloader==
+
=== Video ===
The BIOS doesn't seem to support EFI boot on an ArchISO USB stick, even though it detects it as a UEFI bootable medium. Install with a BIOS bootloader unless you know what you're doing. If you are able to boot in UEFI mode, then please add a tutorial.
+
  
==HDMI==
 
===Video===
 
 
You have to change the [[Poulsbo|video driver]].  
 
You have to change the [[Poulsbo|video driver]].  
If the HDMI cable is plugged in on boot it is enabled automatically. If it is plugged in after boot you can use [[xrandr]] to enable the second monitor:
+
If the HDMI cable is plugged in, it is enabled on boot. If plugged in after boot, use [[xrandr]] to enable the second monitor:
  
 
  # xrandr --output DVI-0 --auto
 
  # xrandr --output DVI-0 --auto
  
===Audio===
+
=== Audio ===
You need to know the number of your sound card and the the number of HDMI device:
+
 
 +
You need to know the number of your sound card and the the HDMI device number:
  
 
{{hc|aplay -l|2=<nowiki>
 
{{hc|aplay -l|2=<nowiki>
**** Liste der Hardware-Geräte (PLAYBACK) ****
 
 
Karte 0: Intel [HDA Intel], Gerät 0: ALC269VB Analog [ALC269VB Analog]
 
Karte 0: Intel [HDA Intel], Gerät 0: ALC269VB Analog [ALC269VB Analog]
 
   Sub-Geräte: 1/1
 
   Sub-Geräte: 1/1
Line 26: Line 89:
 
</nowiki>}}
 
</nowiki>}}
  
====Global====
+
==== Global ====
 +
 
 +
In {{ic|/usr/share/alsa/alsa.conf}} search the lines
  
In /usr/shared/alsa/alsa.conf search the lines
 
 
  default.pcm.card 0
 
  default.pcm.card 0
 
  default.pcm.device 0
 
  default.pcm.device 0
  
If you change the numbers to your card and device (in my case card is 0 and device is 3) and reboot the audio output switches to HDMI.
+
If you change the numbers to your card and device (in my case card is 0 and device is 3) and reboot, the audio output switches to HDMI.
 +
 
 +
==== User specific ====
 +
 
 +
See [[Advanced Linux Sound Architecture#HDMI Output Does Not Work]].
  
====User specific====
+
==== Dynamic ====
do [[Advanced_Linux_Sound_Architecture#HDMI_Output_Does_Not_Work|this]] and reboot
+
  
====Dynamic====
+
The audio device can also be configured with {{ic|/etc/asound.conf}}
The audio device can also be configured with /etc/asound.conf  
+
 
So you can create a script that links asound.conf to a configuration depending on the hdmi cable plugged in or not: (for some reason my HDMI device is listed as DVI)
 
So you can create a script that links asound.conf to a configuration depending on the hdmi cable plugged in or not: (for some reason my HDMI device is listed as DVI)
  
Line 72: Line 138:
 
If you also want to change to monitor read [[Advanced_Linux_Sound_Architecture#Using_udev_to_automatically_turn_HDMI_audio_on_or_off|this]].
 
If you also want to change to monitor read [[Advanced_Linux_Sound_Architecture#Using_udev_to_automatically_turn_HDMI_audio_on_or_off|this]].
  
==Screen Brightness==
+
== Screen Brightness ==
===acpi===
+
Setting brightness in /sys/class/backlight/acpi_video0/ with the scripts for [[acpid#Enabling_backlight_control|acpid]] change the values of the files ''brightness'' and ''actual_brightness'' but do not have any effect on current screen brightness.
+
  
Set the [[Backlight#ACPI|following]] as kernel parameters in your bootloader
+
The backlight directory is /sys/class/backlight/acpi_video0. The display keys are now handled by the kernel.
acpi_osi=Linux acpi_backlight=vendor
+
 
+
To make this permant [[Kernel_parameters#GRUB|see here]]
+
 
+
==== FN Keys ====
+
Now there is a folder ''eeepc-wmi'' in /sys/class/backlight and the scripts need to be updated
+
{{hc|/etc/acpi/actions/bl_up.sh|<nowiki>
+
  #!/bin/sh
+
  bl_device=/sys/class/backlight/eeepc-wmi/brightness
+
  echo $(($(cat $bl_device)+1)) >$bl_device
+
</nowiki>}}
+
 
+
{{hc|/etc/acpi/actions/bl_down.sh|<nowiki>
+
  #!/bin/sh
+
  bl_device=/sys/class/backlight/eeepc-wmi/brightness
+
  echo $(($(cat $bl_device)-1)) >$bl_device
+
</nowiki>}}
+
 
+
The scripts change the screen brightness everytime I run them. Unfortunately the acpi events for brightnessup and brightnessdown are not available anymore although the brightnessup key sets brightness to maximum and the brightnessdown key sets the brightness to max_brightness-1 :( (do not now where this happens) --> [https://bbs.archlinux.org/viewtopic.php?pid=1200593&ei=NZLMUPKhLonasgbX74CgBw&usg=AFQjCNG2D4H-8dfxK1wGjs78YDjvy-kH_A&bvm=bv.1355325884,d.Yms this may help]
+
 
+
When using the [[Enlightenment]] 17 window manager, the brightness keys will work without any additional configuration and the backlight can be adjusted using the built-in backlight widget.
+
 
+
==== AC plug / unplug ====
+
{{hc|/etc/acpi/handler.sh|<nowiki>
+
..
+
ac_adapter)
+
        case "$2" in
+
            ACPI0003:00)
+
                case "$4" in
+
                    00000000)
+
                        logger 'AC unpluged'
+
                        echo $(($(cat /sys/class/backlight/eeepc-wmi/max_brightness)/2)) > /sys/class/backlight/eeepc-wmi/brightness
+
;;
+
                    00000001)
+
                        logger 'AC pluged'
+
                        echo $(($(cat /sys/class/backlight/eeepc-wmi/max_brightness)-1)) > /sys/class/backlight/eeepc-wmi/brightness
+
;;
+
                esac
+
                ;;
+
            *)
+
                logger "AC Adapter ACPI action undefined: $2"
+
;;
+
        esac
+
        ;;
+
..
+
</nowiki>}}
+

Latest revision as of 02:37, 18 May 2016

Tango-edit-clear.pngThis article or section needs language, wiki syntax or style improvements.Tango-edit-clear.png

Reason: (Discuss in Talk:ASUS Eee PC 1025c#)
Note: This laptop uses a Poulsbo GPU. Hardware acceleration for GPU-related tasks is unsupported. Use the VESA display driver.

Bootloader

Use i686 even if Intel ARK mentions support for Intel 64. The Arch ISO will detect i686.

For BIOS legacy boot, create a USB stick with dd. Press F2 to go into the boot menu. Choose the entry for your USB stick that doesn't say "UEFI:". The BIOS gives an option for UEFI booting but the option seems to be broken.

Audio

Mono format

In case of missing voices, play all sounds in mono format. Using ALSA add to .asoundrc:

~/.asoundrc
pcm.card0 {
  type hw
  card 0
}

ctl.card0 {
  type hw
  card 0
}

pcm.monocard {
  slave.pcm card0
  slave.channels 2
#  type plug
  type route
  ttable {
   # Copy both input channels to output channel 0 (Left). 
    0.0 1
    1.0 1
   # Send nothing to output channel 1 (Right). 
    0.1 0
    1.1 0
  }
}

ctl.monocard {
  type hw
  card 0
} 

pcm.!default monocard

Save and reload ALSA.

To set mono in a PulseAudio, run:

 $ pacmd list-sinks | grep name | head -n1 

To get the master device name. The output of command will look like this:

 name: <alsa_output.pci-0000_00_1b.0.analog-stereo>

Put device name (in my case alsa_output.pci-0000_00_1b.0.analog-stereo) in field 'master' of the command below:

 $ pacmd load-module module-remap-sink sink_name=mono master=alsa_output.pci-0000_00_1b.0.analog-stereo channels=2 channel_map=front-right,mono

This only works if PulseAudio is running. To make this permanent, add the pacmd argument last to /etc/pulse/default.pa:

 # echo "load-module module-remap-sink sink_name=mono master=alsa_output.pci-0000_00_1b.0.analog-stereo channels=2 channel_map=front-right,mono" >> /etc/pulse/default.pa

HDMI

Video

You have to change the video driver. If the HDMI cable is plugged in, it is enabled on boot. If plugged in after boot, use xrandr to enable the second monitor:

# xrandr --output DVI-0 --auto

Audio

You need to know the number of your sound card and the the HDMI device number:

aplay -l
Karte 0: Intel [HDA Intel], Gerät 0: ALC269VB Analog [ALC269VB Analog]
  Sub-Geräte: 1/1
  Sub-Gerät #0: subdevice #0
Karte 0: Intel [HDA Intel], Gerät 3: HDMI 0 [HDMI 0]
  Sub-Geräte: 1/1
  Sub-Gerät #0: subdevice #0

Global

In /usr/share/alsa/alsa.conf search the lines

default.pcm.card 0
default.pcm.device 0

If you change the numbers to your card and device (in my case card is 0 and device is 3) and reboot, the audio output switches to HDMI.

User specific

See Advanced Linux Sound Architecture#HDMI Output Does Not Work.

Dynamic

The audio device can also be configured with /etc/asound.conf So you can create a script that links asound.conf to a configuration depending on the hdmi cable plugged in or not: (for some reason my HDMI device is listed as DVI)

hdmi_switched.sh
#! /bin/bash
hdmi_status="$(cat /sys/class/drm/card0-DVI-D-1/status)"
ln -f "/etc/alsa/hdmi_$hdmi_status" /etc/alsa/asound.conf
alsactl restore

Configuration files:

hdmi_connected
pcm.!default {
      type hw
      card 0
      device 3 
}
hdmi_disconnected
pcm.!default {
      type hw
      card 0
      device 0 
}

Create a symbolic link to /etc/asound.conf

ln -s /etc/alsa/asound.conf /etc/asound.conf

If the user is allowed to run the hdmi_switch.sh script and is also allowed to change files in /etc/alsa folder you can bind that script to a key :D If you also want to change to monitor read this.

Screen Brightness

The backlight directory is /sys/class/backlight/acpi_video0. The display keys are now handled by the kernel.