Thứ Sáu, 25 tháng 2, 2011

Root HTC Tattoo trên Linux

Bước 1: Tải về và giải nén Android SDK: http://developer.android.com/sdk/index.html
Bước 2: Bật tùy chọn USB Debugging trên điện thoại (Menu > Settings > Applications > Development > USB Debugging)
Bước 3: Nối điện thoại với máy tính bằng cáp USB.
Kiểm tra xem điện thoại đã được nhận ra chưa bằng lệnh sau trong thư mục android-sdk-linux_x86/tools:
./adb devices
Nếu kết quả hiện ra là ???????????? no permissions thì phân quyền người dùng chưa đúng. Tạo tập tin /etc/udev/rules.d/90-android.rules có nội dung sau:
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666"
sau đó chạy lệnh: sudo udevadm control --reload-rules
Nếu kết quả hiện ra giống thế này, HTC Tattoo đã được kết nối đúng (có thể rút ra cắm lại):
List of devices attached
HT9A5LG01716 device
Bước 4: Tải gói này về và giải nén vào thư mục android-sdk-linux_x86/tools
Chạy các lệnh sau:
./adb push tatt00hack/m7 /data/local/bin/
./adb push tatt00hack/tattoo-hack.ko /data/local/bin/
./adb shell chmod 755 /data/local/bin/m7
Bước 5: Lấy tập tin su này (86944 byte), đặt trong thư mục android-sdk-linux_x86/tools và push vào HTC Tattoo:
./adb push su /data/local/bin/
./adb shell chmod 755 /data/local/bin/su
Bước 6: Chạy lệnh ./adb shell
Trong shell, chạy các lệnh:
$ cd /data/local/bin
$ while do ./m7 ; done
Shell sẽ chuyển từ $ thành #
Bước 7: Thiết lập /system thành writable
Trong shell của bước 6:
# export LD_LIBRARY_PATH=/system/lib
# export PATH=/system/bin
# insmod /data/local/bin/tattoo-hack.ko
# mount -o rw,remount /dev/block/mtdblock3 /data
# mount -o rw,remount /dev/block/mtdblock5 /system
# cat /data/local/bin/su > /system/bin/su
# chown root.root /system/bin/su
# chmod 4755 /system/bin/su
# rm /data/local/bin/su
# reboot

Chủ Nhật, 26 tháng 4, 2009

Modem Conexant bó tay license

Trước đây (trên Ubuntu 8.10), mưu kế để gian lận license vẫn hoạt động tốt cho đến tận phiên bản hsfmodem 7.80.02.02.
Mấy hôm nay, nâng cấp lên Ubuntu 9.04 và sử dụng phiên bản hsfmodem 7.80.02.04, mưu kế này không còn khả thi nữa (gây ra kernel loop do hsfengine.ko lại gọi hsfengine.ko).
Phải chăng trò gian lận này đã bị phát hiện và lỗi bảo mật license đã được sửa?

Thứ Ba, 6 tháng 1, 2009

Sử dụng điều khiển từ xa Cyp Se WitheHome trên Ubuntu (8.10)

Chạy ls -l /dev/input trước và sau khi cắm đầu thu vào máy. Sau khi cắm, sẽ có một thiết bị event và một thiết bị mouse được tạo.
So sánh kết quả và xác định thiết bị event tương ứng với đầu thu, chẳng hạn event10
Chạy udevinfo -a -p $(udevinfo -q path -n /dev/input/eventX) với X là số hiệu tương ứng với đầu thu, trong trường hợp này là event10
Trong kết quả hiển thị, xác định thông số ở dòng ATTRS{modalias} đầu tiên, chẳng hạn là input:b0003v04B4p0100e0100-e0,1,2,4,14,k71,72,73,74,75,77,7D,7E,7F,8E,8F,9E,B7,110,111,112,r0,1,am4,lsfw
Tạo hoặc cập nhật tập tin /etc/udev/rules.d/10-local.rules và thêm một dòng như sau:
KERNEL=="event*",SYSFS{modalias}=="insert_your_modalias_here",SYMLINK="input/Cyp_Se_WitheHome"
Trong trường hợp này là:
KERNEL=="event*",SYSFS{modalias}=="input:b0003v04B4p0100e0100-e0,1,2,4,14,k71,72,73,74,75,77,7D,7E,7F,8E,8F,9E,B7,110,111,112,r0,1,am4,lsfw",SYMLINK="input/Cyp_Se_WitheHome"
Tháo đầu thu ra và cắm lại, sẽ có một thiết bị /dev/input/Cyp_Se_WitheHome được tạo
Sửa tập tin /usr/share/hal/fdi/preprobe/20thirdparty/lirc.fdi
Thay thế chuỗi saa7134 ir bằng Cyp Se WitheHome để hald không "tóm" thiết bị này của lirc.
Cài đặt lirc, nếu đã cài rồi thì chạy sudo dpkg-reconfigure lirc, chọn Linux Input Layer (/dev/input/eventX) cho IR receiver, None cho IR transmitter và /dev/input/Cyp_Se_WitheHome ở màn hình cuối cùng.
Sửa tập tin /etc/lircd.conf thành:
begin remote
name Cyp_Se_WitheHome
bits 32
begin codes
POWER 0x40004 0x80010074
RADIO 0x40004 0x8001001e
TV 0x40004 0x80010014
DVD 0x40004 0x80010031
MUSIC 0x40004 0x80010032
PHOTO 0x40004 0x80010017
VIDEO 0x40004 0x80010012
DVD_MENU 0x40004 0x8001002f
MUTE 0x40004 0x80010042
BACK 0x40004 0x8001000e
GUIDE 0x40004 0x8001003b
VOLUME_UP 0x40004 0x80010073
VOLUME_DOWN 0x40004 0x80010072
CHANNEL_UP 0x40004 0x80010068
CHANNEL_DOWN 0x40004 0x8001006d
ARROW_UP 0x40004 0x80010067
ARROW_DOWN 0x40004 0x8001006c
ARROW_LEFT 0x40004 0x80010069
ARROW_RIGHT 0x40004 0x8001006a
ENTER 0x40004 0x8001001c
RECORD 0x40004 0x8001001d 0x40004 0x80010013
REPEAT 0x40004 0x8001002a 0x40004 0x80010013
PLAY 0x40004 0x8001002a 0x40004 0x80010019
PAUSE 0x40004 0x8001001d 0x40004 0x80010019
STOP 0x40004 0x8001001f
REWIND 0x40004 0x8001002a 0x40004 0x80010020
FORWARD 0x40004 0x8001002a 0x40004 0x80010021
PREV_TRACK 0x40004 0x8001001d 0x40004 0x80010030
NEXT_TRACK 0x40004 0x8001001d 0x40004 0x80010021
NUMPAD_1 0x40004 0x80010002
NUMPAD_2 0x40004 0x80010003
NUMPAD_3 0x40004 0x80010004
NUMPAD_4 0x40004 0x80010005
NUMPAD_5 0x40004 0x80010006
NUMPAD_6 0x40004 0x80010007
NUMPAD_7 0x40004 0x80010008
NUMPAD_8 0x40004 0x80010009
NUMPAD_9 0x40004 0x8001000a
NUMPAD_0 0x40004 0x8001000b
end codes
end remote
Khởi động lại.
Chạy thử irw, nếu sau khi bấm các nút trên bộ điều khiển, nó hiện ra như sau thì là OK:
0000000000040004 00 POWER Cyp_Se_WitheHome
0000000000040004 00 RADIO Cyp_Se_WitheHome
0000000000040004 00 TV Cyp_Se_WitheHome
Tạo tập tin .lircrc trong thư mục ~ như thế này:
# MythTV
begin
prog = mythtv
button = BACK
config = Esc
repeat = 1
end

begin
prog = mythtv
button = MUTE
config = F9
repeat = 1
end

begin
prog = mythtv
button = VOLUME_UP
config = ]
end

begin
prog = mythtv
button = VOLUME_DOWN
config = [
end

begin
prog = mythtv
button = CHANNEL_UP
config = PgUp
end

begin
prog = mythtv
button = CHANNEL_DOWN
config = PgDown
end

begin
prog = mythtv
button = POWER
config = Esc
repeat = 1
end

begin
prog = mythtv
button = TV
config = Ctrl+T
repeat = 1
end

begin
prog = mythtv
button = DVD
config = Ctrl+D
repeat = 1
end

begin
prog = mythtv
button = MUSIC
config = Ctrl+M
repeat = 1
end

begin
prog = mythtv
button = PHOTO
config = Ctrl+O
repeat = 1
end

begin
prog = mythtv
button = VIDEO
config = Ctrl+V
repeat = 1
end

begin
prog = mythtv
button = DVD_MENU
config = M
repeat = 1
end

begin
prog = mythtv
button = GUIDE
config = Ctrl+S
repeat = 1
end

begin
prog = mythtv
button = ARROW_UP
config = Up
repeat = 1
end

begin
prog = mythtv
button = ARROW_DOWN
config = Down
repeat = 1
end

begin
prog = mythtv
button = ARROW_LEFT
config = Left
repeat = 1
end

begin
prog = mythtv
button = ARROW_RIGHT
config = Right
repeat = 1
end

begin
prog = mythtv
button = ENTER
config = Enter
repeat = 1
end

begin
prog = mythtv
button = RECORD
config = R
repeat = 1
end

begin
prog = mythtv
button = REPEAT
config = Backspace
repeat = 1
end

begin
prog = mythtv
button = STOP
config = O
repeat = 1
end

begin
prog = mythtv
button = NUMPAD_1
config = 1
repeat = 1
end

begin
prog = mythtv
button = NUMPAD_2
config = 2
repeat = 1
end

begin
prog = mythtv
button = NUMPAD_3
config = 3
repeat = 1
end

begin
prog = mythtv
button = NUMPAD_4
config = 4
repeat = 1
end

begin
prog = mythtv
button = NUMPAD_5
config = 5
repeat = 1
end

begin
prog = mythtv
button = NUMPAD_6
config = 6
repeat = 1
end

begin
prog = mythtv
button = NUMPAD_7
config = 7
repeat = 1
end

begin
prog = mythtv
button = NUMPAD_8
config = 8
repeat = 1
end

begin
prog = mythtv
button = NUMPAD_9
config = 9
repeat = 1
end

begin
prog = mythtv
button = NUMPAD_0
config = 0
repeat = 1
end

begin
prog = mythtv
button = PREV_TRACK
config = Q
repeat = 1
end

begin
prog = mythtv
button = NEXT_TRACK
config = Z
repeat = 1
end

begin
prog = mythtv
button = PLAY
config = P
repeat = 1
end

begin
prog = mythtv
button = PAUSE
config = Ctrl+?
end

begin
prog = mythtv
button = REWIND
config = < repeat =" 1" prog =" mythtv" button =" FORWARD" config =" ">
repeat = 1
end

# mplayer
begin
prog = mplayer
button = BACK
config = quit
end

# rhythmbox
begin
prog = rhythmbox
button = PLAY
config = play
end

begin
prog = rhythmbox
button = PAUSE
config = pause
end

begin
prog = rhythmbox
button = STOP
config = stop
end

begin
prog = rhythmbox
button = RECORD
config = shuffle
end

begin
prog = rhythmbox
button = REPEAT
config = repeat
end

begin
prog = rhythmbox
button = PREV_TRACK
config = previous
end

begin
prog = rhythmbox
button = NEXT_TRACK
config = next
end

begin
prog = rhythmbox
button = REWIND
config = seek_backward
end

begin
prog = rhythmbox
button = FORWARD
config = seek_forward
end

begin
prog = rhythmbox
button = VOLUME_UP
config = volume_up
end

begin
prog = rhythmbox
button = VOLUME_DOWN
config = volume_down
end

begin
prog = rhythmbox
button = MUTE
config = mute
end
Rồi khởi động mythtv, vào mục Edit Keys và thêm vào mục Global Jumppoints (có thể thực hiện thao tác này bằng điều khiển từ xa, không cần bằng bàn phím):
Ctrl+T chạy TV playback
Ctrl+D chạy DVD
Ctrl+M chạy Music
Ctrl+O chạy MythGallery
Ctrl+V chạy MythVideo
Ctrl+S chạy Program Guide
Xóa <> từ các hành động Previous Track và Next Track trong mục Music và xóa P khỏi hành động Pause trong Music, sau đó thiết lập các phím cho Rewind/Forward/PrevTrack/NextTrack/Pause/Play/Stop...

Thứ Bảy, 3 tháng 1, 2009

Fête de la nouvelle année

Chiều 31/12/2008: bản patch driver kernel Linux của mình đã được commit.
Tối 31/12/2008 - 6h 1/1/2009. Party

Bàn phím Acer Aspire 4710 trên Ubuntu 8.10

Sau khi cài đặt Ubuntu 8.10 và cập nhật toàn bộ hệ thống (kernel 2.6.27-9-generic), các phím chức năng wireless, bluetooth, Fn + F2, Fn + F3, Fn + F5 đều đã được nhận diện tốt.
Chỉ còn 2 phím euro và dollar. Thêm 2 dòng sau vào /etc/rc.local trước dòng exit 0:
setkeycodes e033 219 # euro sign
setkeycodes e034 239 # dollar sign
và 2 dòng sau vào ~/.Xmodmap:
keycode 227 = EuroSign
keycode 247 = dollar
Nếu không muốn khởi động lại, sudo 2 lệnh setkeycodes nói trên, sau đó chạy xmodmap ~/.Xmodmap

Thứ Hai, 17 tháng 11, 2008

Sử dụng modem Conexant trên Ubuntu 8.10

Nhiều modem của laptop không nối trực tiếp với bus PCI hay bus USB mà nối với card sound. Chúng là các softmodem, hay còn gọi là winmodem và hầu hết không hoạt động trên Linux.

Modem laptop Acer Aspire 4710 của tôi sử dụng chipset Conexant nối với card sound Intel High Definition Audio, rất may mắn vì nó được hỗ trợ trên Linux bởi driver linuxant, nhưng cũng không may mắn vì driver này không free (phải bỏ tiền để được hỗ trợ đầy đủ, nếu không chỉ kết nối được ở tốc độ tối đa 14,4 kbps không fax).

Đã có nhiều cách để loại bỏ hạn chế này như keygen, hexedit, nhưng tôi thấy chúng không hiệu quả. Tập tin nhị phân cần hexedit thay đổi từ phiên bản kernel này đến phiên bản kernel khác trong khi license key của keygen không còn áp dụng được nữa (mỗi modem khác nhau đòi hỏi licence key khác nhau).

Dell có cung cấp một bản linuxant OEM cho Ubuntu 8.04, nhưng không sử dụng được trên Ubuntu 8.10 (do cấu trúc kernel đã thay đổi từ 2.6.24 lên 2.6.27).

Do đó, tôi cần phải tìm một giải pháp khác. Và tôi đã phát hiện ra cách sau, nó cho phép bạn sử dụng driver linuxant phiên bản mới nhất trên Ubuntu 8.10 với hỗ trợ đầy đủ mà không phải bỏ tiền.

Bước 1: Cài đặt các công cụ cần thiết để biên dịch module kernel (gcc, make, kernel headers...):

sudo apt-get install build-essential

Bước 2: Download bản linuxant OEM của Dell và giải nén:

http://linux.dell.com/files/ubuntu/hardy/modem-drivers/hsf/hsfmodem-7.68.00.09oem.tar.gz

tar xzf hsfmodem-7.68.00.09oem.tar.gz

Đối với x64, download:

http://linux.dell.com/files/ubuntu/hardy/modem-drivers/hsf/hsfmodem-7.68.00.09x86_64oem.tar.gz
tar xzf hsfmodem-7.68.00.09x86_64oem.tar.gz

Bước 3: Download phiên bản deb mới nhất của hsfmodem từ website linuxant

http://www.linuxant.com/drivers/hsf/full/downloads.php

Chú ý: có hai kiểu deb, một là phiên bản deb đã biên dịch sẵn module cho một kernel cụ thể của một bản phân phối, hai là phiên bản deb chưa biên dịch module, bạn chọn kiểu thứ hai, ví dụ (nhớ giải nén gói zip):

http://www.linuxant.com/drivers/hsf/full/archive/hsfmodem-7.68.00.14full/hsfmodem_7.68.00.14full_i386.deb.zip

Nếu bạn đang sử dụng Ubuntu 64 bit, download gói nguồn và giải nén, ví dụ:

http://www.linuxant.com/drivers/hsf/full/archive/hsfmodem-7.68.00.14x86_64full/hsfmodem-7.68.00.14x86_64full.tar.gz

tar xzf hsfmodem-7.68.00.14x86_64full.tar.gz

Bạn cũng có thể sử dụng gói nguồn cho x86, nhưng mỗi lần cập nhật kernel, bạn phải tự biên dịch lại driver hsfmodem.

Bước 4:

Dành cho x86:

Tắt tất cả các chương trình liên quan đến âm thanh và cài đặt gói deb:

sudo dpkg -i hsfmodem_7.68.00.14full_i386.deb

Trong quá trình cài đặt, điều khiển âm lượng GNOME sẽ bị lỗi, hãy chọn Reload. Tạm thời bạn sẽ không có âm thanh. Bạn sẽ nhìn thấy thông tin giống như thế này trong quá trình cài đặt:

Config for modem unit 0: /dev/ttySHSF0

Device instance: 0-HDA-14f12c06:xxxxxxxx-x

HW revision : SSD=33 LSD=0x22

HW profile name: hsfhda

Registration ID: xxxx-xxxx-xxxx

License owner : unknown

License key : FREE

License status : FREE (max 14.4kbps data only)

Current region : VIETNAM (T.35 code: 00BC)

Bây giờ hãy copy tập tin hsfmodem-7.68.00.09oem/modules/imported/hsfengine-i386.O mà bạn có ở bước 2 đè lên /usr/lib/hsfmodem/modules/imported/hsfengine-i386.O

sudo cp hsfmodem-7.68.00.09oem/modules/imported/hsfengine-i386.O /usr/lib/hsfmodem/modules/imported/

và chạy sudo hsfconfig, lần này bạn sẽ nhìn thấy:

Config for modem unit 0: /dev/ttySHSF0

Device instance: 0-HDA-14f12c06:xxxxxxxx-x

HW revision : SSD=33 LSD=0x22

HW profile name: hsfhda

Current region : VIETNAM (T.35 code: 00BC)

Dành cho x64 (và cả x86 nếu bạn đã chọn download và cài đặt từ gói nguồn):

Tắt tất cả các chương trình liên quan đến âm thanh.

Copy tập tin hsfmodem-7.68.00.09x86_64oem/modules/imported/hsfengine-x86_64.O mà bạn có ở bước 2 đè lên hsfmodem-7.68.00.14x86_64full/modules/imported/hsfengine-x86_64.O hoặc copy hsfmodem-7.68.00.09oem/modules/imported/hsfengine-i386.O mà bạn có ở bước 2 đè lên hsfmodem-7.68.00.14full/modules/imported/hsfengine-i386.O.

Vào trong thư mục và build:

cd hsfmodem-7.68.00.14x86_64full/ hoặc cd hsfmodem-7.68.00.14full/

sudo make install

sudo hsfconfig

Trong quá trình cài đặt, điều khiển âm lượng GNOME sẽ bị lỗi, hãy chọn Reload. Tạm thời bạn sẽ không có âm thanh. Bạn sẽ nhìn thấy thông tin giống như thế này trong quá trình cài đặt:

Config for modem unit 0: /dev/ttySHSF0

Device instance: 0-HDA-14f12c06:xxxxxxxx-x

HW revision : SSD=33 LSD=0x22

HW profile name: hsfhda

Current region : VIETNAM (T.35 code: 00BC)

Bước 5: Khởi động lại để phục hồi âm thanh. Bạn có thể kết nối Internet ở tốc độ tối đa 56 kbps với gnome-ppp hoặc kppp và gửi/nhận fax.

Chủ Nhật, 5 tháng 10, 2008

Ubuntu 8.04 trên Acer Aspire 4710 4A1G16Mi

Ubuntu 8.04 trên Acer Aspire 4710 4A1G16Mi
1. Card đồ họa: FPS trung bình (với glxgears) = 780. Các hiệu ứng 3D hoạt động tốt, màn hình đạt độ phân giải tối đa 1280x800. OK.
2. Card âm thanh: Loa và headphone hoạt động tốt. Nút bật tắt (Fn + F8) và bánh xe chỉnh âm lượng hoạt động tốt.
Bạn có thể phát âm thanh đồng thời ra cả loa và headphone cũng như điều chỉnh / tắt âm lượng của chúng một cách riêng rẽ. Nếu bạn muốn khi cắm headphone vào, máy tính sẽ tự động tắt loa (jack sense), thêm dòng options snd-hda-intel model=acer vào cuối tập tin /etc/modprobe.d/alsa-base.
Tuy nhiên, nếu làm thế, bạn sẽ không có các tùy chọn âm thanh kỹ thuật số (digital output hay S/PDIF) và không thu âm được từ microphone trước màn hình. Còn nếu không, bạn vẫn có đầy đủ các tùy chọn, có thể thu âm từ microphone trước màn hình cũng như microphone ngoài (Audacity, Skype).
Line in: chưa kiểm tra.
S/PDIF (Digital output): chưa kiểm tra.
3. Card mạng Ethernet: chẳng có vấn đề gì, hỗ trợ cảm nhận đầu cắm (jack sense). OK.
4. Card mạng Wifi: Trước khi sử dụng phải tải firmware. Kết nối Internet qua Ethernet, sau đó vào System – Administration – Hardware Drivers, cho hiệu lực Broadcom B43 Wireless driver. Hoặc chạy lệnh sudo apt-get install b43-fwcutter. Khởi động lại, lúc này phím bật tắt và đèn Wifi cũng hoạt động tốt. OK.
Nếu bạn cập nhật kernel, Ubuntu sẽ đưa ra tùy chọn sử dụng Broadcom STA wireless driver trong Hardware Drivers, nó là driver độc quyền do Broadcom cung cấp. Nên sử dụng driver này vì nó cho chất lượng tín hiệu cao hơn B43. OK.
5. Touchpad: OK. Ngoài 6 nút chuột (1,3,4,5,6,7) tương ứng với nút chuột trái, phải, các nút cuộn lên, xuống, trái, phải, bạn có thể sử dụng một phần vùng di chuột để cuộn dọc hoặc ngang.
Cuộn dọc trong vùng di chuột: di chuyển ngón tay lên, xuống ở một phần nhỏ bên phải vùng di chuột.
Cuộn ngang trong vùng di chuột: di chuyển ngón tay sang trái, phải ở một phần nhỏ phía dưới vùng di chuột.
Để thay đổi các thiết lập, vào System -> Preferences -> Mouse, chọn tab Touchpad.
6. USB: OK.
7. DVD+-RW: OK.
8. Webcam: hoạt động với Ekiga (chọn V4L2), Kopete, Cheese, Skype nhưng không hoạt động với Gyachi (dù đã biên dịch với hỗ trợ V4L2).
Cập nhật: Đã tìm được cách để webcam hoạt động với các ứng dụng chỉ hỗ trợ V4L như Gyachi, Adobe Flash: http://www.swift-tools.net/Flashcam/
Webcam OK.
9. ACPI: các chức năng suspend và hibernate hoạt động tốt. OK.
  • Phím bật tắt nguồn: bấm vào, menu các lựa chọn tắt máy sẽ hiện ra. OK.
  • Công tắc đóng nắp: đóng nắp, sẽ tắt màn hình. OK.
  • Fn + F4: máy tính sẽ vào trạng thái ngủ (suspend), bấm phím bất kì để đánh thức. OK.
  • Fn + F6: tắt màn hình (hoạt động không cần hệ điều hành), bấm phím bất kì để mở trở lại. OK.
10. Modem: sử dụng chipset Conexant. Tải về và chạy chương trình cài đặt ở đây:
http://www.linuxant.com/drivers/hcf/downloads-installer.php
Trong quá trình cài đặt, applet điều khiển âm lượng của GNOME có thể bị lỗi. Nếu thông báo lỗi xuất hiện, đơn giản ấn Reload.
Driver này giới hạn tốc độ kết nối 14,4 kbps và không hỗ trợ fax. Nếu muốn đạt tốc độ kết nối tối đa 56 kbps và hỗ trợ fax, có thể sử dụng một trong các cách sau:
  • Đăng ký mua hoặc dùng keygen để lấy license (không trình bày cụ thể). Chạy sudo hsfconfig, driver sẽ được biên dịch lại.
  • Dùng hexedit để sửa trực tiếp driver nhị phân (không trình bày cụ thể). Cách này chỉ tăng tốc độ kết nối nhưng không hỗ trợ fax.
  • Sử dụng phiên bản OEM do hãng Dell cung cấp, trước hết gỡ bỏ driver cũ: sudo apt-get remove hsfmodem, sau đó cài driver OEM mà Dell đã mua hộ: http://linux.dell.com/files/ubuntu/hardy/modem-drivers/hsf/
GNOME PPP và KPPP tìm được modem, tuy nhiên chưa thử nghiệm kết nối.
11. Bàn phím: chọn cấu hình Acer/Acer laptop/USA/With EuroSign on 5 lúc cài đặt. Tuy nhiên, nếu bạn chọn cấu hình mặc định PC/Intl (105 key)/USA/Default cũng không có gì khác. Các phím sau hoạt động ngay lập tức:
  • Globe: chạy trình duyệt Web mặc định (Firefox)
  • Mail: chạy trình mail mặc định (Evolution)
  • ? (Fn + F1): chạy Ubuntu Help Center
  • Fn + F4: suspend (sleep) máy tính
  • Fn + F6: tắt màn hình
  • Fn + F7: khóa / mở khóa Touchpad
  • Fn + F8: bật / tắt âm thanh kênh mặc định (master)
  • Bánh xe tăng giảm âm lượng kênh mặc định (master)
  • Fn + Left Arrow, Fn + Right Arrow: giảm / tăng độ sáng màn hình
  • Các phím điều khiển media: Play/Pause, Stop, Previous, Next hoạt động với Totem, Rhythmbox...
Có một số phím bổ trợ chưa hoạt động:
  • Phím bật tắt Wifi: mặc dù bật / tắt được Wifi, nhưng phím này vẫn tạo ra một mã quét mà Linux không nhận ra được.
  • Phím bật tắt Bluetooth: máy này không có Bluetooth, nên phím này thừa, cũng như trên, mã quét không được nhận ra.
  • Phím đồng Euro và đồng Dollar gần các phím mũi tên, Fn + F2, Fn + F3, Fn + F5: mã quét không được nhận ra.
  • Phím e (empowering technology): không làm gì
Để khắc phục và làm cho tất cả các phím bổ trợ này hoạt động, có thể làm như sau:
Thêm các dòng sau vào cuối /etc/init.d/rc.local:
setkeycodes e026 202 # Fn + F2
setkeycodes e027 203 # Fn + F3
setkeycodes e029 238 # Fn + F5
setkeycodes e033 219 # euro sign
setkeycodes e034 239 # dollar sign
setkeycodes e054 237 # bluetooth
setkeycodes e055 218 # wireless

Giải thích: mục đích là để cho Linux hiểu được các mã quét. Bạn có thể biết được các mã quét này bằng cách ấn phím bổ trợ không được nhận ra, sau đó chạy dmesg | tail.
Chạy sudo /etc/init.d/rc.local start nếu không muốn khởi động lại. Ở các lần khởi động sau, các lệnh setkeycodes sẽ được chạy tự động.
Tạo tập tin .Xmodmap trong thư mục cá nhân, có nội dung sau:
keycode 195 = EuroSign
keycode 244 = dollar

Giải thích: để biết các keycode này (gọi là X11 keycode), bạn chạy xev và ấn phím. Trong ví dụ trên, phím đồng Euro có Linux keycode là 219 (dùng trong console) và X11 keycode là 195 (dùng trong X).
Đăng xuất hoặc chạy lệnh xmodmap ~/.Xmodmap. Thử với các phím Euro và Dollar xem sao: €$€$€$€$€$
Chạy sudo apt-get install xbindkeys. Tạo tập tin ~/.xbindkeysrc như thế này:
"gnome-system-monitor"
m:0x0 + c:171
"gnome-power-preferences"
m:0x0 + c:172

Giải thích: 171 là X11 keycode của tổ hợp phím Fn + F2. Tổ hợp phím này trên Windows sẽ mở System Properties hoặc Acer eSettings (nếu được cài đặt). Ở đây bạn có thể dùng để mở GNOME System Monitor hoặc bất cứ thứ gì khác bạn thích. Tương tự 172 là của Fn + F3, dùng để mở GNOME Power Preferences. Tổ hợp phím này trên Windows mở Power Options hoặc Acer ePower Management (nếu được cài đặt).
Đừng quên chạy xbindkeys khi khởi động. Vào System – Preferences – Session để tạo một entry khởi động cho xbindkeys.
Các phím còn lại (Bluetooth, empowering technology) có thể sử dụng với xbindkeys như trên hoặc vào System – Preferences – Keyboard Shortcuts để gán cho một chức năng khác (đẩy đĩa ra chẳng hạn).
Bàn phím OK.
12. VGA out: hoạt động tốt, hỗ trợ hai màn hình (dual head). Trước khi cắm máy chiếu vào cổng VGA, sao lưu tập tin cấu hình xorg.conf:
cd /etc/X11/
sudo cp xorg.conf xorg.conf.backup
Cắm máy chiếu vào cổng VGA, vào System --> Preferences --> Screen Resolution
bạn sẽ nhìn thấy một màn hình Laptop 14" và một màn hình máy chiếu. Di chuyển vị trí tương đối giữa hai màn hình để thiết lập vị trí dual head. Nếu bạn muốn hình ảnh trên máy chiếu giống như trên màn hình laptop, đánh dấu chọn "Mirror Screens". Bạn sẽ phải nhập mật khẩu và đăng xuất ra.
Trước khi ngừng sử dụng máy chiếu, phục hồi lại tập tin cấu hình để khôi phục độ phân giải 1280x800 của màn hình laptop:
cd /etc/X11/
sudo cp xorg.conf.backup xorg.conf
VGA OK.
13. Các cổng giao tiếp S-Video, IEEE 1394: chưa được kiểm tra
14. Đầu đọc thẻ: thẻ nhớ MS (Memory Stick) không được hỗ trợ.
Thẻ nhớ xD có lẽ cũng không được hỗ trợ (thiết bị O2 Micro, Inc. Integrated MS/xD Controller không có driver).
Thẻ nhớ SD (Secure Digital) được hỗ trợ.
Thẻ nhớ MMC (MultiMedia Card) chưa được kiểm tra.