Friday, October 31, 2014

Real Time Clock dengan DS3231 di Raspberry Pi

Beberapa waktu yang lalu aku dapat mainan baru berupa raspberry pi tipe b+. Setelah ambil micro sd dari tablet langsung saja tak instal pake raspbmc. Untuk menginstal raspbmc di raspberry pi tidaklah begitu sulit karena sudah banyak bertebaran di internet manualnya. Waktu instal raspberry pi terhubung ke internet lewat lan di kantor sehingga semua prosesnya lancar sampai update segala. Aku begitu kaget ketika sampai di kos tak nyalakan lagi ternyata jam nya tidak cocok. Akhirnya aku tau di internet dan ternyata aku dapat jawabannnya. Ternyata dia (si  raspberry pi  itu) tidak punya hardware clock seperti di komputer atau laptop biasa.

Beberapa hari kemuadian aku mulai cari solusi. Ternyata di jauh sana ada yang jualan kayah gini
contohnya di http://nicegear.co.nz/raspberry-pi/high-precision-real-time-clock-for-raspberry-pi/ . Ternyata harganya nggak mahal juga tapi sayang aku tidak berhasil mendapatkannya di toko toko online di Indonesia mulai dari tokopedia,bhineka sampai cari di kaskus juga. Apalagi cari di toko elektronik sebelah kantor.

Dari gambar nya ada tulisan DS3231 tak coba saja cari di google.
Wow ternyata katanya itu adalah chipset real time clock. Mungkin mirip jam digital gitu. Aku juga dapat datasheetnya di http://datasheets.maximintegrated.com/en/ds/DS3231.pdf dan setelah tak baca ternyata nggak mudeng semua karena bahasanya tingkat tinggi.

Aku cari cari lagi dan akhirnya dapat http://nicegear.co.nz/blog/using-an-i2c-real-time-clock-rtc-with-a-raspberry-pi/ dan http://www.instructables.com/id/How-to-add-a-Real-time-clock-to-the-Raspberry-Pi-o/?ALLSTEPS
dari kedua link tersebut aku simpulkan bahwa ternyata chipset realtime clock tidak hanya DS3231 tapi ada juga DS1307 dan koneksinya pake i2c. Setelah cukup yakin aku pun cari yang jualan chip DS3231. Akhirnya aku dapat di https://www.tokopedia.com/sadewa-elc/ds3231-eeprom-module tapi bentuknya beda dan nggak ada keterangannya buat raspberry pi. Karena harganya murah aku pun beli satu.

Beberapa hari kemudian datang juga pesananku. Bentuknya seperti ini
Ada tulisannya 32K, SQW, SCL, SDA, VCC dan GND. Karea di link yang tak dapatkan diatas tidak ada cara memasangnya maka aku pakai cara coba coba saja.









Kebetulan aku punya gambar gpio raspberry pi b+ seperti ini


 Tanpa pikir panjang aku langsung pasang pake female-female konektor. Pertama aku pasang yang GND ke pin no 6 dan VCC ke pin no 1 dan ternyata ada lampunya menyala! Senang sekali rasanya. Setelah itu aku pasang SCL ke pin 5 dan sda ke pin 3 karena memang di situ ada tulisannya SCL1 I2C sama SCL1 I2C. Kok masih ada 2 pin lagi? tapi menurut penerawanganku nggak usah dipasang. Wkkkkwkwk pake metode dukun segala. Setelah itu aku ikuti langkah di link diatas.

Langkah pertama katanya menghilangkan backlist kernel modulnya

# Remove the module blacklist entry so it can be loaded on boot
sudo sed -i 's/blacklist i2c-bcm2708/#blacklist i2c-bcm2708/' /etc/modprobe.d/raspi-blacklist.conf
 
Wo panjang banget perintahnya. Dari pada pusing aku pake cara lain saja, intinya hanya menambah # (komen) di /etc/modprobe.d/raspi-blacklist.conf baris yang berisi blacklist i2c-bcm2708. Aku pake perintah nano /etc/modprobe.d/raspi-blacklist.conf lalu tak cari baris blacklist i2c-bcm2708 lalu depannya tak tambah # terus ctrl x lalu pilih y untuk menyimpan.

Langkah kedua menambahkan modulnya pake modprobe

# Load the module now
sudo modprobe i2c-bcm2708
 
Daripada nanti kalo reboot hilang aku masukkan sekalian di /etc/modules. Caranya seperti biasa pake nano /etc/modules lalu tak tambahkan tiga baris i2c-bcm2708 lalu i2c-dev lalu rtc-ds1307 seperti di link yang satunya biar bisa lihat pake i2cdetect sekalian. Setelah disimpan aku pun reboot raspberry pi agar modul kernel diload.

Langkah ketiga  melihat hardware dengan i2cdetect

#i2cdetect  -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- 57 -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --








Jika mengeluarkan output comnand not found maka paket i2c-tools belum terinstall di raspberry pi. Untuk menginstallnya pake perintah apt-get install i2c-tools tapi harus konek internet dulu.

Langkah keempat menambahkan baris ke rc.local

# Add the RTC device on boot
sudo sed -i 's#^exit 0$#echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device#' /etc/rc.local
echo exit 0 | sudo tee -a /etc/rc.local
 
 
 Perintah di atas intinya menmbahkan baris echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device di file /etc/rc.local tepat di atas exit 0. Seperti biasa bisa pake nano sebagai text editor. Angka sakti 0x68 sebenarnya didapat dari hasil dari i2cdetect di atas dimana ada UU di kolom 8 baris 60. Nama modulnya pake ds1307 bukan ds3231 tapi ternyata bisa mungkin mirip kali ya cara kerja hardwarenya.

Setelah selesai booting coba coba tak ketik perintah hwclock ternyata keluar output tapi tanggalnya masih kacau. Tahunnya masih 2007 wkwkkwkwkwkwk. Tak coba perintah date ternyata tanggal dan jamnya sudah bener akhirnya tak cocokkan jam di rtc nya dengan perintah hwclock -w. Setelah ini hasil perintah date sama hwclock menunjukkan waktu yang hampir sama yang bearti tanggal sistem sudah sama dengan tanggal di rtc. Sekarang tinggal menambahkan perintah di hwclock -s di bawah baris ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device diatas exit 0 di file /etc/rc.local pake nano agar jam sistem selalu diupdate dari jam di rtc pada waktu sistem operasi booting

Sekarang masalahnya tinggal satu. Gimana caranya mencocokkan jam di rtc sesuai jam sistem pada waktu sistem operasi shutdown. Harapannya jika jam sistem di update maka pada waktu shutdown jam di hardware clock ikut terupdate juga. Untuk sementara jika mengupdate jam sistem harus update jam di rtc secara manual pake hwclock -w jika lupa maka jam sistem jadi nggak cocok lagi karena diupdate sesuai jam rtc pada saat booting. Pembaca ada yang tau caranya? kasih tau ya

Sunday, January 16, 2011

Apakah QR Code itu?

Kamis, 4 November 2010 23:00:06 - oleh : shony455jr

Jika Anda membuka www.tunasjaya.com dan mendownload artikel dalam bentuk pdf maka pada bagian bawah halaman Anda akan mendapati QR Code. Apakah QR Code itu? Mari kita bahas dalam artikel ini.

Apakah QR Code itu?

QR Code adalah salah satu jenis barcode 2 dimensi. Tidak seperti barcode 1 dimensi semisal Code 128, Code 39 yang berupa garis tebal dan tipis, QR Code terdiri dari kotak-kotak kecil yang membentuk persegi. Kode QR telah mendapatkan standarisasi internasional dan standarisasi dari Jepang berupa ISO/IEC18004 dan JIS-X-0510. QR Code digunakan untuk menyimpan informasi url (alamat sebuah halaman web) cetakan kertas biasa. Dengan menggunakan ponsel yang mendukungnya, Anda dapat menterjemahkan barcode tersebut ke dalam karakter yang merupakan url. Jika di ponsel Anda terhubung ke internet misalnya melalui gprs, maka Anda dapat langsung mengakses halaman web tersebut dengan ponsel itu juga.

Sebenarnya QR Code juga dapat digunakan untuk menyimpan informasi lainnya. Nama, alamat juga nomor telepon. QR Code dapat juga ditempatkan di kartu nama sehingga isinya dapat dengan mudah disalin ke perangkat digital.

Kelebihan dari QR Code

QR Code digunakan karena mempunyai kelebihan dibandingkan dengan barcode lainnya. QR Code cenderung mempunyai densitas data yang lebih tinggi terutama jika dibandingkan dengan barcode 1 dimensi. Selain itu QR Code mampu menyimpan semua jenis data, seperti data numerik, data alphabetis, kanji, kana, hiragana, simbol, dan kode biner. Karena bentuknya yang persegi QR Code dapat dibaca dari sudut manapun.

Bagaimana cara membacanya?

Jika Anda menggunakan ponsel yang relatif mahal, maka kemungkinan besar aplikasi pembaca telah tersedia untuk Anda. Jika ternyata aplikasi tersebut tidak ada, maka Anda dapat mencari aplikasi pembaca QR Code yang dapat didownload gratis di internet. Banyak aplikasi pembaca QR Code yang diciptakan untuk hp-hp symbian, java, maupun windows mobile. Jika mau menginstal aplikasi tersebut pastikan dulu aplijasi tersebut kompetibel dengan ponsel Anda Pastikan juga hp Anda mempunyai kamera. Berikut adalah beberapa aplikasi yang bisa dipakai.

  • I-nigma reader, by 3GVision. Install via mobile browser: http://www.i-nigma.mobi or download to a computer and transfer it to your mobile device from www.i-nigma.com
  • NeoReader, by NeoMedia Technologies / Gavitec AG - mobile digit. Install via mobile browser: http://get.neoreader.com
  • UpCode reader, by UPC. Install via mobile browser: http://www.upcode.fi or download to a computer and transfer it to your mobile device from www.upc.fi/en/upcode/instructions/download
  • Semacode reader, by Semacode. Install via mobile browser: http://semacode.org/ota or download to a computer and transfer it to your mobile device from semacode.org/software/
  • QuickMark reader. Download to a computer and transfer ir to your mobile device from www.quickmark.com.tw/En/basic/index.asp
sumber www.bebekcilik.com