Slide 1

Slide 1 text

Raspberry Pi Julio Galarón Touriño @jgalaron

Slide 2

Slide 2 text

Historia

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

Conector para Reset Corrección de la serigrafía: OK->ACT(actividad) 10M ->100(100Megas) Solucionado el problema con HDMI CEC relacionado con D14 Solucionado el problema de sobrecalentamiento relacionado con SMSC 1V8 Made in UK Agujeros de montaje Nuevo conector P5: 4 GPIO,+5V0, +3v3 y 2 GND Se han eliminado los fusibles F1 y F2 Nueva señal ARM_TMS, nuevo puerto i2c, se han recolocado varias señales

Slide 12

Slide 12 text

V1 V2

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

Modelos y revisiones Modelo y Revisión Código(s) Modelo B Revisión 1.0 2 Modelo B Revisión 1.0 + ECN0001 (Sin fusibles y D14 removido) 3 Modelo B Revisión 2.0 4,5,6 cat /proc/cpuinfo ... Hardware : BCM2708 Revision : 1000002 ..

Slide 15

Slide 15 text

Model A Model B Target price: USD $25 (GBP £16) USD $35 (GBP £22) SoC Broadcom BCM2835 (CPU + GPU + DSP + SDRAM) Broadcom BCM2835 (CPU + GPU + DSP + SDRAM) CPU 700 MHz ARM1176JZF-S core (ARM11 family) 700 MHz ARM1176JZF-S core (ARM11 family) GPU Broadcom VideoCore IV, OpenGL ES 2.0, 1080p30 h.264/MPEG-4 AVC high-profile decoder Broadcom VideoCore IV, OpenGL ES 2.0, 1080p30 h.264/MPEG-4 AVC high-profile decoder Memory (SDRAM) 256 MB (shared with GPU) 256 MB (shared with GPU) USB 2.0 ports: 1 2 Video outputs: Composite RCA (PAL & NTSC), HDMI (rev 1.3 & 1.4), raw LCD Panels via DSI, 14 HDMI resolutions from 640×350 to 1920×1200 plus various PAL and NTSC standards. Composite RCA (PAL & NTSC), HDMI (rev 1.3 & 1.4), raw LCD Panels via DSI, 14 HDMI resolutions from 640×350 to 1920×1200 plus various PAL and NTSC standards. Audio outputs: 3.5 mm jack, HDMI 3.5 mm jack, HDMI Audio outputs: SD / MMC / SDIO card slot SD / MMC / SDIO card slot Onboard network: None 10/100 Ethernet Low-level peripherals: 8 x GPIO, UART, I²C bus, SPI bus with two chip selects, +3.3 V, +5 V, Ground 8 x GPIO, UART, I²C bus, SPI bus with two chip selects, +3.3 V, +5 V, Ground Power ratings: 500 mA (2.5 W) 700 mA (3.5 W) Power source: 5 volt via MicroUSB or GPIO header 5 volt via MicroUSB or GPIO header Size: 85.60 × 53.98 mm 85.60 × 53.98 mm Especificaciones

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

Información técnica (especificaciones, componentes, esquemáticos): http://elinux.org/RPi_Hardware Enlaces relacionados Prototipo AVR (2006): http://www.raspberrypi.org/archives/264 Made in UK: http://www.raspberrypi.org/archives/1925 Lista de cambios en modelo v2: http://www.raspberrypi.org/archives/1929 BBC Micro: http://es.wikipedia.org/wiki/BBC_Micro

Slide 18

Slide 18 text

Listado de versiones/revisiones: http://elinux.org/RaspberryPi_Boards#Hardware_versions.2Frevisions Fotos placa modelo A: http://www.geek.com/articles/chips/raspberry-pi-model-a-makes-first-appearance- on-camera-2012076/ Package on package (PoP): http://en.wikipedia.org/wiki/Package_on_package Raspberry Pi’s Secret: ‘Sell Out a Little to Sell a Lot’: http://www.wired.com/opinion/2012/09/raspberry-pi-insider-exclusive-sellout-to- sell-out/?pid=45&viewall=true Raspberry Pi – Why, What, How: http://www.cl.cam.ac.uk/~am21/slides/CAS12.pdf

Slide 19

Slide 19 text

Modificaciones Placa versión 1

Slide 20

Slide 20 text

Incremento de potencia en puertos USB Power Delivery Design Issues for Hi-Speed USB on Motherboards: http://www.usb.org/developers/whitepapers/power_delivery_motherboards.pdf C32 debe de reemplazarse por un valor entre 150 y 220 µF. Los fusibles rearmables F1, F2, deberían sustituirse por unos de 0,5A. Es recomendable sustituir F3 por valor comprendido entre 1,1 y 2A. Hilo de debate sobre el aumento de corriente en los puertos USB: http://www.raspberrypi.org/phpBB3/viewtopic.php?f=63&t=8591 Estudio sobre incremento de potencia en los puertos USB de la Raspberry Pi: http://theiopage.blogspot.com.es/2012/06/increasing-raspberry-pis-usb-host.html

Slide 21

Slide 21 text

No content

Slide 22

Slide 22 text

Diodo D14 y HDMI-CEC Dom Cobley: “D14 can interfere with some CEC devices if the Pi is left plugged in and unpowered. The benefits of having it are minimal so we suggested to RS/Farnel that it was removed.” Fuente: http://www.raspberrypi.org/phpBB3/viewtopic.php?f=63&t=16365&p=167146

Slide 23

Slide 23 text

Placas v1 Placas v2

Slide 24

Slide 24 text

Sobrecalentamiento en LAN9512 Datasheet fabricante Esquemático Raspberry Pi

Slide 25

Slide 25 text

No content

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

Sobrecalentamiento en chip LAN9512 Estudio acerca del sobrecalentamiento del chip LAN9512: http://www.tooms.dk/?page=http%3A//www.tooms.dk/Tblog/Showblog1.asp %3FBlogID%3D201208292042561198 Hilo de debate: http://www.raspberrypi.org/phpBB3/viewtopic.php?f=29&t=14489 DataSheet LAN9512/LAN9512i: http://www.smsc.com/media/Downloads_Public/Data_Sheets/9512.pdf

Slide 28

Slide 28 text

Overclocking Turbo mode: http://www.raspberrypi.org/archives/2008 Actualizar a Turbo mode en versiones de Raspbian anteriores a 2012-09-17: http://www.element14.com/community/groups/raspberry-pi/blog/2012/09/20/ upgrade-to-turbo-mode-without-reflashing?CMP=SOM-TW-News-RasPi Listado de flags para realizar overcloking: http://elinux.org/RPi_config.txt#Overclocking_options

Slide 29

Slide 29 text

Carcasas

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

No content

Slide 32

Slide 32 text

No content

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

Enlaces relacionados Listado de carcasas: http://elinux.org/RPi_Cases Mod Game Boy: http://www.raspberrypi.org/phpBB3/viewtopic.php?t=15554&p=159942

Slide 36

Slide 36 text

Primeros pasos

Slide 37

Slide 37 text

Consideraciones previas Fuente de alimentación: 5V ≥ 0,7A , recomendable 1A. Tarjeta SD: •Tamaño ≥ 2GB (aunque depende de la distribución que vaya a albergar). •Clase 4, si trabajamos con archivos ≤ 5MB. •Clase 10, si trabajamos con archivos >5MB. Nota: Dependiendo de la imagen del OS y del tamaño de la tarjeta SD, será necesario hacer un resize de la partición (gparted linux, rpi-config (expand_rootfs) en Raspbian,...) OS: Si no se sabe que distribución de Linux emplear, lo recomendable es usar la versión oficial de Debian para Raspberry Pi, Raspbian, o en su defecto utilizar Occidentalis, una versión derivada de Raspbian creada por Adafruit. Listado de distribuciones: http://elinux.org/RPi_Distributions

Slide 38

Slide 38 text

Vídeo: La salida de vídeo compuesto viene configurada por defecto para sistema NTSC. Para habilitar la salida en formato PAL, se deberá añadir/modificar la siguiente opción en el fichero config.txt: sdtv_mode=2 Nota: En caso de no disponer de una pantalla, en general casi todas las distribuciones para Raspberry Pi traen habilitada una consola de depuración por puerto serie a 115200 bauds, pudiendo emplear para la conexión un adaptador USB a Serie o combinaciones más exóticas como Bluetooth a Serie o un dispositivo iOS conectado al puerto serie disponible en conector de 30 pines Opciones relacionadas con el vídeo en el fichero config.txt: http://elinux.org/RPi_config.txt#Video_mode_configuration Resolución de problemas relacionados con el vídeo: http://elinux.org/R-Pi_Troubleshooting#Display

Slide 39

Slide 39 text

No content

Slide 40

Slide 40 text

No content

Slide 41

Slide 41 text

No content

Slide 42

Slide 42 text

Enlaces relacionados Setup básico: http://elinux.org/RPi_Hardware_Basic_Setup Guía para principiantes: http://elinux.org/RPi_Beginners Embedded Linux: http://elinux.org/R-Pi_Hub Gestor de distribuciones: http://mrpfister.com/journal/raspberry-pi-os-image-downloader/ Element14 community: http://www.element14.com/community/groups/raspberry-pi QuickStart guides: http://www.raspberrypi.org/quick-start-guide http://www.engadget.com/2012/09/04/raspberry-pi-getting-started-guide-how-to/ http://www.adrirobot.it/raspberry_pi/pdf/Raspberry_Pi_Start_Guide.pdf

Slide 43

Slide 43 text

Proyectos: http://elinux.org/RPi_Projects Lista de periféricos cuyo funcionamiento ha sido verificado: http://elinux.org/RPi_VerifiedPeripherals Tutoriales: http://learn.adafruit.com/category/raspberry-pi http://www.youtube.com/user/RaspberryPiTutorials http://www.raspberrypi-spy.co.uk/ http://www.cl.cam.ac.uk/~rdm34/raspi/ Noticias sobre Raspberry: http://www.scoop.it/t/raspberry-pi Resolución de problemas: http://elinux.org/R-Pi_Troubleshooting http://raspberrypi.stackexchange.com/ http://www.raspberrypi.org/faqs Placas de expansión: http://elinux.org/RPi_Expansion_Boards

Slide 44

Slide 44 text

Extras recomendados: Rpi-update (actualizar Kernel): https://github.com/Hexxeh/rpi-update Watchdog: http://pi.gadgetoid.co.uk/post/001-who-watches-the-watcher

Slide 45

Slide 45 text

Documentación: C y C++: Python: C Primer Plus: http://www.amazon.es/Primer-Plus-5th-Edition-ebook/dp/B0050G2RA0/ ref=sr_1_4?ie=UTF8&qid=1348686882&sr=8-4 Libros gratuitos sobre programación en Python: http://www.etnassoft.com/biblioteca/categoria/libros_programacion/ programacion_python/ C++ Primer Plus: http://www.amazon.es/Primer-Edition-Developers-Library-ebook/dp/ B005OR9MWQ/ref=sr_1_5?ie=UTF8&qid=1348686882&sr=8-5 Libros gratuitos programación en C: http://www.etnassoft.com/biblioteca/categoria/libros_programacion/c/ Libros gratuitos programación en C++: http://www.etnassoft.com/biblioteca/categoria/libros_programacion/c-plus-plus/

Slide 46

Slide 46 text

Comandos linux: Sistemas Linux Empotrados: The Linux Command Line. A Complete Introduction: http://linuxcommand.org/tlcl.php Embedded Linux Primer: A Practical Real-World Approach (2nd Edition): http://www.amazon.es/Embedded-Linux-Primer-Real-World-ebook/dp/ B004AE3IA6/ref=sr_1_1?s=digital-text&ie=UTF8&qid=1348686063&sr=1-1 Embedded Linux System Design and Development: http://www.amazon.es/Embedded-System-Design-Development-ebook/dp/ B000SEO9XM/ref=sr_1_1?s=digital-text&ie=UTF8&qid=1348685987&sr=1-1 Building Embedded Linux Systems: http://www.amazon.es/Building-Embedded-Linux-Systems-Yaghmour/dp/ 0596529686

Slide 47

Slide 47 text

Compilación cruzada y depuración cruzada: http://linuxtortures.blogspot.com.es/2012/06/cross-compiling-and-cross- debugging-c.html Emulación con QEMU: http://www.cnx-software.com/2011/10/18/raspberry-pi-emulator-in-ubuntu-with- qemu/

Slide 48

Slide 48 text

Demos

Slide 49

Slide 49 text

GPIO: Benchmarking de velocidad, influencia del lenguaje programación y librerías: http://codeandlife.com/2012/07/03/benchmarking-raspberry-pi-gpio-speed/ Pinout: http://elinux.org/File:GPIOs.png Información detallada: http://elinux.org/Rpi_Low-level_peripherals Nota: La lógica que emplea la placa es de 3,3V@16mA (no tolera 5V), con un máximo de 51mA de consumo total entre todos los puertos. Cómo adaptar niveles de tensión (ejem: 3V3 ↔ 5V): http://www.maximintegrated.com/app-notes/index.mvp/id/3007 http://www.rocketnumbernine.com/2009/04/10/5v-33v-bidirectional-level-converter Understanding Outputs from the GPIO pins: http://www.thebox.myzen.co.uk/Raspberry/Understanding_Outputs.html

Slide 50

Slide 50 text

UART: Deshabilitar depuración por puerto serie: sudo nano /boot/cmdline.txt Original: dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 $ Modificado: dwc_otg.lpm_enable=0 console=tty1 $ sudo nano /etc/inittab Original: T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100 Modificado: #T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100 reboot

Slide 51

Slide 51 text

UART: Librerías: Pyserial (python): http://pyserial.sourceforge.net/ Recordatorio: cómo adaptar niveles de tensión (ejem: 3V3 ↔ 5V): http://www.maximintegrated.com/app-notes/index.mvp/id/3007 http://www.rocketnumbernine.com/2009/04/10/5v-33v-bidirectional-level-converter Ejemplo de RS-232 y MAX3232: http://codeandlife.com/2012/07/01/raspberry-pi-serial-console-with-max3232cpe/ WiringPi (C): https://projects.drogon.net/raspberry-pi/wiringpi/serial-library/

Slide 52

Slide 52 text

SPI, I2C Habilitar soporte para I2C: http://www.skpang.co.uk/blog/archives/575 Nota: la distribución basada en Raspbian de Adafruit trae instalado todo lo necesario para trabajar con SPI, i2C y One Wire. http://learn.adafruit.com/adafruit-raspberry-pi-educational-linux-distro/occidentalis-v0-dot-1 Habilitar soporte para SPI: http://www.brianhensley.net/2012/07/getting-spi-working-on-raspberry-pi.html Recordatorio: cómo adaptar niveles de tensión (ejem: 3V3 ↔ 5V): http://www.maximintegrated.com/app-notes/index.mvp/id/3007 http://www.rocketnumbernine.com/2009/04/10/5v-33v-bidirectional-level-converter

Slide 53

Slide 53 text

Instalar soporte para wifi: La última versión de Raspbian trae soporte “out of the box” para todos los módulos que estén soportados en la rama por defecto de linux. Instalar soporte bluetooth: apt-get install bluetooth bluez-utils blueman Problemas con Cambridge Silicon Radio: http://www.raspberrypi.org/phpBB3/viewtopic.php?f=46&t=8754 Uso de la interfaz bluetooth en Debian: http://wiki.debian.org/BluetoothUser Wifi y Bluetooth: Listado de adaptadores wifi usb comprobados en Raspberry Pi: http://elinux.org/RPi_VerifiedPeripherals#USB_WiFi_Adapters Uso de la interfaz wifi en Debian: http://wiki.debian.org/WiFi/HowToUse#HowtouseaWiFiinterface

Slide 54

Slide 54 text

Multimedia OpenELEC http://elinux.org/RPi_Distributions#OpenELEC Raspbmc: http://elinux.org/RPi_Distributions#Raspbmc Xbian: http://elinux.org/RPi_Distributions#Xbian Compra de licencias para MPEG-2 y VC1: http://www.raspberrypi.com/ Información sobre el soporte CEC y codecs MPEG,MPEG-2,VC1 y H.264: http://www.raspberrypi.org/archives/1839 Receptor de infrarrojos con TSOP 1836: http://druss.pp.ua/tag/raspbmc/ LIRC(Linux Infrared Remote Control): http://www.lirc.org/

Slide 55

Slide 55 text

Entretenimiento: Multi-console gamepad driver for GPIO: http://www.raspberrypi.org/phpBB3/viewtopic.php?t=15787&p=165638 RetroArch: http://www.raspberrypilabs.com/retroarch-in-raspberry-pi-snes/ Quake 3: http://www.memetic.org/quake-3-with-sound-for-the-raspberry-pi/ http://mitchtech.net/install-quake-3-on-raspberry-pi/ NES Controller: https://projects.drogon.net/nes-controller-on-the-raspberry-pi/ Super NES Controller: http://petrockblog.wordpress.com/2012/07/03/snesdev-rpi-a-snes-adapter-for-the- raspberry-pi/

Slide 56

Slide 56 text

Wii Remote + Python: http://www.brianhensley.net/2012/08/wii-controller-raspberry-pi-python.html Wii Nunchuk: http://www.pimyride.co.uk/2012/08/12/wii-nunchuk-raspberry-pi-chukberry/

Slide 57

Slide 57 text

Qt5: http://www.raspberrypi.org/archives/2076 Control de impresoras 3D: http://www.thingiverse.com/thing:27758 http://walter.schreppers.com/index.php?page=blogpost&pos=98 Sintetizador de audio: http://www.raspberrypi.org/archives/1878 Supercomputación: http://www.southampton.ac.uk/~sjc/raspberrypi/ Centralita Asterisk: http://www.raspberry-asterisk.org/ Otros ejemplos:

Slide 58

Slide 58 text

Otras plataformas

Slide 59

Slide 59 text

A13-OLINUXINO Open Hardware and Open Software

Slide 60

Slide 60 text

No content

Slide 61

Slide 61 text

Especificaciones Price € 55 Processor A13 Cortex A8 processor at 1GHz Memory 512 MB RAM GPU Mali400, OpenGL ES GPU Video Out VGA video output Audio Standard 3.5mm headphone jack and microphone jack LAN NO USB2.0 Host 3 + 1 USB Host, 3 available for users 1 for (optional) WIFI RTL8188CU SATA 1 port, and 5V power IO PORTs GPIO connector with 68/74, RTC PCF8536 on board Storage SD-card. (optional) 4GB NAND flash Power 5V 2W System Software Running Android, Ubuntu and other Linux distributions Size 120×90 mm

Slide 62

Slide 62 text

Enlaces relacionados Página del fabricante: https://www.olimex.com/Products/OLinuXino/A13/A13-OLinuXino-WIFI-DEV/ Olimex Blog: http://olimex.wordpress.com/

Slide 63

Slide 63 text

ODROID-X

Slide 64

Slide 64 text

No content

Slide 65

Slide 65 text

Especificaciones Price 129$ Processor Samsung Exynos4412 Cortex-A9 Quad Core 1.4Ghz with 1MB L2 cache Memory 1024MB(1GB) LP-DDR2 800Mega data rate GPU Supports 1080p via HDMI cable(H.264+AAC based MP4 container format) Video Out micro HDMI connector / RGB-24bit LCD interface port Audio Standard 3.5mm headphone jack and microphone jack HDMI SPDIF LAN 10/100Mbps Ethernet with RJ-45 Jack ( Auto-MDIX support) USB2.0 Host High speed standard A type connector x 6 ports USB2.0 Device System console monitoring for development (1.8volt interface) IO PORTs 50pin IO expansion port for LCD/I2C/UART/SPI/ADC/GPIO interfaces Display (Option) HDMI monitor / LCD panel with RGB or LVDS interface Storage (Option) Full size SDHC Card Slot eMMC module socket Camera (Option) MIPI-CAM connector (MIPI-CSI 2 lanes) Power (Option) 5V 2A Power System Software u-boot 2010.12, Kernel 3.0.15, Android4.0.x(ICS) Source code will be uploaded on download page after first shipment. Size 90 x 94 mm

Slide 66

Slide 66 text

Enlaces relacionados Página del fabricante: http://www.hardkernel.com/renewal_2011/products/prdt_info.php? g_code=G133999328931# Samsung Exynos 4412 (quad core) vs Nvidia Tegra 3 (quad core): http://www.grandmax.net/2012/02/samsung-exynos-4412-quad-core-vs-nvidia.html Benchmark ODROID-X VS PlayStation 3: http://openbenchmarking.org/result/1208231-AR-1208150AR20,1208220- TOGU-120815070:UGxheVN0YXRpb24zLVNUT0NL&compare

Slide 67

Slide 67 text

CUBIEBOARD

Slide 68

Slide 68 text

No content

Slide 69

Slide 69 text

Especificaciones Price 49$ Processor 1G ARM cortex-A8 processor, NEON, VFPv3, 256KB L2 cache Memory 512M/1GB DDR3 @480MHz GPU Mali400, OpenGL ES GPU Video Out HDMI 1080p Output Audio Standard 3.5mm headphone jack and microphone jack HDMI SPDIF LAN 10/100M Ethernet USB2.0 Host 2 ports and USB OTG SATA 1 port, and 5V power IO PORTs 96 extend pin including I2C, SPI, RGB/LVDS, CSI/TS, FM-IN, ADC, CVBS, VGA, SPDIF-OUT, R-TP.. Storage 14GB NAND Flash + uSD port Power 5V 2A Power System Software Running Android, Ubuntu and other Linux distributions Size 60 x 100 mm

Slide 70

Slide 70 text

Enlaces relacionados Página del fabricante: http://cubieboard.org/ Cubiboard Wiki: http://cubieboard.org/

Slide 71

Slide 71 text

Información extra List of 39 Low Cost Linux Friendly Boards and Products: http://www.cnx-software.com/2012/06/26/list-of-39-low-cost-linux-friendly-boards- and-products/?utm_source=rss&utm_medium=rss&utm_campaign=list-of-39-low- cost-linux-friendly-boards-and-products