Gantungan Kunci Eksklusif

Sungguh, cara yang buruk untuk memulai tahun 2008. Bagaimana tidak, tahun baru kok dimulai dengan rusaknya laptop. Ceritanya, kemarin pagi laptop tiba-tiba hang pada saat baru selesai masuk desktop. Ini termasuk hal yang sangat jarang terjadi, karena biasanya yang hang hanya desktopnya, bila terjadi suatu kesalahan. Tinggal CTRL+ALT+F1, login, kemudian kill aplikasi yang bermasalah lalu switch atau start lagi desktop handlernya. Tapi yang terjadi kemarin adalah, laptop benar2 hang. Tidak ada yang bisa dilakukan selain hard restart.

Eh, pas restart laptop langsung nyanyi:

tiiit… tiiit… tiiit…

Sebenernya sih gak seperti itu, soalnya saya sendiri gak hapal :D. PANIK!!! itu yang pertama saya rasakan, soalnya komputer kantor yang biasa ada di meja kerja saya sudah dipindah dan saya juga tidak yakin komputer nganggur yang lain ada JDK-nya. Sebab task minggu ini adalah melakukan modifikasi dan optimisasi beberapa aplikasi java di kantor. Bisa-bisa kerjaan hari ini tertunda sementara selama saya mendownload JDK dan beberapa framework Smpp serta pendukungnya yang totalnya lumayan besar.

Lalu saya telpon Isdah, konsultasi gratis sebentar ;)). Katanya kalau bukan HD yang bad sector, itu bisa disebabkan memori yang rusak / kotor. Saya nekat bongkar sendiri laptop karena garansi juga sudah habis. Lepas-pasang HD tidak berpengaruh. Ya sudah, saya lepas kedua keping memori yang ada, membersihkan slotnya, lalu pasang lagi yang 512. Masuk menu grub, saya pilih memtest. Ternyata tidak ada error pada keping 512 ini. Matikan laptop, ganti dengan yang 256 eh, trouble yang sama terjadi lagi, layar laptop blank tanpa ada proses yang terjadi. Nah, disini saya berkesimpulan kalau memori ini yang bermasalah. Ya sudah, berarti sampai stok memori 512 tersedia laptop saya akan jalan dengan RAM 512 MB saja dan keping memori 256 yang rusak ini pun turun tahta jadi gantungan kunci.

Share

Get Battery Status from Console with PHPCLI

Hahahaha, aku jadi inget ucapan… duh, ucapan siapa ya, lupa aku.

Problem / Limitasi akan membuat seseorang menjadi kreatif.

Contohnya ini (narsis boleh dong, blog sendiri koq ;)) ), karena main game mode fullscreen, gak bisa liat status baterai di Tray menu. Tapi masih bisa liat console (again, dengan sihir dari yakuake). tapi kalo lagi main males dong di ganggu dengan liat barus status yang panjang, mending to the point aja. Maka, jadilah script berikut ini. dia akan membaca /proc/acpi/battery/BAT1/info dan /proc/acpi/battery/BAT1/state untuk menghasilkan nilai berapa persen sisa baterai laptop sekarang.

Silahkan diambil dan dimodif sesuai kebutuhan.

#!/usr/bin/php
<?php
//read_bat_status.php
    $debug = false;
    $bat_infox = file('/proc/acpi/battery/BAT1/info');
    if($debug) print_r($bat_infox);
    foreach($bat_infox as $idx => $bat_info){
        $bat_infox[$idx] = explode(':', $bat_info);
    }
    if($debug) print_r($bat_infox);
    $lfCapacity = 0;
    foreach($bat_infox as $idx => $bat_info){
        if($bat_infox[$idx][0] == 'last full capacity'){
            $lfCapacity = trim($bat_infox[$idx][1]);
        }
    }
    if($debug) echo '$lfCapacity : '.$lfCapacity."\n";
    $bat_statex = file('/proc/acpi/battery/BAT1/state');
    if($debug) print_r($bat_statex);
    foreach($bat_statex as $idx => $bat_state){
        $bat_statex[$idx] = explode(':', $bat_state);
    }
    if($debug) print_r($bat_statex);
    $rmCapacity = 0;
    foreach($bat_statex as $idx => $bat_state){
        if($bat_statex[$idx][0] == 'remaining capacity'){
            $rmCapacity = trim($bat_statex[$idx][1]);
        }
    }
    if($debug) echo '$rmCapacity : '.$rmCapacity."\n";
    $currPercent = ($rmCapacity * 100) / $lfCapacity;
    echo 'Battery Power Remaining : '.$currPercent." %\n";
?>

Cara penggunaannya, tinggal php read_bat_status.php. Tapi sebelumnya install dulu ya paket php-cli dengan sudo apt-get install php5-cli.

Share