Selama ini saya menggunakan C.H.I.P secara headless yang artinya tanpa monitor, tanpa keyboard, tanpa mouse. Lalu bagaimana cara aksesnya? Bagaimana cara memprogramnya?
Untuk melakukan itu semua dibutuhkan bantuan komputer lain. Saya biasanya menggunakan laptop MacBook Air atau menggunakan Raspberry Pi dengan memanfaatkan ssh atau screen (serial).
Yang jadi masalah adalah CHIP ini sejatinya sebuah komputer juga. Dia memiliki sistem operasi yang lengkap dan kompleks juga. Untuk mematikannya tidak boleh asal cabut power atau menahan tombol reset sampai mati. Karena kalau begitu caranya, maka file system bisa corrupt. Atau bahkan merusak storage internalnya. Ini tentu berbeda dengan Arduino yang kalau mematikannya langsung dengan memutuskan power supply-nya.
Selama ini rada repot mematikan CHIP karena saya harus akses secara remote dulu (via ssh atau serial) baru kemudian menjalankan perintah shutdown. Nah hari ini saya belajar bahasa pemrograman Python dan akses GPIO. Jadi sekalian saja membuat tombol Shutdown. Caranya gampang banget. Tidak pake lama.
Pertama, buatlah tombol yang terhubung ke XIO-P7 dan GND. Jadi kalau tombol ini ditekan, maka XIO-P7 akan tersambung ke ground.
Kemudian buatlah script python test_shutdown.py
. Isinya adalah sebagai berikut:
#!/usr/bin/python import CHIP_IO.GPIO as GPIO import subprocess GPIO.setup("XIO-P7", GPIO.IN) while True: if GPIO.input("XIO-P7") == 0: print "Shutting down..." subprocess.call(["sudo","shutdown","-h","now"])
Untuk menjalankannya harus pakai sudo
karena akses ke GPIO dan perintah shutdown harus dilakukan oleh superuser.
sudo python test_shutdown.py
Oh iya, jangan lupa tambahkan bit execute supaya script bisa dijalankan tanpa mengetikkan python:
chmod +x test_shutdown.py sudo ./test_shutdown.py
Coba tekan tombol tersebut. Apakah CHIP akan shutdown?