Sharing Linux: Problem Solved, Battery Status Indicator on Ubuntu 12.04 Precise Pangolin (Lepi = Toshiba Satellite L645)
before..
after..
Have tried to how to install battery status, or battery state, or battery indicator, or battery icon, or battery power management, or battery notification, or battery percentage, or batmon.app (maybe adekroisa have tried) with the notebook/netbook/lepi/laptop that have same specification with this? check this out..
Spesification:
Merk: Laptop (lepi) Toshiba Satellite L645
OS: Linux >> Ubuntu 12.04 Precise Pangolin
Kernel Linux 3.2.0-26-generic-pae
GNOME 3.4.1
Case: Machine is NOT running on battery and hence we cannot measure power usage
sudo add-apt-repository ppa:colin-king/
sudo apt-get
sudo apt-get install
sudo pm-powersave true
powerstat
on adekroisa's lepi >> "Machine is NOT running on battery and hence we cannot measure power usage."
How can I install that all apps that I mention above, I just realeased that the problem is about Fix Toshiba battery issue for Linux. Yes, thats right on some Linux. Toshiba are two set data boot that give information OS hardware what is include in machine. Windows can read it well, but Linux notyet. We need to build kernel on our own to create it happen. We need to take DSDT from machine with ASL modification and AML DSDT can be compiled.
DSDT mean Differentiated System Description Table.
OS lepi=Ubuntu, OS hp=Android, that great.. but how if the battery cannot be detected?? hemm.. look cupu.. wkwk
Don't forget to be super user, sudo su on terminal first. To launch the terminal just type 'Ctrl+Alt+t'
sudo su
then, type your password.
[STEP 1] Check battery detection status on lepi (Toshiba Satellite L645)
cat /proc/acpi/battery/BAT1/*
like this ye? present: no
yeah, its mean that battery is not detected
[STEP 2] Now, get the original DSDL of machine (Toshiba Satellite L645's with Ubuntu 12.04 Precise Pangolin 'OS Linux')
cat /sys/firmware/acpi/tables/DSDT > DSDT.dat
[STEP 3] Disassemble it with iasl, failed? try to install it before
apt-get iasl
iasl -d DSDT.dat
vi DSDT.dsl
note:
search for line : OperationRegion (EMEM, SystemMemory, 0×FF808001, 0×FF)
then replace it with : OperationRegion (EMEM, EmbeddedControl, 0×00, 0×FF)
save it.
[STEP 4] Build the DSDT, in condition of super user mode on terminal (for me: root@ar-mscdr:/home/roisa#). This will creat a file DSDT.hex for kernel recompilation.
iasl -tc DSDT.dsl
if you find error, try to edit again
gedit DSDT.dsl
Line 2656 changed to
0xFEB00000, // Length
Line 2663 changed to
0×00005000, // Length
iasl -tc DSDT.dsl
[STEP 5] install some package (necessary packages)
apt-get install fakeroot kernel-wedge build-essential makedumpfile kernel-package libncurses5 libncurses5-dev
apt-get build-dep --no-install-recommends linux-image-$(uname -r)
needs enough time, depend on connection :)
[STEP 6] play on folder 'source'
mkdir /root/source
cd /root/source
apt-get source linux-image-$(uname -r)
[STEP 7] Play on linux folder (as your kernel version, ex: linux-3.2.0 on adekroisa's lepi)
root@ar-mscdr:/home/roisa# cd /root/source/linux-3.2.0/
cp -vi /boot/config-3.2.0-26-generic-pae .config
note: 3.2.0-26-generic-pae its depend on yours, its kernel version on adekroisa's lepi
cp /home/roisa/DSDT.hex /root/source/linux-3.2.0/include/
[STEP 8] Play with file .config and the word 'config'
gedit /root/source/linux-3.2.0/.config
try to change like this (save and quit):
CONFIG_STANDALONE=n
CONFIG_ACPI_CUSTOM_DSDT=y
CONFIG_ACPI_CUSTOM_DSDT_FILE="DSDT.hex"
start compiling the kernel,
first: load the .config file,
second: save menu for .config file and last: exit.
note: maximize the terminal window
make menuconfig
[STEP 9] Get Knowledge about your concurrency level (case: adekroisa's lepi have a Intel Core i3 processor)
root@ar-mscdr:/home/roisa# cat /proc/cpuinfo | grep -i processor
processor : 0
processor : 1
processor : 2
processor : 3
adekroisa got 4 processor, its mean that concurrency are 4+1=5
export CONCURRENCY_LEVEL=5
[STEP 10] Let's start, my custom kernel is adekroisa, hehe.. its my name get from 'Roisatul Azizah' called 'Adek Roisa' or 'Roisa', recompiling kernel.. but you also can do it without recompiling kernel.
make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-roisa kernel-image kernel-headers
note: this take several time (wkwkw.. much time dink.. :)
on adekroisa's lepi its start before adzan and pray ashar, and finish before maghrib (2.30 pm until 4.30 pm).. wow.. 2 hours.. Alhamdulillah.. hope it will be useful.. size 6.5GB.. hmm. superr..
preview here.
[STEP 11] Let's find the built kernel 'roisa' not 'adekroisa' or 'roisatul azizah' or 'roisa mscdr'
cd /root/source
dpkg -i linux-image-3.2.19-adekroisa-10.00.Custom_i386.deb
dpkg -i linux-headers-3.2.19-adekroisa-10.00.Custom_i386.deb
make initramfs:
update-initramfs -c -k 3.2.19-roisa
update-initramfs: Generating /boot/initrd.img-3.2.19-adekroisa
update-grup
references:
http://techinterplay.com/fix-toshiba-battery-issue-linux.html
http://blog.michael.kuron-germany.de/2011/03/patching-dsdt-in-recent-linux-kernels-without-recompiling/
http://www.tonymacx86.com/viewtopic.php?f=34&t=35627
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/703302
https://bugzilla.kernel.org/show_bug.cgi?id=34532
https://bugzilla.kernel.org/show_bug.cgi?id=15707
http://homeport.org/~bcordes/satellite-l500-install.html
http://www.insanelymac.com/forum/lofiversion/index.php/t189272-100.html
http://en.gentoo-wiki.com/wiki/ACPI/Fix_common_problems
http://www.lesswatts.org/projects/acpi/overridingDSDT.php
http://www.question-defense.com/2010/09/26/how-to-recompile-your-ubuntu-10-10-kernel-for-patching-or-to-add-support-for-a-specific-device
http://ubuntu-indonesia.com/forums/ubbthreads.php/topics/72904/Mengatasi_masalah_baterai_lapt#Post72904
http://ubuntu-indonesia.com/forums/ubbthreads.php/topics/106034/share_solusi_battery_untuk_lap
Finish, wokee.. restart lepi (laptop) to feel the great effect..
NOTE: special for ATI user or ATI Mobility Radeon, after this recompiled 'new custom kernel' do this to show your missing launcher, dash and navbar, check ki dot:
sudo apt-get install --reinstall unity && sudo reboot
or this
sudo apt-get install fglrx
Finish, wokee.. restart lepi again to feel the great effect..
Alhamdulillah.. how it will be useful :)
Linux for Human Being
Get the Challange,
Roisa Mscdr
11 comment:
Maaf sblumnya gan, ane make ubuntu yg 12.10 yg 32bit
lepi Toshiba juga L645
bluetoot ngk bisa aktif
baterry indikator ngk ada
tolong bantuannya gan, ane newbe banget soal linux
baru belajar soalnya :'(
oh ya.. ane juga dulu gitu gan.. akhirnya nemu cara ya recompiling kernel (butuh koneksi internet), dan Alhamdulilah.. berhasil, monggo nyoba cara di atas,..
gan nyangkut di step 10.kurang paham maksudnya nih..
begitu nyampe di
kernel-image kernel-headers
itu ane masukin kok dapetnya beginian???
kernel-image: command not found
ane pake 12.4 amd64
fakeroot nya di install dulu klo belum ada di lepi..
oke gan udah beres sesuai prosedur, kernel jg udah ganti.. cuma knp battery indicatornya gk nongol y??
ane cek battrenya lg hasilnya tetep zong..
clou@selenedeluna:~$ cat /proc/acpi/battery/BAT1/*
present: no
present: no
present: no
is there any other clue??
mungkin bisa coba ulangi step #11
upgrade kernel yg sudah di recompile, kemudian update grup dan restart, laptop nya toshiba L645 juga to.. pasti bisa
coba ulang step #11 done.. tp malah ketemu error..
akhirnya ulang dari step awal.. done cuma tetep gk muncul indikator battrenya..
yap.. L645 1112x. core i3, radeon graphics
try this one: http://adekroisa.blogspot.com/2012/12/fix-battery-indicator-problem-on.html
apt-get build-dep --no-install-recommends linux-image-$(uname-r) ada yang salah nih harusnya apt-get build-dep --no-install-recommends linux-image-$(uname -r) ada spasi di uname dan -r
terima kasih.. ada juga cara tanpa recompiling, this: http://adekroisa.blogspot.com/2012/12/fix-battery-indicator-problem-on.html
Baru ini seumur hidup saya menemukan ada perempuan Indonesia melakukan kompilasi kernel. Saya sendiri belum pernah, seumur hidup saya.
Terima kasih, Nona. Saya akan kabari kalau ini berhasil, insya Allah.
Posting Komentar
Informasi Pilihan Identitas:
Google/Blogger : Account special blogger
Another : Jika tidak punya account blogger namun punya alamat Blog atau Website.
Anonim : Jika tidak ingin mempublikasikan profile anda (tidak disarankan). salam hangat, Roisa :)