====== Raspberry Pi ======
===== Modelos =====
* Raspberry Pi 1 modelo B (2012)
* Raspberry Pi 1 modelo A
* Raspberry Pi 2 modelo B (2015)
* Raspberry Pi 3 modelo B (2016)
* Raspberry Pi 3 modelo B+
* Raspberry Pi 3 modelo A+
* Raspberry Pi 4 modelo B (2019)
* Raspberry Pi 400 (2021)
* Raspberry Pi Pico (2021)
* Raspberry Pi Zero (2015)
* Raspberry Pi Zero W (2017)
* Raspberry Pi Zero WH (2018)
* Raspberry Pi Zero 2 W (2021)
===== Software =====
* Raspbian: distribución oficial.
* Arch Linux
* [[http://ms-iot.github.io/content/en-US/Downloads.htm|Windows 10 IoT Core]]
* [[https://ubuntu-mate.org/raspberry-pi/|Ubuntu MATE]]
* [[https://developer.ubuntu.com/en/snappy/start/raspberry-pi-2/|Snappy Ubuntu Core]]
* [[https://osmc.tv/|OSMC]]: media center.
* [[https://libreelec.tv/|LibreELEC]]: media center.
* [[http://pinet.org.uk/|PiNet]]
* [[https://www.riscosopen.org/content/downloads/raspberry-pi|RISC OS]]
==== Multiboot ====
Varias opciones para instalar varios sistemas en la Raspberry Pi y cargador de arranque:
* [[http://www.berryterminal.com/doku.php/berryboot|BerryBoot]]
* [[https://www.raspberrypi.org/downloads/noobs/|NOOBS]]
* [[informatica:sistemas_operativos:linux:pinn|PINN]]
==== Punto de acceso inalámbrico ====
* [[https://github.com/billz/raspap-webgui|raspap-webgui]]: interfaz web para controlar Wi-Fi, hostapd y servicios relacionados en la Raspberry Pi
Con ese script pude poner una Raspberry Pi 2 en un punto de acceso inalámbrico para que se conectasen otros clientes a ella vía Wi-Fi y les diese conexión a Internet.
La Raspberry Pi está conectada a Internet directamente por el cable de red.
===== Raspberry Pi 3 =====
Ya no es necesaria la opción ''max_usb_current=1'', ya que viene por defecto así configurada, es decir, deriva hasta 1.2A a los puertos USB (por eso se requiere una fuente de 2.5A).
Si no deja des/activar la Wi-Fi desde el applet de la barra de tareas, quizá esté bloqueado por ''rfkill'':
rfkill list all
Desbloqueamos todo:
rfkill unblock all
===== Reproducción MPEG-2 y VC-1 =====
Si se quiere aceleración por hardware al reproducir contenido con estos códecs, es necesario [[http://www.raspberrypi.com/license-keys/|comprar una licencia]] para cada uno.
Cada licencia va asociada al número de serie de la Raspberry Pi. Para averiguarlo:
cat /proc/cpuinfo
Y nos fijamos al final, en la parte que pone ''Serial'':
# cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 57.60
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
...
Hardware : BCM2709
Revision : a01041
Serial : 00000000abcdef012
Nos enviarán un código que hay que incluir en el fichero ''/boot/config.txt'':
# Para MPEG-2:
decode_MPG2=0000000000
# Para VC-1:
decode_WVC1=0000000000
En algunas distribuciones, la partición ''/'' está montada como solo lectura, así que para poder hacer cambios, primero hay que montarla como lectura y escritura: ''mount -o remount, rw /boot''
Guardamos, reiniciamos y listo.
Podemos comprobar si están activadas las claves con ''vcgencmd codec_enabled MPG2'' para MPEG-2 y ''vcgencmd codec_enabled WVC1'' para VC-1
===== Copia de seguridad =====
dd if=/dev/sdb of=~/SDCardBackup.img
Si queremos comprimir la imagen y darle la fecha actual:
dd bs=4M if=/dev/sdb | gzip > /home/your_username/image`date +%d%m%y`.gz
Para restaurar:
gzip -dc /home/your_username/image.gz | dd bs=4M of=/dev/sdb
===== NOOBS =====
[[https://github.com/raspberrypi/noobs|NOOBS]] es un instalador que permite instalar en una misma SD:
* Raspbian
* LibreELEC
* OSMC
* Recalbox
* Lakka
* RISC OS
* Screenly OSE
* Windows 10 IoT Core
* TLXOS
NOOBS se ofrece en una versión completa y otra Lite. La diferencia radica en que la primera incluye Raspbian y el resto hay que descargarlas mediante conexión a Internet.
En la versión 2.9 no me funciona recalbox (se pierde la señal de vídeo y no avanza), así que utilicé el instalador [[https://sourceforge.net/projects/pinn/|PINN]] que es una versión mejorada de NOOBS. Se puede utilizar [[https://pinn.mjh.nz/|esta herramienta]] para ajustar el tamaño de las particiones donde instalará PINN los sistemas.
==== Instalación ====
* Formatear la tarjeta SD en FAT32
* Extraer el contenido del archivo comprimido con NOOBS en la raíz de la tarjeta
Al cargar la tarjeta en la Raspberry Pi y reiniciar se lanzará NOOBS permitiéndonos instalar varios sistemas.
===== Raspbian =====
==== Activar SSH en el primer arranque ====
Tras haber grabado la imagen en la tarjeta SD, la montamos y creamos un fichero vacío llamado ''ssh'' en la partición **boot** (partición FAT32).
Al arrancar, se activará el servicio SSH y podremos continuar con la instalación desde otro equipo.
==== IP estática ====
Editar el fichero ''/etc/dhcpcd.conf'':
# Example static IP configuration:
interface eth0
static ip_address=192.168.0.44/24
#static ip6_address=fd51:42f8:caae:d92e::ff/64
static routers=192.168.0.1
static domain_name_servers=192.168.0.1 8.8.8.8 fd51:42f8:caae:d92e::1
====== Recursos ======
* [[https://www.raspberrypi.org/|Web oficial]]
* [[http://www.theraspberrypiguy.com/|The Raspberry Pi Guy]]