个人工具

UbuntuHelp:NC10

来自Ubuntu中文

Wikibot讨论 | 贡献2008年12月16日 (二) 19:39的版本 (新页面: {{From|https://help.ubuntu.com/community/NC10}} {{Languages|UbuntuHelp:NC10}} == Ubuntu Intrepid Ibex 8.10 on the Samsung NC10 == ==== Fully functional 'out of the box': ==== * Video (wit...)

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航, 搜索

Ubuntu Intrepid Ibex 8.10 on the Samsung NC10

Fully functional 'out of the box':

  • Video (with desktop effects)
  • Wired networking
  • USB (for mass storage devices)
  • Webcam
  • Suspend / resume
  • Samsung 3G USB wireless broadband modem (if present)

Fully functional after driver updates:

  • Wireless networking
  • Audio (internal speakers now turn off when headphones are in use)
  • Internal mic

Not functional:

  • Fn Brightness keys (workaround available)
  • Wi-Fi On / off switch
  • Multi-touch

Installation

Prerequisites:

Before you begin you will need the following:

  • A USB drive
  • A downloaded image (iso) of the Ubuntu Intrepid installation CD (not required for UNETBOOTIN method)

Before you begin you will need to know the following:

  • How to use terminal
  • How to edit and save files e.g., by using gedit

Creating USB startup disk:

Method 1: (From an Ubuntu Intrepid computer, or computer running Ubuntu Intrepid Live CD) UBUNTU USB TOOL

Go to System -> Administration and select Create a USB startup disk. Select the Ubuntu image and the USB device, then press the Make startup disk button at the bottom of the window. (Either of the options at the bottom of the window, regarding saving documents and settings, will work with this method, so pick your preference.) After it is finished, [[UbuntuHelp:[install|install from the USB startup disk]]]

Method 2: (From any Windows or Linux Computer) UNETBOOTIN

Download Unetbootin to your computer and plug in your USB drive. Follow the instructions at the UNetbootin website to create a USB startup disk. When the startup disk is ready, [[UbuntuHelp:[install|install from the USB startup disk]]] <<Anchor(install)>>

Installing to NC10 from the USB startup disk:

Plug in your USB startup disk, then reboot the computer. You may need to change your NC10's boot settings so that it will boot from a plugged-in USB disk; to check, press F2 when the Netbook is first turning on to enter BIOS setup. When you have verified this, save changes and exit BIOS setup. The computer should then boot from the USB startup disk, offering you an Ubuntu menu. Select Install Ubuntu to begin installation.

Wireless Networking - Atheros

The wireless hardware is detected, but a non-functional driver is loaded when Ubuntu is installed. Installing the latest Madwifi driver resolves this problem. First, disable the installed driver from System->Administration->Hardware driver by clicking Deactivate on the bottom of the window. Next, blacklist the bad driver by adding it to your kernel blacklist. Open a terminal and enter (or use gedit to edit the blacklist file)

sudo su
echo "blacklist ath_pci" >> /etc/modprobe.d/blacklist
echo "blacklist ath_hal" >> /etc/modprobe.d/blacklist

Finally, install the Madwifi driver:

sudo apt-get install linux-backports-modules-intrepid
sudo su
echo "ath5k" >> /etc/modules

After rebooting the driver should load and wireless networks should be listed in the Network Manager Applet.

Audio - Alsa Driver

-- These directions work on kernel 2.6.27-7. However several attempts on 2.6.27-9 confirms that they disable all audio and then cannot be rolled back. Further testing needed. @carneades The Alsa audio driver needs to be recompiled since the on-board chipset is a Realtek ID 272 which is not fully supported by Ubuntu 8.10. When compiling the driver from source the package build-essential is needed. In terminal type:

sudo apt-get install build-essential libncurses-dev gettext xmlto xmltoman linux-headers-`uname -r`

The last Alsa Driver source can be downloaded at here (tested on v. 1.0.18a) Extract it on Desktop and in terminal type:

cd Desktop/alsa-driver-*
./configure --with-cards=hda-intel --with-oss=yes --with-sequencer=yes
make
sudo make install

Set the volume levels in alsamixer - In terminal type:

 
alsamixer

The internal mic can be made to work for playback and capture by adjusting the Volume Control settings for the Front Mic. To support recording, the Input Source (available by selecting Preferences in the Volume Control) needs to be set to "Front Mic". Restart the computer. The internal speakers will be disabled when you plug-in a headphone's jack.

Hotkeys

Bugged

For correctly mapping the FN key that are doesn't recognized by default, you have to substitute the file in /usr/share/hotkey-setup/samsung.hk with this lines

setkeycodes e006 238 # Wireless ON/OFF
setkeycodes e008 225 # Brightness UP
setkeycodes e009 224 # Brightness DOWN
setkeycodes e002 $KEY_SWITCHVIDEOMODE # Monitor Switch
setkeycodes e003 236 # Battery

ATTENTION There's a bug opened for this and it may give you some problem with keyboard hang. If you are interested on the solution visit lauchpad.

Fn Brightness Keys - Workaround

Currently it is impossible to map the FN keys. Therefore, two utilities for mapping alternative keys are needed so that screen brightness can be adjusted. From terminal:

sudo apt-get install xbacklight

Download Ubuntu Tweak from here and install it. Now open Ubuntu tweak (Application -> System tools) go to the appropriate section (Personal -> Shortcut) and set the combination that you want for example Ctrl+UP with:

xbacklight -inc 10

and Ctrl+DOWN

xbacklight -dec 10

To increase and decrease the screen's brightness Maximum brightness may be quite low if you don't disable the "auto" brightness feature in the BIOS (F2 at start-up).

More Fn Key Workarounds

It is possible to replace more of the non-functional Fn-* keys with Ctrl-* keys. A writeup is available here that needs testing.

Xorg (optional, work in progress)

Customized xorg.conf file for correctly running compiz and activation of scrolling area of the touchpad:

#Starting from xandros version a customized xorg.conf file for Samsung NC10

Section "ServerLayout"
    Identifier     "Ubuntu"
    Screen      0  "Screen1"
    InputDevice    "keyboard"
    InputDevice    "mouse"
    InputDevice    "Touchpad"  "SendCoreEvents"	
EndSection

Section "Files"
    ModulePath   "/usr/lib/xorg/modules"
    FontPath     "/usr/share/fonts/X11/misc"
    FontPath     "/usr/share/fonts/X11/Type1"
    FontPath     "/usr/share/fonts/X11/75dpi"
    FontPath     "/usr/X11R6/lib/X11/fonts/Type1"
EndSection

Section "Module"
    Load  "glx"
    Load  "dri"
    Load  "dbe"
    Load  "extmod"
    Load  "synaptics"
EndSection

Section "ServerFlags"
    Option        "AllowMouseOpenFail"
    Option      "BlankTime"        "5"
    Option      "SuspendTime"  "0"
    Option      "StandbyTime"   "0"
    Option      "OffTime"           "10"
EndSection

Section "InputDevice"
    Identifier   "keyboard"
    Driver       "kbd"
    Option      "CoreKeyboard"
    Option      "XkbRules" "xorg"
    Option      "XkbLayout" "us"
    Option      "XkbVariant" ""
EndSection

Section "InputDevice"
    Identifier  "mouse"
    Driver      "mouse"
    Option        "Device" "/dev/input/mice"
    Option        "Protocol" "IMPS/2"
    Option        "Emulate3Buttons" "yes"
    Option        "ZAxisMapping" "4 5"
    Option        "CorePointer"
EndSection

Section "InputDevice"
    Identifier  "Touchpad"
    Driver      "synaptics"
	Option  "Device"        "/dev/psaux"
	Option  "Protocol"      "auto-dev"
	Option  "LeftEdge"      "1700"
	Option  "RightEdge"     "5300"
	Option  "TopEdge"       "1700"
	Option  "BottomEdge"    "4200"
	Option  "FingerLow"     "25"
	Option  "FingerHigh"    "30"
	Option  "MaxTapTime"    "180"
	Option  "MaxTapMove"    "220"
	Option  "VertScrollDelta" "100"
	Option  "MinSpeed"      "0.06"
	Option  "MaxSpeed"      "0.12"
	Option  "AccelFactor" "0.0010"
	Option  "SHMConfig"     "on"
	Option	"VertTwoFingerScroll"   "1"
	Option	"HorizTwoFingerScroll"  "1"

EndSection

Section "Monitor"
    Identifier   "Monitor1"
    VendorName   "Samsung"
    ModelName    "NC10"
    Option       "DPMS"
EndSection

Section "Monitor"
    Identifier    "TV"
    Option        "Ignore"  "True"
EndSection

Section "Device"
    Identifier  "Device1"
    Driver      "intel"
    VendorName  "Intel Corporation"
    BoardName   "Mobile 915GM/GMS/910GML Express Graphics Controller"
    BusID       "PCI:0:2:0"
EndSection

Section "Screen"
    Identifier "Screen1"
    Device     "Device1"
    Monitor    "Monitor1"
    DefaultDepth     24
EndSection

Section "DRI"
    Mode         0666
EndSection

Section "Extensions"
# You may want to enable this.
    Option        "Composite" "Enable"
EndSection

Compiz (optional, work in progress)

Add this line on the bottom of your xorg.conf file if you haven't already added

Section "DRI"
    Mode         0666
EndSection

Section "Extensions"
# You may want to enable this.
    Option        "Composite" "Enable"
EndSection

now you can enable compiz from System->Preference->Visual Effects. You can then install the MacOsX 'like' bar Avant window navigator that can help you to save useful space on the bottom of your screen.

Touchpad (work in progress)

An easy way for correctly detect and config your touchpad is to add some lines to your xorg.conf file. Add this lines in the Inputdevice Section of the touchpad, this will enable your scrolling area.

	Option  "LeftEdge"      "1700"
	Option  "RightEdge"     "5300"
	Option  "TopEdge"       "1700"
	Option  "BottomEdge"    "4200"
	Option  "FingerLow"     "25"
	Option  "FingerHigh"    "30"
	Option  "MaxTapTime"    "180"
	Option  "MaxTapMove"    "220"
	Option  "VertScrollDelta" "100"
	Option  "MinSpeed"      "0.06"
	Option  "MaxSpeed"      "0.12"
	Option  "AccelFactor" "0.0010"
	Option  "SHMConfig"     "on"


Internal 3G modem

Some NC10 models are sold with built-in, internal SAMSUNG HSPA Modem. Such models are in particular available in Poland (they are sold with iPlus wireless internet service). This modem does not appear to work at all. The USB vendor:product id is unknown to google as of 3rd of December 2008. The modem is a USB device and is supported on Windows XP. It's therefore possible to sniff the USB communication and reverse-engineer the drivers for the open source community. The USB vendor:product id is: 04e8:6773 As the text below says, the modem probably works Inspired by the mini howto I went to debug why does network manager fail to find it. It turns out that ubuntu's patches to network manager are using AT+GCAP to see what the modem supports. After changing that to ATI the modem is immediately detected. Unfortunately I'm outside of poland ATM so I cannot check if my fixes work but it's very, very close to being 100% usable for regular users! Modem is visible in system as cdc_acm and works like a charm with gcom Mini how-to

sudo aptitude install gcom

I've made a rule for udev, becouse sometimes modem is ttyACM0 and another time ttyACM1

cd /etc/udev/rules.d

and add own rule in for example file named 99-own.rules

SUBSYSTEM=="tty", ATTRS{product}=="SAMSUNG HSPA Modem", SYMLINK+="modem"

after adding new rule you have to restart udev

sudo /etc/init.d/udev restart
sudo gcom

you'll have to insert your pin code next we need to configure connection. I've used wvdial and configuration from http://www.goldenline.pl/forum/linux-i-open-source/70382

sudo vim /etc/wvdial.conf (you can use your favorite editor)
Add below lines:
Modem = /dev/modem
Baud = 460800
SetVolume = 0
Dial Command = ATDT
FlowControl = NOFLOW
Init1 = ATZ
Init2 = ATM0
Auto DNS = 1

[Dialer iplus]
Username = any
Password = any
Phone = *99***1#
Stupid Mode = 1
Init3 = AT+CGDCONT=1,"IP","www.plusgsm.pl"
Dial Attempts = 3

Second file should be placed in /etc/ppp/peers and named wvdial

plugin passwordfd.so
#
noauth
name wvdial
replacedefaultroute
noipdefault
nomagic
usepeerdns
ipcp-accept-local
ipcp-accept-remote
nomp
noccp
nopredictor1
novj
novjccomp
nobsdcomp

now you can try to connect

sudo wvdial iplus

I'm using debian sid, but this howto will probably work on ubuntu. If you have any questions email me at lolicjusz at gmail . com

External Links

Ubuntu Hardy Heron 8.04 on the Samsung NC10

Instead of installing Intrepid Ibex I wanted to install Hardy Heron on my Samsung. This is a reflection of my notes so far and thus a work in progress for now. It's not yet complete and needs more work. Only use it if you know what you're doing.


/!\ Edit conflict - other version: ----

Installation using Alternate installer for encryption

Since this is a highly mobile netbook I want my data to be save and thus I opted for full disk encryption. In order to do so I had to tweak the install with a USB stick a bit. Otherwise the Hardy Heron Alternate Installer would complain about a cdrom drive not being present.


/!\ Edit conflict - your version: ----
/!\ End of edit conflict ----

Wireless Networking - Atheros

Make sure the wireless hardware is active. Afaik the blue light of the third led from the right should be lit. Double check your BIOS settings. Remove the installed driver. Go to System–>Administration–>Hardware Drivers and disable by un-ticking the following option Atheros Hardware Access Layer (Hal) Then Reboot your system. Go into the terminal and install the following:

sudo apt-get install build-essential subversion autoconf automake

Afther this remove any existing wifi mods afaik this should do it:

sudo modprobe -r ath_pci
sudo modprobe -r ath_hal
sudo modprobe -r wlan

To get the correct(according to this comment) madwifi driver I'm using Subversion. On the terminal issue the following command:

svn co http://svn.madwifi-project.org/madwifi/branches/madwifi-hal-0.10.5.6/ madwifi

Now enter the madwifi directory

 
cd madwifi 

Compile

make 

then

 
sudo make install-modules 

Now we can install the modules into the kernel using the following

sudo modprobe ath_pci

Scan for some wireless networks

sudo iwpriv ath0 bgscan 0

You should now be able to use the wireless netwerk. NB: I used the following from the Macbook instructions so after a resume the network card should automatically start again. Not sure if this is necessary nor that it work correct. Need some more time to test.

echo -e '#!/bin/sh\n/sbin/iwpriv ath0 bgscan 0' | sudo tee -a /etc/acpi/resume.d/99-madwifi-bgscan.sh

And

sudo chmod 755 /etc/acpi/resume.d/99-madwifi-bgscan.sh