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.

Thứ Tư, 2 tháng 7, 2008

Quelque chose a tombé, tombe et tombera

Từ khi plugin "Snow" tạo hiệu ứng tuyết rơi cho trình quản lý cửa sổ compiz ra đời đã có nhiều biến thể:
- Star: sao bay trên desktop
- Fireflies: các đốm sáng chuyển động hỗn loạn (có lẽ là mô phỏng chuyển động phân tử)
- Autumn: lá vàng rơi với hiệu ứng gió
- Elements: tập hợp tất cả trong một, "Snow" "Star", "Fireflies", "Autumn" và "Bubble" (bọt bong bóng)
Những hiệu ứng bổ sung này không có trong kho chứa Ubuntu Hardy nhưng có thể được cài đặt thêm.
Cách cài đặt "Snow", "Star" và "Fireflies" ở đây
Đối với plugin "Autumn" download, giải nén, make, make install
Đối với plugin "Elements", chạy kịch bản cài đặt tự động (có lẽ đã kế thừa cách của tác giả plugin "Autumn" trong lần phát hành đầu tiên)
Nhiệm vụ cuối cùng là tìm một số texture bông tuyết, sao, đốm sáng, lá vàng... đẹp (chúng chỉ đơn giản là các tập tin ảnh png) và một ảnh nền phù hợp (chẳng hạn cảnh mùa thu cho plugin "Autumn", cảnh mùa đông cho plugin "Snow", cảnh mùa xuân cho plugin "Autumn" với texture cánh hoa anh đào, bầu trời đêm cho plugin "Star", bể cá cho plugin "Bubble"). Chúng có rất nhiều trên Internet. Không nên dùng textture lá vàng cho plugin "Snow" vì chúng rơi sẽ không tự nhiên, rất xấu.
À há, mùa thu lá bay...

Thứ Hai, 30 tháng 6, 2008

Gõ tiếng Pháp với bàn phím QWERTY

Tạo ~/.Xmodmap có nội dung sau:
keycode 113 = Mode_switch
keycode 116 = Multi_key

keysym q = q Q acircumflex Acircumflex
keysym e = e E eacute Eacute
keysym r = r R egrave Egrave
keysym u = u U ucircumflex Ucircumflex
keysym i = i I icircumflex Icircumflex
keysym o = o O ocircumflex Ocircumflex
keysym a = a A agrave Agrave
keysym d = d D ediaeresis Ediaeresis
keysym f = f F ecircumflex Ecircumflex
keysym h = h H ugrave Ugrave
keysym j = j J udiaeresis Udiaeresis
keysym k = k K idiaeresis Idiaeresis
keysym c = c C ccedilla Ccedilla
keysym z = z Z guillemotleft
keysym x = x X guillemotright
keysym period = period greater U2026

keysym 5 = 5 percent EuroSign
keysym 6 = 6 asciicircum dead_circumflex
keysym 7 = 7 ampersand dead_caron dead_breve
keysym 0 = 0 parenright dead_abovering

keysym minus = minus underscore dead_macron U2014
keysym semicolon = semicolon colon dead_diaeresis
keysym apostrophe = apostrophe quotedbl dead_acute
keysym grave = grave asciitilde dead_grave dead_tilde
keysym comma = comma less dead_cedilla
Logout hoặc chạy lệnh xmodmap ~/.Xmodmap, gõ tiếng Pháp bằng một trong hai cách:
- Sử dụng phím Win phải: gõ lần lượt ví dụ RWin, e, ' sẽ ra é. RWin, i, ^ sẽ ra î...
- Sử dụng phím Alt phải RAlt+e sẽ ra é, RAlt+r sẽ ra è...
Tham khảo từ đây.
Chú ý: Khi sử dụng Xmodmap, không cần và KHÔNG NÊN thêm bố trí bàn phím khác.
Có vẻ như keycode đã thay đổi đối với kernel mới (Ubuntu 8.10). Trong trường hợp đó, hãy chạy lệnh xev, sau đó ấn phím Alt phải để xác định keycode, thay vào số 113 bên trên, ấn phím Win phải để xác định keycode, thay vào số 116 bên trên.

Thứ Bảy, 14 tháng 6, 2008

Một cách sử dụng webcam thú vị

Bạn có muốn một tính năng hay ho như thế này:
Put video effects into chatting
nhưng không phải với những model webcam đắt tiền của Logitech...
trên Linux...
với một webcam bình thường, rẻ tiền?
Nếu có, thì chúng ta cùng bắt đầu
Yêu cầu cơ bản nhất là bạn cần có một webcam tương thích với V4L hoặc V4L2
Đầu tiên, cài đặt module vloopback cho kernel, vào đây:
http://www.lavrsen.dk/twiki/bin/view/Motion/VideoFourLinuxLoopbackDevice
download bản phù hợp với kernel của bạn, về giải nén ra, make, make install
Sau đó, cài đặt gói effectv (thường đã có sẵn trong kho chứa distro của bạn), sử dụng công cụ quản lý gói của distro để lấy nó về và cài đặt.
Cuối cùng, cài đặt gyachi (thường cũng có sẵn trong kho chứa distro)
Đối với Ubuntu 8.04, download ở đây: Gyachi for Ubuntu Hardy 8.04
Giả sử webcam của bạn là /dev/video0
Sử dụng quyền root để modprobe vloopback, chẳng hạn sudo modprobe vloopback
Sẽ có 2 thiết bị mới được tạo ra, chẳng hạn là /dev/video1 và /dev/video2
Chạy effectv -vloopback /dev/video1
Bây giờ khởi động gyachi, vào phần thiết lập, sử dụng webcam là /dev/video2
Khởi động webcam trong gyachi, và broadcast hình ảnh của bạn cho các buddy. Họ sẽ ngạc nhiên với những hiệu ứng của bạn.
Không chỉ với gyachi, bạn cũng có thế sử dụng những hiệu ứng này trong các ứng dụng webcam khác.
Để chuyển đổi hiệu ứng, ấn phím Up/Down trong cửa sổ của effectv
Một số hình ảnh: