guia ràpida de la placa raspberry pi
DESCRIPTION
Apunts que han servit per explicar algunes coses de la placa Raspberry Pi en el 1er #HackingDay celebrat a Figures el 15 de desembre de 2012.TRANSCRIPT
1er #HackingDay
Placa Raspberry Pi
Figueres, 15 de desembre de 2012
Josep Comas
Revisió 2
Guia ràpida de la placa Raspberry Pi
Per entrar al sistema:
Usuari: pi
Contrasenya: raspberry
Per executar comandes de root: sudo comanda
Per entrar a la configuració: sudo raspi-config
Opcions emprades de la configuració:
Expand_rootfs: Executar només la primera vegada per aprofitar tot l’espai que resta sense
emprar de la targeta SD.
Overscan: Activar en aquelles televisions que es menja una part de la pantalla (enable)
Configure_keyboard: Escollir teclat genèric de 105 tecles, idioma espanyol i distribució de
català
Change_locale: Escollir ca_ES.UTF-8 UTF-8
Change_timezone: Escollir Europa->Madrid
Ssh: Activar per poder accedir remotament per SSH
Segons els canvis pot caldre reiniciar més d’un cop perquè s’apliquin correctament. En algunes
distribucions no ve el programa de configuració anterior, aleshores caldrà executar pel locale i el
timezone el següent:
sudo dpkg-reconfigure locales
sudo dpkg-reconfigure tzdata
Pel teclat editar el fitxer /etc/default/keyboard i posar:
XKBMODEL="pc105"
XKBLAYOUT="es"
Per reiniciar: sudo reboot
Per aturar el sistema: sudo halt
Per treballar tota l’estona com a root: sudo su
Per instal·lar un paquet: sudo apt-get install nom_paquet
(per exemple: sudo apt-get install locate)
Per buscar un paquet: sudo apt-cache search nom
(abans cal haver teclejat almenys un cop sudo apt-get update perquè funcioni)
Per tenir el sistema actualitzat (raons de seguretat): sudo apt-get update
Per canviar de versió de sistema (no fer en principi): sudo apt-get dist-upgrade
Per editar fitxers es poden utilitzar el vi o el nano.
Per accedir ràpidament a fitxers: locate nom_fitxer
(prèviament cal crear l’índex ràpid: sudo updatedb)
Per arrancar l’entorn gràfic: startx
Els paràmetres de configuració que carrega a l’arrancar es troben en el fitxer /boot/config.txt, aquest
és accessible també posant la targeta SD en un lector de targetes.
Per afegir overclocking (ex: multimèdia) cal modificar el fitxer /boot/config posant el següent:
arm_freq=900
gpu_freq=350
sdram_freq=500
Per fixar la pantalla a una resolución de 720p i 60Hz cal modificar el fitxer /boot/config posant el
següent:
hdmi_group=1
hdmi_mode=4
i per evitar problemes de menjar-se els voltants de la pantalla afegir:
disable_overscan=0
Més paràmetres de configuració a http://elinux.org/RPi_config.txt
Per provar els exemples:
cd /opt/vc/src/hello_pi
make –C libs/ilclient
cd hello_audio
make
./hello_audio.bin 1
cd ..
cd hello_tiger
make
./hello_tiger.bin
cd ..
cd hello_triangle
make
./hello_triangle.bin
cd ..
cd hello_video
make
./hello_video.bin test.h264
Per accessoris per Raspberry Pi: http://www.adafruit.com/category/105
Més informació sobre la placa a: http://www.raspberrypi.org/
Opcions de connexió:
Ubicació components:
Pinout de la revisió 1 del connector GPIO:
Pinout de la revisió 2 del connector GPIO:
http://www.raspberrypi-spy.co.uk/2012/06/simple-guide-to-the-rpi-gpio-header-and-pins/
Important: donat que els pins connecten directament al xip millor comprovar amb el tester que
agafem correctament els pins pel que li vulguem connectar, per exemple, mirant el voltatge.
No tenim convertidor analògic a digital (ADC) en la placa, per tant, necessitem algun xip digital que
ens faci aquesta funció si volem endollar per exemple algun sensor analògic.
La placa per funcionar necessita 5V DC amb 5+/- 0,25v i mínim 700mA.
Cada pin de 3.3 V pins pot consumir com a molt 50mA, per tant, no hi podem endollar elements que
en conjunt superin aquest valor.
Correspondència pins:
http://lwk.mjhosting.co.uk/?p=343
La revisió 2 de la placa es pot detectar perquè es veuen uns forats grans a la placa i per software ho
podem veure teclejant cat /proc/cpuinfo | grep “Revision” i fixant-nos que aparegui 0002 sempre i
quan tinguem la distribució actualitzada (per un error en software antic t’indica incorrectament la
versió 2) tal com podem veure en una sortida de la comanda esmentada:
Processor : ARMv6-compatible processor rev 7 (v6l)
BogoMIPS : 697.95
Features : swp half thumb fastmult vfp edsp java tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xb76
CPU revision : 7
Hardware : BCM2708
Revision : 0002
Serial : 0000000082a2c3ff
Canvis que porta la revisió 2 de la placa:
Circuito de reset: Para resetear la Raspberry Pi
Alimentación por USB: Se puede alimentar la Raspberry Pi a través del puerto USB con un
hub que lo permita.
Debug a través de JTAG: Ya se puede depurar el micro ARM a través de los pines 11 y 13.
Cambio de pines en I2C: Ahora los dos puertos I2C están en los pines 13 y 14 (SCL0 y SDA0) y
5 y 3 (SCL1 y SDA1).
Enlaces de identificación eliminados: Las señales GPIO usadas para identificar la versión han
sido eliminadas.
Expansión de E/S adicional: Debido a lo anterior de habilitan los GPIO7, GPIO8, GPIO9 y
GPIO10. Aunque no tienen conexiones, se usarán para relojes o placas de audio.
Fallo en HDMI: Cuando se enchufaba una raspberry sin alimentación a un puerto HDMI de la
televisión, esta interfería en el CEC.
Alimentación de SMSC desconectada: Se desconecta la alimentación de 1,8V del sistema de
suministro.
Agujeros de 2,5mm: Dos agujeros se añaden a la placa para poder atornillarla a una base.
Cambio de texto en los leds: D9 pasa de poner 10M a 100. D5 pasa de poner OK a ACT
(Activity).
Extret de http://www.raspberrypi-spanish.es/blog/2012/09/07/nueva-version-de-la-raspberry-pi-b/
En aquesta pàgina trobareu http://elinux.org/RPi_Low-level_peripherals exemples de codi per
configurar els pins i dir-los si han d’actuar d’entrada o de sortida així com enviar-los un 1 o un 0.
Exemple que hem fet avui: hem connectat un multímetre (tester) on el cable del voltatge (V) estava
posat en el pin GPIO7 i el terra (COM en el tester) connectat en el pin 6, d’aquesta manera quan hem
configurat el GPIO7 i li hem enviat un 0 hem vist un valor de voltatge molt proper a zero i quan hem
enviat un 1 hem obtingut un voltatge molt proper a 3.3V.
El codi que hem emprat des de la línia de comandes ha estat:
Configurem GPIO7 com de sortida:
echo "7" > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio7/direction
Li enviem un 1 i per tant tindrem voltatge proper a 3.3V:
echo "1" > /sys/class/gpio/gpio7/value
Li enviem un 0 i per tant tindrem voltatge proper a 0V:
echo "0" > /sys/class/gpio/gpio7/value
Connexió emprant un LED alimentant-se des de 3.3v:
https://projects.drogon.net/raspberry-pi/gpio-examples/tux-crossing/gpio-examples-1-a-single-led/
Exemple de connexió (control led) emprant transistor quan utilitzem voltatge diferent al que
treballa el microprocessador:
http://www.raspberrypi-spy.co.uk/2012/06/control-led-using-gpio-output-pin/
Exemple de connexió d’un xip (memòria eeprom) per bus I2C emprant senyals SCL i SDA:
http://www.gallot.be/?p=180
Exemple fent servir un relé:
http://www.susa.net/wordpress/2012/06/raspberry-pi-relay-using-gpio/
Distribucions
L’habitual: Raspbian “wheezy” http://www.raspberrypi.org/downloads
Amb entorn XBMC (reproductor multimèdia) Raspbmc http://www.raspbmc.com/ i OpenElec
http://openelec.tv/
Amb suports de hardware I2C, SPI, 1-Wire i Wifi Occidentalis
http://learn.adafruit.com/adafruit-raspberry-pi-educational-linux-distro/overview
Llista de distribucions: http://elinux.org/RPi_Distributions
Llocs on comprar components electrònics:
http://www.electronicarafel.com/
http://www.zenerselectronica.com/
http://www.electronicabf.com/
http://es.rs-online.com/web/
http://es.farnell.com/
http://www.digikey.es/
https://www.sparkfun.com/
http://www.futurlec.com/Components.shtml
Fòrums:
http://www.raspberrypi.org/phpBB3/
http://www.element14.com/community/groups/raspberry-pi
http://www.raspberrypi-spanish.es/foro/
Blocs:
http://www.raspberrypi.org/news
http://www.element14.com/community/groups/raspberry-pi?view=blog
http://www.raspberrypi-spanish.es/blog/
Recordar sobre Linux:
Podem emprar la tecla TAB per acabar de completar el que escriviu.
Teniu la tecla fletxa amunt perquè apareguin les comandes anteriors que heu teclejat.
La combinació Ctrl + C us permetrà avortar el programa actual que s’està executant.