Raspberry Pi
Toores. Ehk seda pala võib täiendada.
Sisukord
Sissejuhatus
Vanasti oli kahte sorti arvuteid - "päris" arvutid, suure laua aluse kasti, ekraani ja klaviatuuriga ning tillukesed mikrokontrollerid, mis juhtisid pesumasinaid, auto mootorit jms. tehnikat.
Vaarika Pi (Raspberry Pi) hääldatakse ka nagu vaarikapirukas. See on umbes krediitkaardi suurune arvuti 700MHz ARM protsessori ja 512MB mäluga. Kõvaketta asemel on SD kaart ning sisenditest-väljunditest on olemas HDMI, USB, 100Mbit LAN, heliväljund ja RCA video.
GPIO laienduspesa abil saab juhtida ja lugeda perifeerseadmeid, valgusdioodi vilgutamisest ja fototakisti lugemisest kuni serial ja i2c ühendusteni. Sisuliselt on tegu karbikesega, mis ühelt poolt on võimeline juhtima näiteks koduautomaatikat, teiselt poolt paistab maailmale kui täisväärtuslik võrkuühendatav arvuti, mis jooksutab näiteks Linuxit.
Seade on võimeline ekraanil jooksutama graafilist keskkonda ning mängima maha full-HD kvaliteedis 1920x1080 videot 30 kaadrit sekundis.
Toide tuleb micro-USB pesast 5V ning voolutarve on suurusjärgus paar vatti. Seega võib selle "unustada" 24/7 vooluvõrku, kartmata, et see järgmise kuu elektriarvel pahandust teeb.
Olgu veel öeldud, et Raspberry Pi on juba vähemalt aastavanune, aga algselt õppeotstarbel tehtud plaadike osutus nii populaarseks, et seda telliti massiliselt ette ja oodati kuude viisi ning vahepeal oli piirang et iga inimene sai osta ainult ühe eksemplari.
Vaikimisi Raspberry PI ei toeta MPEG-2 ja VC-1 koodekeid. MPEG-2 koodeki litsentsi saab osta Raspberry PI kodulehel kus see maksab 2.79€.
Mõned võimalused vaarika Pi kasutamiseks
- teleriga ühendatud meediakeskus
- Veebikaamera server
- Sõiduki jälgimine GPS abil
- mängukonsooli emulaator
- FTP, proxy, web, irc, asterisk VOIP jms server
- storage server
- auto arvuti
- odav läpakas või tablet
- mp3 mängija
- alarmsüsteem
- õhuke võrguboodi klient
- videokõne klient
- LEDide kontrollseade
- CNC kontroller
- torrenti seedbox
Seadme täpsematels parameetriteks on
- 700MHz Broadcom BCM2835 media processor featuring an ARM11 (ARM1176JZF-S) core, Broadcom GPU core, DSP core and support for Package-on-Package (PoP) RAM
- 256MiB of SDRAM, stacked on top of the CPU as a PoP device OpenGL ES 2.0
- 1080p30 H.264 high-profile decode
- Composite and HDMI video output
- One USB 2.0 port provided by the BCM2835
- SD/MMC/SDIO memory card slot
- General-purpose I/O (About 16 3v3) and various other interfaces, brought out to 1.27mm pin-strip
- Optional integrated 2-port USB hub and 10/100 Ethernet controller
- Open software (Iceweasel, KOffice, Python)
- Capability to support various expansion boards
Opsüsteemi paigaldamine
Opsüsteemi paigaldamiseks tuleb kõigepealt joosta poodi ja muretseda endale SD kaart, mis oleks vähemalt 4G suurune. Ise sain selle 5 euro eest (2012 oktoober).
Seejärel tuleb ühendada SD kaart arvutiga ühendatud SD kaardilugejasse ja tõmmata alla opsüsteem.
Tõmbame alla opsüsteemi ISO faili sisaldava arhiivi ja pakime selle lahti
# unzip 2012-09-18-wheezy-raspbian.zip
SD kettal võib olla juba peal mingine partitsioon, tehase poolt looduna. Eemaldame selle fdiskiga.
# dd bs=4M if=2012-09-18-wheezy-raspbian.img of=/dev/sdd 462+1 records in 462+1 records out 1939865600 bytes (1.9 GB) copied, 361.078 s, 5.4 MB/s
Kui ühendada võrgukaabel startinud masinaga küsib see kohe endale DHCP aadressi (näide dhcp serveri lease failist)
} lease 193.40.0.245 { starts 1 2012/10/15 09:50:48; ends 1 2012/10/15 13:50:48; cltt 1 2012/10/15 09:50:48; binding state active; next binding state free; hardware ethernet b8:27:eb:d9:2c:a1; client-hostname "raspberrypi"; }
Kasutaja: pi parool: raspberry
# ssh pi@193.40.0.245
Ajatsoon õigeks
$ sudo dpkg-reconfigure tzdata
Seejärel uuendame kogu süsteemi
$ sudo apt-get update $ sudo apt-get upgrade
Ja seadistame turvalisusekaalutlustel uue parooli
$ sudo passwd pi
Firmware ja kerneli uuendamiseks
# apt-get install git-core # wget http://goo.gl/1BOfJ -O /usr/bin/rpi-update && sudo chmod +x /usr/bin/rpi-update # rpi-update # reboot
Vajadusel vaja paigaldada ka:
# sudo apt-get install ca-certificates
Ühendades arvuti HDMI kaudu monitoriga näeme esmast konfigureerimisliidest, kui seda ei teki tuleb käivitada käsk raspi-config
Kindlasti tuleks laiendada mälukaardi suurust, ehk valida expand_rootfs.
Trükkides selle läbitegemise järel konsoolile startx käivitatakse lxde keskkond
Selleks, et TV hakkaks HDMI pordi kaudu pilti näitama pidin seadistama /boot/config.txt
hdmi_group=1 hdmi_mode=16
Viimane annab siis resolutsioon 1080p sagedusel 60Hz. Rohkem võtmeid kirjas lingil http://elinux.org/RPi_config.txt
Jagatud kausta ühendamine
# sudo mount.cifs //<ip aadress>/jagatud_kaust /mnt
HD video mängimine
# omxplayer -o hdmi /path/to/filename.mp4
Näide:
http://www.youtube.com/watch?v=KGUIePe32Bo
Puutetundlik monitor
If you are looking for a small form factor Raspberry Pi display you might be interested in a new device unveiled by Adafruit this month in the form of the PiTFT Raspberry Pi touchscreen monitor which measures just 2.8 inches in size sand costs just $35.
Timelapse
Installime gphto2 programmi
# apt-get install gphoto2
Ühendame canon Powershot kaamera
[ 469.331117] usb 1-1.3: new full-speed USB device number 4 using dwc_otg [ 469.435164] usb 1-1.3: New USB device found, idVendor=04a9, idProduct=30b5 [ 469.435192] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 469.435209] usb 1-1.3: Product: Canon Digital Camera [ 469.435222] usb 1-1.3: Manufacturer: Canon Inc.
Teeme pildi
# gphoto2 --capture-image-and-download --filename test.jpg New file is in location /store_00010001/DCIM/270CANON/IMG_7036.JPG on the camera Downloading 'IMG_7036.JPG' from folder '/store_00010001/DCIM/270CANON'... Saving file as test.jpg Deleting file /store_00010001/DCIM/270CANON/IMG_7036.JPG on the camera Deleting 'IMG_7036.JPG' from folder '/store_00010001/DCIM/270CANON'...
Uurime mis fail tekkis
# du -h test.jpg 740K test.jpg
Või siis
# time gphoto2 --capture-image-and-download --filename %Y%m%d%H%M%S.jpg
Mis tekitab faili 20121024122937.jpg
# gphoto2 --list-config /main/actions/focuslock /main/actions/syncdatetime /main/settings/output ...
Keerukam kasutus
# gphoto2 --set-config beep=0 --set-config flashmode=0 --set-config resolution=3 -I 20 -F 3150 --capture-image-and-download --filename "%Y%m%d%H%M%S.jpg"
Mille parameetrid tähendavad järgnevat:
- --set-config beep=0 - Fokuseerimise piiks maha
- --set-config flashmode=0 - Lülitame välgu välja
- --set-config resolution=3 - kasutame keskmist resolutsiooni (1024×768)
- -I 20 - Kahekümne sekundiline intervall piltide vahel
- -F 3150 - tee 3150 pilti
Alternatiivina http://capture.sourceforge.net/
GPS
$ sudo apt-get install gpsd gpsd-clients python-gps $ sudo gpsd /dev/ttyUSB0 -F /var/run/gpsd.sock
$ cgps -s
Valvekoer
# modprobe bcm2708_wdog # apt-get install watchdog # /etc/init.d/watchdog start
Dmesgis
[ 471.419899] bcm2708 watchdog, heartbeat=10 sec (nowayout=0)
Selleks, et luua veebiserver vaid ühe käsu abil tuleb öelda:
# python -m SimpleHTTPServer
Käivituskaustas asuvad failid on seejärel üle browseri kättesaadavad.
Elektroonika juhtimine
Ühendades nüüd ground(must) ja cpio4 väikese LED tulukesega saab panna järgneva skriptiga selle vilkuma (elektroonikamaailma hello world)
sudo -i echo "4" > /sys/class/gpio/export echo "out" > /sys/class/gpio/gpio4/direction while true; do echo "1" > /sys/class/gpio/gpio4/value; sleep 1; echo "0" > /sys/class/gpio/gpio4/value; sleep 1; done
http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/temperature/ sensoritest
Ühenduste tuvastamine
Paigaldame paketid
$ sudo apt-get install i2c-tools
Seejärel tuleb vajalik draiver mustast nimekirjast välja kommenteerida
$ sudo nano /etc/modprobe.d/raspi-blacklist.conf
Seal tuleb trelliga välja kommenteerida
i2c-bcm2708
Lisaks vaja muuta modules konfi
$ sudo nano /etc/modules
Kuhu lisada read
i2c-dev i2c-bcm2708
Misjärel tuleb teha reboot.
$ sudo /usr/sbin/i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- 19 -- -- -- -- 1e -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- 6b -- -- -- -- 70: -- -- -- -- -- -- -- --
Juhul kui vaja raspberry käitada patarei pealt saab hoida kokku umbes 20mA voolu lülitades välja PAL/HDMI väljundid. Selleks tuleks bootimisel käivitada.
/opt/vc/bin/tvservice -off
http://www.daveakerman.com/?page_id=1294 pikemalt sellest juttu
Kodi
Tegemist mugava videohalduse vahendiga mis asub rasbiani pakihalduses. Paigaldamiseks
# sudo apt-get install kodi
Startimiseks tuleb trükkida käsureal
# kodi
Pilt mis seejärel videoseadmele avaneb võiks olla järgnev
Bootil startimises /etc/default/kodi
ENABLED=1
FM saatja
Tundub, et selleks on vaja ühendada 20cm pikkune haljas traat GPIO 4 karvaga
Seejärel tõmmata moodul http://www.icrobotics.co.uk/wiki/images/c/c3/Pifm.tar.gz
# sudo ./pifm sound.wav 100.0
Viimane argument on siis sagedus, testimiseks tuleb raadio sellele kruttida.
http://www.icrobotics.co.uk/wiki/index.php/Turning_the_Raspberry_Pi_Into_an_FM_Transmitter
CEC protokoll ja telekapult
The HDMI supports device remote control via the CEC protocol, the idea being that you could control your Blueray player via your TVs remote and the control signals are sent over the HDMI cable.
Settings for your CEC devices can be found in:
System -> Settings -> System -> Input Devices -> Peripherals -> CEC adapter
http://www.foo.co.za/raspbmc-control-xbmc-with-your-tv-remote-using-hdmi-cec
http://wiki.xbmc.org/index.php?title=CEC
Temperatuur
vcgencmd measure_temp
The temperature is shown in a nicely human readable way in degrees Celcius, like:
temp=40.1'C
http://www.sbprojects.com/projects/raspberrypi/temperature.php
USB automaatne ühendus
Soovides, et USB pulgad automaatselt mounditaks tuleb paigaldada usbmount pakk
apt-get install usbmount
Peale seda mounditakse seadmed kujul
/media/usb0
Mäluhalduse tuunimine
Üritades mkv faili mängida sain järgmise
eglCreateImageKHR: failed to create image for buffer 0x3c target 12465 error 0x300c
See viga tähendab, et GPU (graphics processing unit) ehk nö videokaardil pole piisavalt mälu. Raspberry Pi jagab mälu CPU ja GPU vahel ning vaikimisi on GPUle antud vaid 64MB. Selle suurendamiseks
sudo raspi-config
Mis avab menüü kus tuleb teha järgnevat
- Ava Advanced Options.
- Mine Memory Split.
- Kustuta 64 ja kirjuta 128 selle asemel. Seejärel vajuta enterPress enter.
- vali Finish.
- Tee Pi-le restart
MPEG2
Adding in DVD/MPEG playback: If your media collection is stored in mostly more modern codecs like h.264, you might consider skipping this step. If you have lots of DVD rips and other media encoded in MPEG-2, however, you’ll need to add an extra step into your Raspbmc configuration process.
http://www.plexapp.com/getplex/ plex paistab lahendavat selle asja tasuta.
http://forums.plexapp.com/index.php/topic/32852-plex-media-server-debian-repository/ plex server debianil.
Lingid
http://pi.gadgetoid.com/pinout/clockatoo
http://arvutiring.rvg.edu.ee/?Teemad:Miniarvuti:Rasbperry_Pi
http://ee.farnell.com/raspberry-pi-accessories
http://blog.sheasilverman.com/raspberry-pi-emulation/ mängudest
http://www.makeuseof.com/tag/raspberry-pi-home-theater-system/ meediakeskus
http://sirlagz.net/2012/08/09/how-to-use-the-raspberry-pi-as-a-wireless-access-pointrouter-part-1/ wifi ruuter
http://www.raspberrypi.org/phpBB3/viewtopic.php?f=35&t=16352 dlna serveri install
http://forum.stmlabs.com/showthread.php?tid=1376 veel dlna serveri teemat
https://www.ebower.com/docs/ubuntu-dlna-player/ dlna klient testimiseks
DLNA/UPnP Media Server Coherence, which exports local files or online media to UPnP clients. There are many backends to fetch media.
http://elinux.org/RPi_Tutorials suur hulk erinevaid juhendeid.
http://talk.maemo.org/showthread.php?t=76668 N900 telefonile sobiv digitaalne pult.
http://pi.gadgetoid.co.uk/post/001-who-watches-the-watcher valvekoer Rpi peale
Ffmpeg ja stream
http://jeremyblythe.blogspot.com/2012/05/raspberry-pi-webcam.html
http://sirlagz.net/2012/08/04/how-to-stream-a-webcam-from-the-raspberry-pi/
http://www.dreamgreenhouse.com/projects/2012/rpicam/index.php
http://rasplapse.wordpress.com/2012/07/17/pictures-and-yesterdays-time-lapse/ timelapse projekt
http://rasplapse.wordpress.com/2012/07/16/raspberry-pi-how-to-set-the-system-clock-using-a-canon-camera/ timelapse canoniga
http://rasplapse.wordpress.com/2012/06/25/gphoto2-camera-scripts/ veel sama teemat
http://raspberrypi.stackexchange.com/questions/164/how-do-i-update-software-and-firmware firmware uuendamine
http://blog.retep.org/2012/06/18/getting-gps-to-work-on-a-raspberry-pi/ gps ja raspberry
http://www.irongeek.com/i.php?page=security/raspberry-pi-recipes veel põnevaid retsepte
http://aonsquared.co.uk/raspi_voice_control kõnetuvastus
http://www.raspberrypi.org/phpBB3/viewtopic.php?t=9210 openelec
http://alexba.in/blog/2013/01/07/use-your-raspberrypi-to-power-a-company-dashboard/
http://www.savagehomeautomation.com/projects/raspberry-pi-rs232-serial-interface-options-revisit.html serial konsoolide ehitamine.
http://marks-space.com/2013/04/29/guide-to-interfacing-a-gyro-and-accelerometer-with-a-raspberry-pi/ güroseadmed ja Pi
http://scruss.com/blog/tag/linvor/ bluetooth serial terminal
Raspbmc teemalised lingid
https://github.com/yllar/yllar-xbmc-repo/tree/master/repo/plugin.video.err.ee
http://wiki.xbmc.org/index.php?title=Add-on:XBMC_Subtitles
http://wiki.xbmc.org/?title=Subtitles
http://mymediaexperience.com/raspberry-pi-xbmc-with-raspbmc/
http://wiki.xbmc.org/index.php?title=Add-on:TV3_Play
http://forums.plexapp.com/index.php/topic/26727-how-to-plex-media-server-on-ubuntu/