22 April 2020

Antena dari tin minuman aluminium

Mungkin ada yang tahu bahawa tin minuman aluminium boleh dimanipulasi menjadi antena tv ataupun radio. Ini kerana bahan buatan tin iaitu aluminium adalah merupakan bahan pengalir yang baik dan kosnya adalah murah. Aluminium adalah bahan pengalir terbaik selepas tembaga. Kebanyakan antena diperbuat daripada aluminium.
Kos pembuatan daripada aluminium adalah lebih murah berbanding dengan tembaga ataupun perak. Perkara kedua pembuatan dari aluminium adalah ianya anti oksidan dan anti karat. Memandangkan kedudukannya yang biasa diletakkan dibumbung-bumbung rumah.

Jadi kita boleh mencuba untuk menggunkan tin minuman yang diperbuat dari aluminium sebagai bahan untuk membuat antena.

Ambil tin minuman aluminium yang telah kosong dan dikeringkan.
Potong dibahagian tengah menjadi dua bahagian.
Tebuk lubang kecil untuk dimasukkan wayar antena coaxial kemudian dipaterikan. Tidak perlu memateri ke tin aluminium, cuma pateri pada wayar dan membuatnya tersentuh dan lekat pada lubang kecil yang ditebuk tadi.
Lekatkan pada dinding atau tingkap (menghala ke arah pemancar siaran yang terdekat).
Pasang pada tv, tala, dan lihat penerimaan siaran.

Penerimaan siaran digital seperti myFreeview adalah lebih mudah berbanding dengan siaran analog sebelum ini.

Selamat mencuba.

Contoh gambar antena dari tin aluminium.

07 April 2020

Bateri CMOS CR2032 Mainboard Kering


Apa yang berlaku jika bateri CMOS CR2032 kering?

Jam dan kalendar tidak mengikut masa dan haribulan yang telah ditetapkan setiap kali suis AC 240 volt ke komputer(CPU) ditutup(OFF). Ianya sentiasa akan reset ke masa dan haribulan semasa BIOS dilancarkan. Jika mainboard dikeluarkan pada tahun 2000, ia akan disetkan ke tahun 2000.

So macamana nak buat ni? Nak pergi beli, PKP pulak. Oh ya, saya masih ada banyak stok bateri AAA 1.5volt.
Kita boleh gunakan bateri AAA dua biji untuk menggantikan bateri CMOS yang dah kering.

Ambil dua biji bateri AAA atau AA 1.5volt dan solderkan seperti gambar. Bateri disambung bersiri. 

Lepas tu pasang ke mainboard seperti gambar.
Ambil double side tape dan gamkan ke bahagian yang tiada komponen di mainboard.

So settle masalah bateri CMOS kering. Jam dan kalendar tidak akan reset lagi sehinggalah bateri AAA 1.5v juga kering.

(artikel ini juga diletakkan dimukasurat Manipulasi(Hack))

26 Jun 2019

Raspbian Buster untuk Raspberry Pi 4

Raspbian Buster adalah OS terbaru Raspbian yang dibangunkan khas untuk dilancarkan bersama dengan pelancaran Raspberry Pi 4. Jurutera Raspberry Pi merasakan adalah perlu dibangunkan OS yang baru agar pengguna Raspberry Pi 4 merasai kelainan modul yang baru. Jika modul baru tetapi OS masih yang lama, pasti pengguna merasa seolah-olah sama sahaja seperti modul yang lama. Sungguhpun begitu, OS Raspbian Buster masih mendukung pemasangan di modul yang lama dari versi Raspberry Pi 1 sehingga Raspberry Pi 4. Saya telah memasang OS Raspbian Buster pada Raspberry Pi 3 B+ rasa seperti ada sedikit kecekapan telah ditingkatkan. Apapun pasti Raspberry Pi 4 yang dipasang Raspbian Buster lebih cekap lagi kerana pemproses dan memori versi baru yang telah dipertingkatkan untuknya.
Berikut adalah beberapa screenshot Raspbian Buster yang saya pasangkan kepada Raspberry Pi 3 B+.








25 Jun 2019

Raspberry Pi 4 Telah Dilancarkan

Berita yang amat mengujakan yang mana Raspberry Pi 4 telah dilancarkan pada 24 Jun semalam. Apa yang mengejutkan adalah kerana CEO Raspberry Pi, Eben Upton telah menyatakan bahawa tidak akan ada pelancaran model terbaru sehingga tahun 2020. Nampaknya mereka telah mendahului jadual yang mana Raspberry Pi 4 dapat dilancarkan lebih awal dari masa yang sepatutnya. Melihat kepada spesifikasi model terbaru ini, ianya amat menarik kerana ianya semakin setanding dengan PC desktop. Boleh lihat spesifikasinya disini.
Nampaknya saya terpaksa membelinya dahulu untuk membuat ulasan yang seterusnya. Kepada yang teruja bolehlah memesannya disini.
 
Foto Raspberry Pi 4 dari laman Raspberry Pi

Foto spesifikasi Raspberry Pi 4 dari laman Raspberry Pi
 

15 Mei 2019

Raspberry Pi 3 B+ - Kini lebih pantas

Kemunculan Raspberry Pi 3 B+ dengan pemproses Quad Core 64bit 1.4GHz nampaknya telah mampu untuk menggantikan PC desktop yang digunakan untuk kerja-kerja komputer harian. Mungkin ramai yang agak sangsi dengan kenyataan ini. Namun spesifikasi yang ada sekarang adalah sama dengan spesifikasi minima yang diperlukan untuk menjalankan Windows7 jika bercakap tentang sistem komputer peribadi desktop. Namun pemproses ARM yang digunakan Raspberry Pi bukanlah dicipta untuk menjalankan sistem operasi Windows, cuma jika hendak dibandingkan spesifikasinya adalah munasabah. Sebagai contoh Windows7 memerlukan minima pemproses 1GHz dan memori 1GB. Jadi spesifikasi terbaru Raspberry Pi 3 B+ ini adalah setanding jika menjalankan sistem Windows7. Jika kita menukarkan sistem PC yang ada sekarang kepada Raspberry Pi, ianya tidak lagi menjadi masalah malah ia lebih menjimatkan wang, ruang dan lain-lain kelebihan lagi.
Tahukah anda apakah sistem operasi yang khusus dibangunkan untuk pemproses ARM? Ia bukanlah Raspbian kerana ianya berasaskan Linux Debian. Cuma ia mudah digunakan kerana paparan desktopnya dan penggunaannya adalah seakan-akan Windows. Sistem operasi yang sepatutnya untuk pemproses ARM adalah RISCOS yang sememangya khusus dibangunkan untuk pemproses ARM. Namun ianya terlalu kekok untuk digunakan kerana terlalu berbeza samada dengan Windows ataupun Linux. Cuma jika kita mencuba RISCOS kita dapat merasakan kepantasannya setanding jika kita menggunakan Windows pada pemproses Intel atau AMD. Di samping itu, sistem operasi Raspbian yang berasaskan Linux Debian telah dibangunkan khusus untuk Raspberry Pi dan ianya juga kini semakin mampu untuk menjalankan kerja-kerja komputer harian kita. Sama seperti kita menjalankan kerja-kerja komputer harian kita menggunakan sistem Windows ataupun Linux.

14 Mei 2019

Raspberry Pi - Membuang aplikasi dan menjimatkan ruang SD

Setelah kita memasang OS Raspbian pada kad SD, pasti terdapat beberapa aplikasi yang kita tidak akan menggunakannya. Namun ianya tersedia didalam OS Raspbian mengikut citarasa jurutera perisian Raspberry Pi. Jika dilihat dari segi penggunaan Raspberry Pi, ianya biasa ditetapkan untuk sesuatu fungsi. Contoh adalah seperti sebagai server, pengesan suhu atau cuaca, pengawal robot dan sebagainya. Jadi beberapa aplikasi yang telah tersedia pasti tidak akan digunakan langsung apabila penggunaan Raspberry Pi telah ditetapkan. Kecualilah kita akan menggunakannya sebagai Desktop. Beberapa aplikasi akan kita gunakan namun begitu masih juga ada aplikasi yang akan dibiarkan sahaja. Untuk lebih mempercepatkan tugas dan sekaligus menjimatkan ruang pada kad SD, adalah lebih baik aplikasi yang tidak digunakan ini dibuang sahaja. Sebagai contoh dibawah adalah beberapa aplikasi yang tidak saya gunakan setelah memasang OS Raspbian. Lalu saya membuang aplikasi-aplikasi ini. Ruang yang dapat saya jimatkan adalah hampir 3GB. Dan apabila saya shrink dan menyimpan kembali OS itu ianya telah kurang daripada 4GB. Jadi proses menyimpan dan memasang semula OS juga dapat dikurangkan.

Berikut adalah aplikasi-aplikasi itu dan cara untuk membuangnya dari OS Raspbian.

Wolfram
LibreOffice
Scratch
Scratch 2
Minecraft –pi
Geany
Chromium –browser
Chromium
Python3 –thonny
Sense hat emulator

Cara untuk membuang aplikasi-aplikasi ini adalah dengan menjalankan arahan pada  terminal,

$ sudo apt-get purge 'nama aplikasi seperti diatas' 
 
atau

$ sudo apt-get remove 'nama aplikasi seperti diatas' 
 
Kemudian jalankan

$ sudo apt-get clean 
 
Jumlah ruang untuk semua aplikasi diatas adalah 3 Gbyte.

Raspberry Pi dan LCD 3.5 XPT2046

Bagaimana hendak mengaktifkan LCD 3.5 inci XPT2046 pada Rapberry Pi dengan cara yang mudah. Tidak perlu install driver, hanya setkan di Raspberry Pi sahaja dengan menggunakan beberapa command dan script. 

LCD 3.5 inci XPT2046

Setelah OS Raspbian ditulis pada kad SD/microSD, bootkan Raspberry Pi dan HDMI display akan memaparkan OS Raspbian. Setkan apa yang dianjurkan. Setelah selesai iaitu selepas reboot,
1. Aktifkan SPI interface terlebih dahulu,
pada terminal jalankan,
$ sudo raspi-config
pergi ke, Interfacing Options -  SPI - Yes - Ok 
2. Kemudian buka terminal dan edit,
$ sudo nano /boot/config.txt
dibawah sekali tambahkan,
dtoverlay=piscreen,speed=16000000,rotate=90
save config (ctrl+x, y, enter)
3. Kemudian edit,
$ sudo nano /usr/share/X11/xorg.conf.d/99-fbturbo.conf
lihat pada, Option     “fbdev” “/dev/fb0”
tukarkan fb0 kepada fb1, contoh, Option      “fbdev” “/dev/fb1”
save conf (ctrl+x, y, enter)
$ reboot

Apabila restart, LCD akan aktif dan HDMI display akan blank.
Anda sudah boleh menggunakan LCD 3.5 inci XPT2046.
Untuk mengaktifkan kembali HDMI display, tukar semula “fb1” kepada “fb0”.
Apabila restart HDMI display akan diaktifkan.

LCD 3.5 inci telah aktif

Cara ini telah dicuba pada semua versi Raspberry Pi.
Os yang digunakan adalah 2019-04-08-raspbian-stretch.

29 April 2019

Xfce Muslim Edition Untuk Raspberry Pi

Jika sebelum ini kita memasang aplikasi Islamik pada Raspbian, bagaimana pula jika ianya dipasang pada Xfce? Dengan prestasi yang lebih pantas, adalah berbaloi mencubanya pada Xfce.
Saya menamakannya RpixMe iaitu Raspberry Pi Xfce Muslim Edition. Raspberry Pi dipasang dengan desktop Xfce4 dan aplikasi Islamik. Ianya nampak lebih hebat. Lain-lain aplikasi adalah sama seperti RaspbianMe.
Mari kita lihat beberapa paparan skrin desktop.

1. Paparan skrin desktop
 2. Beberapa aplikasi Islamik
3. Aplikasi Zekr
4. Aplikasi Minbar

Jika anda perasan logo Raspberry pada Menu adalah berwarna hijau. Ianya adalah untuk membezakan edisi Muslim.

28 April 2019

Raspbian Muslim Edition untuk Raspberry Pi

Raspbian Muslim Edition atau RaspbianMe adalah OS Raspbian untuk Raspberry Pi yang dipasangkan dengan beberapa aplikasi Islamik. Ianya masih dalam proses ujian pembuatan. Mengambil inisiatif daripada pembuatan sistem operasi Sabily untuk komputer peribadi sebelum ini, sistem operasi Islamik untuk SOC juga harus ada. Untuk sementara ini hanya tertumpu kepada SOC Raspberry Pi.


Contoh aplikasi Islamik yang telah dipasangkan adalah seperti,
Zekr - Aplikasi bacaan Al-Quran dan terjemahan.
Othman - Aplikasi bacaan Al-Quran.
Minbar - Aplikasi waktu solat.
Hijri Calendar - Kalendar Hijrah Islam.
Monajat - Bacaan doa yang keluar mengikut tetapan waktu.
Noor - Aplikasi pembacaan Al-Quran.

Disamping itu beberapa applikasi asas yang terdapat pada OS Raspbian dikekalkan.

Adakah anda berminat dengan projek ini?

19 November 2018

Raspberry Pi USB Boot

Mungkin ada yang terfikir samada kita boleh boot OS untuk Raspberry Pi melalui USB. Jawapannya jika hanya menggunakan pemacu USB adalah tidak boleh. Namun kita boleh boot dahulu menggunakan kad micro sd kemudian menjalankan sistem operasinya melalui pemacu USB. Maknanya boot melalui sd dan root melalui pemacu USB. Kenapa nak root menggunakan pemacu USB? Kalau mengikut apa yang saya fikirkan,
1. Pemacu USB biasa digunakan di mana-mana PC. Namun micro sd memerlukan adaptor untuk digunakan di kebanyakan PC.
2. USB speed adalah lebih laju dari micro SD. Maximum untuk SD adalah 10Mb/s namun USB 2.0 adalah 60Mb/s.
3. Kita hanya perlukan saiz micro SD yang kecil sahaja untuk boot.
Oleh itu apa yang saya lakukan adalah memasang OS Raspbian Lite kepada 2Gb micro SD kemudian memasang OS bersaiz besar yang lain kepada pemacu USB, sebagai contoh Rasbian Desktop kepada pemacu USB 8Gb.
Bagaimana melakukannya?
Setelah Raspbian Lite dipasang kepada 2Gb micro SD dan Rasbian Desktop dipasang kepada pemacu USB 8Gb, pasangkan kedua-duanya ke Raspberry Pi dan jalankan sistem. Login ke Rasbian Lite kemudian edit file cmdline.txt menggunakan Nano editor melaui command, sudo nano /boot/cmdline.txt. Tukarkan root=xxxxx kepada root=/dev/sda2. Sda2 adalah root pada pemacu USB. Kemudian save dan exit. Kemudian reboot Raspberry Pi. 
Selepas boot, ia akan bertukar ke root pada pemacu USB. Kerja akan menjadi lebih cepat berbanding dengan root pada pemacu kad micro SD.

04 November 2018

Proton Infotainment - Projek Alat Info dan Hiburan Raspberry Pi

Proton Infotainment adalah projek berasaskan Raspberry Pi yang dibangunkan sebagai alat pemain informasi dan hiburan didalam kereta. Oleh kerana saya memiliki kereta Proton, jadi saya menggolahnya dengan logo Proton.
Namun begitu ia bukanlah hanya boleh digunakan didalam kereta. Ia boleh digunakan dimana-mana sahaja samada kenderaan, rumah atau tempat perniagaan.
Diasaskan dari sistem operasi Kodi, antaramukanya diolah mengikut kesesuaian yang saya inginkan.
Jika anda memiliki Raspberry tidak kira versi, anda boleh menjalankan sistem Proton Infotainment ini dan mengawalnya dengan menggunakan tetikus atau papan kekunci.
Sungguhpun saya telah membangunkan pengawalan dengan menggunakan butang suis atau skrin sesentuh, namun saya tidak dapat melancarkannya untuk kegunaan umum buat masa ini. Ia mungkin dilancarkan pada versi yang akan datang.
Jika anda berminat untuk mencuba projek ini, bolehlah menghubungi saya untuk mendapatkan fail imej.
Berikut adalah beberapa gambar Proton Infotainment.

Antaramuka Menu
Antaramuka Settings
 Antaramuka Music

01 Oktober 2016

Raspberry Pi Simple Audio Player



Raspberry Pi Simple Audio Player(RPISAP) adalah pemain audio yang sangat simple penggunaannya.  Pasangkan bekalan kuasa kepada Raspberry Pi, lagu atau fail audio akan terus dimainkan secara otomatik. Tekan suis untuk PAUSE atau pergi ke NEXT TRACK. Tekan suis SHUTDOWN untuk shutdown tanpa merosakkan fail operasi. Aktiviti dapat dilihat pada LED atau skrin. Pasangkan pemacu USB untuk tukar dan memainkan lagu lain. Ianya dilakukan secara otomatik.

Imej fail atau imej yang sudah ditulis kepada kad SD juga boleh dipos dengan kos yang berpatutan.
Sila emel kepada saya untuk keterangan lanjut di meorbu@gmail.com.


Raspberry Pi Simple Audio Player(RPISAP) telah diuji berfungsi pada Raspberry Pi 1A, Raspberry Pi 1B dan Raspberry Pi2.

Raspberry Pi Simple Audio Player(RPISAP) juga boleh dibina sendiri dengan cara yang diterangkan dibawah untuk kegunaan sendiri.

Berasaskan daripada Raspberry One Button Audio Book(RPOBAP) yang boleh dilihat dilaman web blogs.fsfe.org. RPOBAP mendapat sambutan untuk orang kurang upaya kerana penggunaannya yang sangat mudah yang tidak memerlukan tetapan yang khusus. Hanya tekan satu butang untuk play, pause dan reverse track. Kebanyakan yang memberi komen disitu menyatakan ia memudahkan untuk golongan orang kurang upaya atau orang-orang yang tidak mampu untuk melakukan pergerakan yang banyak. Jadi sama ada untuk mendengar lagu, rakaman suara atau lain-lain, pemain audio Raspberry Pi One Button Audio Player sangat membantu.
Konsep penggunaan RPOBAP sangat mudah. Pengguna perlu salin lagu ke pemacu USB yang dilabelkan dengan nama 1GB. Kemudian pemacu tersebut di pasang kepada RPOBAP dan fail lagu akan disalin ke RPOBAP secara automatik. Kemudian keluarkan pemacu tersebut dan tekan suis di RPOBAP untuk mainkannya. Tekan suis sekali dan lagu akan pause. Tekan kembali dan lagu akan disambung main semula. Tekan suis selama tiga saat dan lagu akan diulang semula.
Raspberry Pi Simple Audio Player(RPISAP) terhasil dari konsep itu namun ditambah sokongan dengan paparan display dan suis shutdown. Dengan mengekalkan konsep asal tambahan paparan adalah untuk memaparkan informasi fail lagu yang dimainkan tanpa perlu masuk kepaparan desktop. Bermakna kita hanya menggunakan paparan text console sahaja. Ini dapat menjimatkan penggunaan CPU dan memori disamping ruang simpanan data juga diluaskan. Penambahan suis shutdown pula adalah untuk memastikan sistem fail tidak rosak apabila RPISAP tidak dipadam(shutdown) dengan betul apabila kuasa yang dibekalkan kepadanya diputuskan dengan tiba-tiba ketika sedang beroperasi. Jadi penambahan suis shutdown adalah penting untuk memastikan kepanjangan hayat RPISAP.
Sememangnya banyak suis dan fungsi lain boleh ditambahkan kepada RPISAP tetapi oleh kerana untuk mengekalkan konsep asal supaya ianya murah dan mudah digunakan oleh sesiapa sahaja, mencukupilah dengan hanya menambahkan suis shutdown sahaja.
Untuk membina RPISAP kita perlu mengikut langkah-langkah yang saya terangkan ini.
Pertama sekali kita perlu memasang perisian Rasbian. Hanya Rasbian minimum, iaitu tanpa paparan desktop sudah mencukupi dan ianya boleh dipasangkan kepada kad memori 2 Gigabyte sahaja. Fail Rasbian minimum boleh dimuat turun dari sini. Cara pemasangan Rasbian minimum boleh dilihat di sini.
Kedua, perlu memasang satu led, dua suis dan beberapa perisian seperti yang dinyatakan dilaman Raspberry Pi One Button Audio Book namun perlukan beberapa langkah tambahan untuk menjadikannya Raspberry Pi Simple Audio Player. Oleh itu, skrip python RPISAP juga adalah berbeza dari RPOBAB dengan penambahan beberapa arahan baru.

Berikut adalah langkah-langkah yang perlu dilakukan untuk membina Raspberry Pi Simple Audio Player,

1. Pasangkan dua suis dan led seperti didalam gambar.

 Gambarajah litar skema pemasangan suis dan LED.
Gambarajah contoh penyambungan pada PCB. Suis kiri PAUSE dan suis kanan SHUTDOWN.

2. Pastikan sistem operasi Rasbian minimum telah dipasangkan dan berfungsi dengan baik.
3. Update raspbian terlebih dahulu.
   $ sudo apt-get update
4. Pasangkan perisian seperti berikut,
   $ sudo apt-get install mpd
   $ sudo apt-get install mpc
   $ sudo apt-get install python-mpd
   $ sudo apt-get install python-pyudev
   $ sudo apt-get install fbi

bina folder untuk menyimpan data lagu,
   $ sudo mkdir -p /music/usb
   $ sudo ln -s /var/lib/mpd /music/mpd
   $ sudo ln -s /var/lib/mpd/music /music/mp3

5. Untuk memastikan perisian telah dipasang dengan betul dan folder telah dibina, uji dengan mengikut langkah seperti berikut,

Namakan pemacu usb "RPISAP" dan salin satu file lagu mp3 kedalamnya (tanpa folder).
Pasangkan pemacu usb itu ke Raspberry Pi.
Di text console jalankan,
   $ sudo mount /dev/sda1 /music/usb
   $ sudo /etc/init.d/mpd stop
   $ sudo rm /music/mp3/*
   $ sudo cp /music/usb/* /music/mp3/
   $ sudo umount /music/usb

Keluarkan pemacu usb
   $ sudo rm /music/mpd/tag_cache
   $ sudo /etc/init.d/mpd start
   $ mpc clear
   $ mpc ls
   $ mpc ls | mpc add
   $ sudo /etc/init.d/mpd restart
   $ mpc play

Pasangkan headphone atau sambungkan ke amplifier. Pastikan bunyi lagu mp3 dapat dimainkan. Jika lagu tidak dimainkan, bermakna langkah-langkah diatas tidak berjaya. Cuba semak kembali langkah-langkah diatas dan pastikan ianya telah diikut dengan betul.
Tahniah jika anda telah dapat mendengar lagu mp3 dimainkan dan kita boleh terus dengan langkah-langkah seterusnya untuk membina RPISAP.

6. Bina skrip python seperti berikut atau emel saya untuk pos skrip yang telah siap dan simpan dengan nama rpisap.py di folder /home/pi. Kita akan menjalankan RPISAP melaluinya nanti.

#!/usr/bin/env python
#  Original Copyright (C) 2012 Michael Clemens for Raspberry Pi One Button Audio Book
#
#  Edited by meorBu 2016 modified for Raspberry Pi Simple Audio Player
#
#  This program is free software: you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation, either version 3 of the License, or
#  (at your option) any later version.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this program.  If not, see .

import RPi.GPIO as GPIO
import os
import pyudev
import time
import subprocess
import sys

from mpd import (MPDClient, CommandError)
from socket import error as SocketError
from time import sleep

# Configure MPD connection settings
HOST = 'localhost'
PORT = '6600'
CON_ID = {'host':HOST, 'port':PORT}

# Configure IO ports
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.IN)
GPIO.setup(24, GPIO.OUT)

## Some functions
def mpdConnect(client, con_id):
        """
        Simple wrapper to connect MPD.
        """
        try:
                client.connect(**con_id)
        except SocketError:
                return False
        return True

def loadMusic(client, con_id, device):
        os.system("mount "+device+" /music/usb")
        os.system("/etc/init.d/mpd stop")
        os.system("rm /music/mp3/*")
        print("\n\033[32mCOPY FILES FROM USB DRIVE\033[0m\n")
        os.system("cp /music/usb/* /music/mp3/")
        os.system("umount /music/usb")
        os.system("rm /music/mpd/tag_cache")
        os.system("/etc/init.d/mpd start")
        os.system("mpc clear")
        sleep(2.0)
        os.system("mpc listall | mpc add")
        sleep(2.0)
        os.system("/etc/init.d/mpd restart")
        print("\n\n\033[32mFILE HAD BEEN COPIED TO RPISAP\n\033[0m")
        os.system("mpc playlist | cat -n")

def flashLED(speed, time):
        for x in range(0, time):
                GPIO.output(24, GPIO.LOW)
                sleep(speed)
                GPIO.output(24, GPIO.HIGH)
                sleep(speed)

def updateLED(client):
        # adjust LED to actual state
        if client.status()["state"] == "play":
                GPIO.output(24, GPIO.LOW)
                sys.stdout.write("\r   P L A Y   >            ")
                sys.stdout.flush()
        else:
                GPIO.output(24, GPIO.HIGH)
                sys.stdout.write("\r   P A U S E  | |         ")
                sys.stdout.flush()

def checkForUSBDevice(name):
        res = ""
        context = pyudev.Context()
        for device in context.list_devices(subsystem='block', DEVTYPE='partition'):
                if device.get('ID_FS_LABEL') == name:
                        res = device.device_node
        return res

def main():
        ## MPD object instance
        client = MPDClient()
        mpdConnect(client, CON_ID)

        os.system('mpc volume 95')      
        os.system('mpc -q repeat on')
        

        timebuttonisstillpressed = 0

        flashLED(0.5, 5)
        updateLED(client)

        client.play()

        lastsong = None

        while True:
                device = checkForUSBDevice("RPISAP") # RPISAP is the name of the thumb drive
                if device != "":
                        # USB thumb drive has been inserted, new music will be copied
                        flashLED(0.3, 2)
                        os.system('clear')
                        print " "
                        print ("\033[32mUSB DRIVE CONNECTED\033[0m")
                        print " "
                        client.disconnect()
                        loadMusic(client, CON_ID, device)
                        mpdConnect(client, CON_ID)
                        print ("\nRPISAP STATUS\n")
                        os.system("mpc stats")
                        flashLED(0.3, 3)
                        print " "
                        print ("\033[32mCOMPLETED, PLEASE REMOVE USB\033[0m")
                        print " "
                        # wait until thumb drive is unplugged again
                        while checkForUSBDevice("RPISAP") == device:
                                sleep(1.0)
                        os.system("sudo fbi -d /dev/fb0 --noverbose -a -once -t 3 /etc/splash.png")
                        flashLED(0.3, 4)
                        client.play()
                        updateLED(client)
                if GPIO.input(17) == True:
                        if timebuttonisstillpressed == 0:
                                # button has been pressed, pause or unpause now
                                if client.status()["state"] == "stop":
                                        client.play()
                                        updateLED(client)                                      
                                else:
                                        client.pause()
                                updateLED(client)
                        elif timebuttonisstillpressed > 2:
                                # go forward one track if button is pressed > 3 secs
                                client.next()
                                sys.stdout.write("\r   N E X T  T R A C K  > >")
                                sys.stdout.flush()
                                flashLED(0.3, 3)
                                timebuttonisstillpressed = 0
                                updateLED(client)
                        timebuttonisstillpressed = timebuttonisstillpressed + 0.1
                else:
                        timebuttonisstillpressed = 0
                        updateLED(client)
                currentsong = client.currentsong()
                if currentsong != lastsong:
                   os.system('setterm -blank 0')
                   os.system('setterm -cursor off')
                   os.system('clear')
                   print "\n\n\n  ----------------------------------------"
                   print "  * RASPBERRY  PI  SIMPLE  AUDIO  PLAYER *"
                   print "  ----------------------------------------"
                   print "\n  [[ CURRENT SONG ]]\n"
                   os.system('mpc current -f "[   Artist -  %artist%]\n[   Album  -  %album%]\n[   Track  -  %position%]\n[   Title  -  %title%]\n[   Time   -  %time% sec]"')
                   print "\n  [[ STATUS ]]\n"
                   lastsong = currentsong
                sleep(0.1)

# Script starts here
if __name__ == "__main__":
    main()

7. Cuba jalankan skrip python tadi,
   $ sudo python /home/pi/rpisap.py

Jika skrip python yang ditulis tadi sempurna, file lagu mp3 tadi akan dipaparkan di display dengan beberapa info. Ianya pasti terus dimainkan dan bunyinya dapat didengari. Jika tidak, semak semula skrip python yang ditulis tadi. Jika sudah berjaya, pasangkan pemacu usb dengan nama 'RPISAP' tadi,fail lagu mp3 dari dalam pemacu USB akan disalin secara otomatik ke folder /music/mp3 di RPISAP. Semasa proses ini berlaku lampu LED akan menyala mengikut proses yang dilakukan.
Semasa pemacu USB dipasang, lampu LED akan menyala berkelip dua kali. Selepas siap menyalin lampu LED akan menyala berkelip tiga kali. Kemudian selepas pemacu USB dicabut lampu LED akan menyala berkelip empat kali dan fail lagu mp3 akan terus dimainkan secara otomatik. Semua log proses yang berlaku ini dapat dilihat pada paparan skrin yang mana tidak untuk Raspberry Pi One Button Audiobook.

Contoh paparan semasa proses menyalin data dari USB yang dapat dilihat pada skrin.

8. Setiap kali fail lagu bertukar, log info akan dipaparkan di paparan display. Semua lagu akan dimainkan berterusan dan diulang semula. Tekan butang play untuk pause. Tekan kembali untuk sambung main semula. Tekan butang play berterusan selama lebih tiga saat untuk melompat satu fail kedepan.

Contoh paparan skrin semasa PLAY.

Contoh paparan skrin semasa PAUSE.

9. Semua proses itu adalah proses asas yang terdapat pada Raspberry Pi One Button Audiobook namun diolah dengan beberapa kod baru.

10. Untuk penambahan suis shutdown bina skrip seperti berikut atau emel saya untuk pos skrip yang telah siap dan simpan dengan nama shutdown.py di folder /home/pi. Ianya akan dijalankan secara senyap dibahagian belakang proses.

import RPi.GPIO as GPIO
import time
import os

GPIO.setmode(GPIO.BCM)
GPIO.setup(22, GPIO.IN)

while True:
        if(GPIO.input(22)):
                os.system("sudo shutdown -h  now")
                break
        time.sleep(0)


11. Untuk penambahan imej splash ataupun plymouth khas Raspberry Pi Simple Audio Player, boleh download imej diatas dan tulis kod bash seperti berikut.

#! /bin/sh
### BEGIN INIT INFO
# Provides:          asplashscreen
# Required-Start:
# Required-Stop:
# Should-Start:
# Default-Start:     S
# Default-Stop:
# Short-Description: Show custom splashscreen
# Description:       Show custom splashscreen
### END INIT INFO


do_start () {

    /usr/bin/fbi -T 1 -noverbose -a /etc/splash.png
    exit 0
}

case "$1" in
  start|"")
    do_start
    ;;
  restart|reload|force-reload)
    echo "Error: argument '$1' not supported" >&2
    exit 3
    ;;
  stop)
    # No-op
    ;;
  status)
    exit 0
    ;;
  *)
    echo "Usage: asplashscreen [start|stop]" >&2
    exit 3
    ;;
esac

:

Boleh memohon kod bash yang telah siap melalui emel saya.

Proses terakhir untuk melengkapkan Raspberry Pi Simple adalah seperti berikut.

1. Pertama sekali kita harus boot terus ke konsol text tanpa melalui proses log masuk. Edit fail seperti berikut,
  $ sudo nano /etc/systemd/system/getty.target.wants /getty@tty1.service
pergi kebahagian [Service] tambah pada arahan ExecStart,
  ExecStart=-/sbin/agetty --autologin pi --noclear %1 $TERM
tekan key Ctrl dan X kemudian key Y kemudiah Enter untuk simpan. Apabila reboot nanti, Raspberry Pi akan terus login ke konsol text menggunakan user pi tanpa perlu login skrin.

2. Untuk dapat melihat proses log di paparan skrin, skrip python mesti dijalankan secara otomatik selepas login. Edit fail profile,
   $ sudo nano /etc/profile
dibahagian bawah sekali tambahkan
   $ sudo python /home/pi/rpisap.py
skrip akan dijalankan secara otomatik selepas login.

3. Skrip shutdown mesti dijalankan secara background atau latar. Edit fail seperti berikut,
   $ sudo crontab -e
dibahagian bawah sekali tambahkan,
   @reboot python /home/pi/shutdown.py &
Apabila suis shutdown ditekan selepas reboot, Raspberry Pi Simple Audio Player akan shutdown dengan sempurna tanpa mengganggu sistem fail.

4. Untuk imej splash atau plymouth, salin imej splash ke folder home/pi/etc/. Kemudian salin kod bash dengan nama asplashscreen ke folder /etc/init.d/. Buatkan script itu boleh dilancarkan,
    $ sudo chmod a+x /etc/init.d/asplashscreen
    $ sudo insserv /etc/init.d/asplashscreen

Kini apabila reboot, splash screen akan dipaparkan, skrip rpisap.py akan berjalan dan Raspberry Pi Simple Audio Player telah lengkap dipasangkan. Lagu akan dimainkan secara otomatik. Salin fail mp3 ke pemacu USB kemudian pasangkan ke RPISAP dan fail mp3 akan disalin ke RPISAP. Keluarkan pemacu apabila selesai dan fail mp3 akan dimainkan secara otomatik.
Suis shutdown juga akan berfungsi apabila ditekan. RPISAP akan shutdown dengan selamat tanpa merosakkan fail-fail penting didalamnya.
Tahniah jika anda telah berjaya membina Raspberry Pi Simple Audio Player. Jika sebaliknya, semak semula sama ada langkah-langkah diatas telah diikuti dengan betul.

Setelah semua selesai, RPISAP boleh digunakan tanpa sambungan skrin, keyboard dan mouse. Proses PLAY, PAUSE, JUMP TRACK dan penyalinan fail dari pemacu USB boleh melihat kepada LED sahaja.

Selamat mencuba.

11 Mac 2016

Memasang OS Raspbian ke Raspberry Pi

Untuk memasang OS Raspbian atau OS lain ke Raspberry Pi, jika didalam OS Window, kita memerlukan perisian Image Writer. Sebenarnya kita hanya perlu memasang kepada kad SD atau micro SD kemudian terus sahaja dijalankan pada Raspberry Pi. Namun begitu terdapat juga perisian yang memberi kita pilihan untuk memasang OS melalui Raspberry Pi sendiri sebagai contoh NOOBS yang boleh dimuat turun dari laman rasmi Raspberry Pi.
Untuk kali ini kita hanya akan membincangkan cara pemasangan OS terus ke kad SD atau micro SD.
Perisian Image Writer untuk Window boleh dimuat turun dari sini https://sourceforge.net/projects/win32diskimager/. Setelah selesai dimuat turun, pasangkan perisian Image Writer ke Window.
Image Raspbian boleh dimuat turun dari laman web rasmi Raspberry Pi di https://www.raspberrypi.org/downloads/raspbian/.
Berikut adalah langkah-langkah pemasangannya,

Pasangkan kad SD atau micro SD ke PC menggunakan USB Card Reader.
Jalankan perisian Image Writer. Tentukan lokasi dan pilih fail image Raspbian yang telah dimuat turun tadi.
Pilih device (iaitu USB Card Reader yang telah dipasangkan kad SD tadi). Pastikan pilihan device tadi adalah betul kerana kesilapan memilih mungkin akan menyebabkan kita kehilangan data-data penting didalam pilihan device yang salah. Kita boleh memastikan device dengan merujuk kepada My Computer. Sebagai contoh didalam gambar device adalah Removable Disk (G:).
Jika telah pasti, tekan butang Write dan tunggu sehingga Complete.
Tekan butang OK.
Keluarkan kad SD kemudian pasangkan ke Raspberry Pi.
Onkan power ke Raspberry Pi dan tunggu sehingga OS Raspbian selesai proses Boot. Paparan OS Raspbian akan dipaparkan dan anda boleh menggunakannya terus.

02 Mac 2016

Raspberry Pi 3 Telah Dilancarkan


Raspberry Pi 3 telah dilancarkan pada akhir Februari 2016 yang lalu. Model kali ini mempunyai kelajuan pemproses yang lebih daripada model yang sebelumnya Raspberry Pi 2. Antara pembaharuan yang telah ditambahkan kepada Raspberry Pi 3 adalah,

- Pemproses A1.2GHz 64-bit quad-core ARMv8 CPU
- Wireless LAN 802.11n terbina didalam
- Bluetooth 4.0 terbina didalam
- Bluetooth kuasa rendah (BLE)

Seperti Raspberry Pi 2 ia juga dilengkapi kemudahan,

- 4 port USB
- 40 pin GPIO
- port HDMI
- port Ethernet
- kombinasi jack audio dan video komposit
- antaramuka kamera
- antaramuka paparan
- slot kad Mikro SD
- VideoCore IV grafik 3D

Raspberry Pi 3 mempunyai saiz yang sama dengan Raspberry Pi 2. Ia juga boleh menggunakan sistem operasi yang sama dipakai pada Raspberry Pi 2 dan Raspberry Pi 1. Jadi, kad Mikro SD yang telah digunakan pada Raspberry Pi 1 atau Raspberry Pi 2 boleh sahaja dijalankan pada Raspberry Pi 3.
Selain itu harganya juga sama dengan harga Raspberry Pi 2 iaitu lebih kurang RM150. Boleh dibeli secara online dengan mengunjungi pembekal element14 atau rs-online.
Boleh dapatkan lebih info tentang Raspberry Pi 3 dilaman web rasmi mereka https://www.raspberrypi.org/products/raspberry-pi-3-model-b/
 

09 Disember 2015

Memasang Perisian Fritzing pada Windows 7

      Fritzing adalah perisian elektronik yang popular dikalangan pengguna Arduino dan Raspberry Pi. Ianya amat mudah digunakan dan sepenuhnya percuma.
      Untuk menggunakan perisian Fritzing pada Windows 7,

1. Download perisian Fritzing untuk Windows dari sini, http://fritzing.org/download/.  Kemudian klik pada link version terbaru.

2. Ekstrak zip file menggunakan Winzip ataupun Winrar ataupun lain-lain perisian unzip.

3. Letakkan folder yang telah diekstrak dimana-mana lokasi yang sesuai. Sebagai contoh didalam folder C:/Program Files/
Kemudian boleh jalankan terus Fritzing dengan klik pada file Fritzing.exe. Adalah lebih baik buatkan shortcut ke desktop dan jalankan dari desktop sahaja.


Contoh-contoh screenshot Fritzing yang sedang dijalankan.

1. Contoh pendawaian Raspberry Pi ke 16x2 LCD oleh penulis.

2. Contoh projek pendawaian Arduino yang terdapat didalam perisian Fritzing.

3. Contoh litar skema Arduino yang terdapat didalam perisian Fritzing.

4. Contoh susun atur PCB Arduino yang terdapat didalam perisian Fritzing.


    Apabila kita membuat pendawaian di Fritzing, litar skema dan susun atur juga akan dibina secara automatik merujuk kepada pendawaian. Kemudian kita boleh mengubah susun atur PCB mengikut kesesuaian yang kita ingini.
    Jika ada apa-apa soalan tentang perisian Fritzing boleh dikemukakan pada ruangan komen.

08 Februari 2015

Apa itu NFC?

   NFC adalah singkatan kepada Near Field Communication. Fungsinya adalah lebih kurang sama dengan Bluetooth, tetapi ianya hanya boleh disambung (connect) dari jarak yang lebih dekat. Kurang daripada 10 cm. Ataupun alatan harus bersentuhan untuk disambung(connected). Berbeza dengan Bluetooth yang boleh disambung dalam jarak lebih kurang 10 ke 100 meter.
   NFC akan digunakan dengan meluas dalam masa terdekat terutama didalam telefon mudah alih(handphone). Sebagai contoh, dengan menggunakan teknologi NFC, sesuatu tetapan(setting) ditelefon sebagai contoh tema, boleh diubah dengan cara menyentuh sahaja telefon kepada alat yang telah diprogram dan tetapannya akan bertukar mengikut pilihan.
   Untuk speaker yang ada teknologi NFC, telefon mudah alih hanya perlu disentuh ke speaker dan mereka akan bersambung(connected). Bunyi dari telefon boleh terus didengari di speaker yang telah disentuh dengan telefon itu.
   Lebih baik dari Bluetooth, hanya alatan yang bersentuhan sahaja boleh bersambung(connected). Ini dapat mengelakkan sambungan dari alatan yang tidak diketahui seperti telefon, alat cetak atau lain-lain lagi kepunyaan orang lain.
   Begitulah serba sedikit secara ringkasnya tentang teknologi NFC.

Logo NFC (ihsan dari Wikipedia).








 
Alatan yang terdapat logo ini telah dipasang teknologi NFC.

20 Mac 2014

Raspberry Pi - Komputer terkecil didunia.

Apa Itu Raspberry Pi?

Adakah anda telah mengenali Raspberry Pi?
Sebagai pengenalan, ia adalah sebuah komputer yang boleh dikatakan terkecil yang mempunyai saiz lebih kurang hanya sebesar kad kredit sahaja. Harganya juga sangat berpatutan lebih kurang RM110 sahaja. Oleh kerana saiznya yang kecil dan harganya yang murah, janganlah kita mengharapkan prestasi yang tinggi darinya. Cuma berbaloilah prestasinya dibandingkan dengan harganya. Ianya dibangunkan dengan sistem operasi dan perisian berasaskan Linux Debian. Tetapi janganlah mengharapkan GNOME atau KDE atau yang setaraf dengan mereka. Sistem Operasi Windows juga tidak boleh dipasang kepadanya. Adalah tak masuk akal jika dibandingkan dengan kosnya. Untuk pengendalian yang lancar adalah lebih baik menggunakan sistem operasi yang telah disyorkan untuknya sebagai contoh Raspbian dan yang setaraf dengannya atau yang menggunakan suasana LXDE.

Saiz PCB Raspberry Pi sebesar kad kredit

Kenapa Raspberry Pi dibangunkan?

Tujuan utama pembangunan Raspberry Pi adalah untuk memberi pendedahan kepada pelajar atau sesiapa sahaja tentang bagaimana program komputer dijalankan lalu secara tidak langsung cara memprogramkan komputer dapat dipelajari. Kumpulan yang membangunkan projek Raspberry Pi mahu pengguna bukan hanya tahu menggunakan program atau perisian komputer, tetapi mampu juga untuk mengaturcara program atau perisian sendiri dan kemudian dikongsikan pula dengan penguna-penguna komputer yang lain. Tidak hairanlah Raspberry Pi digunakan dalam pembelajaran di sekolah-sekolah di United Kingdom. Kanak-kanak sejak dari bangku sekolah rendah lagi telah didedahkan dengan pengetahuan komputer. Dengan saiz Raspberry Pi yang kecil dan harganya yang murah, boleh dikatakan sesiapa sahaja mampu untuk memilikinya walaupun kanak-kanak sekolah.

Sistem operasi Raspbian dijalankan pada Raspberry Pi

Disamping penggunaan seperti komputer biasa, terdapat keistimewaan lain yang boleh dimanfaatkan daripada Raspberry Pi. Ia mempunyai beberapa penyambung keluar masuk (I/O) yang boleh digunakan sama ada untuk mengawal alatan elektronik lain, mengawal robot, mengecam suasana, dan berbagai-bagai lagi bergantung kepada kreativiti penggunanya. Sangat berguna kepada ahli-ahli elektronik.

Oleh itu memandangkan ia amat menarik untuk diselidiki, mencari ilmu dan pengalaman melaluinya, saya akan berkongsi pengalaman atau apa sahaja yang berkaitan dengan Raspberry Pi dilaman blog ini nanti. Bolehlah kita sama-sama berbincang mengenainya kelak.

Untuk mengetahui lebih lanjut mengenai spesifikasi, forum, komuniti dan sebagainya tentang Raspberry Pi ini boleh merujuk dilaman web rasmi mereka di www.raspberrypi.org/about .

20 Mei 2013

Nilai-nilai Standard Resistor/Perintang

Resistor atau perintang mempunyai nilai-nilai standard yang telah ditetapkan. Nilai-nilai standard itu pula diletakkan didalam beberapa siri. Sebagai contoh siri E12 terdapat dua belas nilai resistor. Kebiasaan hanya terdapat siri E12 dan E24 (dua puluh empat nilai) sahaja yang mudah dibeli dikedai-kedai elektronik. 

Dapat dilihat, untuk nilai yang lebih tinggi, cuma darabkan sahaja mengikut pendarab sama ada x10, x100, x1000, x10000, x100000 dan x1000000. Sebagai contoh 10 ohm, 100 ohm, 1000 ohm(1k), 10000 ohm(10k), 100000 ohm(100k) dan 1000000 ohm(1M).

Hanya itulah nilai resistor standard yang boleh didapati. Siri lain yang ada adalah E6, E48, E96 dan E192. Tetapi siri ini biasanya hanya untuk litar-litar tertentu dan istimewa yang jarang digunakan untuk kegunaan komersil.

Mendapatkan Nilai Resistor Yang Tiada Dalam Nilai Standard

Bagaimana hendak mendapatkan nilai resistor yang tiada dalam nilai standard?
Sebagai contoh, kita perlukan resistor bernilai 1.4 kilo ohm. 1.4 kilo ohm tiada dalam nilai standard. Oleh itu nilai yang perlu digunakan adalah 1.2 kilo ohm dan 200 ohm dipasang bersiri. Ataupun 1.2 kilo ohm, 100 ohm dan 100 ohm dipasang bersiri.


18 Mei 2013

LED Flasher

Hari tu ada terjumpa litar LED Flasher online. Rasa macam dah pernah buat projek tu. Tapi rasa macam ada masa terluang, menggunakan komponen yang biasanya boleh dibeli dimana-mana kedai elektronik, saya pun cuba la buat. Projek simple je, led flasher macam lampu kapal terbang tu. Kat bawah ni gambar litarnya yang saya lukis semula.
Kalau nak litar dia dalam format Microsoft excel atau Libre office, boleh minta saya poskan di emel meorbu@gmail.com. Biasanya saya melukis litar menggunakan format excel supaya ramai orang boleh melihatnya tanpa perlu menggunakan software lukisan elektronik. Dibawah adalah gambar litar yang sudah siap dipasang. Hanya menggunakan papan litar Stripeboard.
Menggunakan papan litar Stripeboard akan menjimatkan masa daripada membuat litar bercetak untuk litar-litar elektronik yang ringkas dan kurang komponen. Dibawah adalah video bagaimana lampu led itu berkelip-kelip.
Jika berminat bolehlah cuba membuatnya. Selamat mencuba.