Table of Contents

Instalar

Nos descargamos el software de:

https://www.raspberrypi.org/

Suele ser un zip, extraemos el img y lo pasamos a una sd:

dd if=2021-01-11-raspios-buster-armhf-lite.img of=/dev/mmcblk0 bs=4M && sync

Nos ha creado dos particiones:
- boot
- rootfs

Ahora para poder conectarnos sin monitor ni teclado

Habilitar wifi

En la pertición boot creamos el fichero wpa_supplicant.conf con los datos de nuestro wifi

boot/wpa_supplicant.conf
country=ES
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
scan_ssid=1
ssid="<mi_red_wifi>"
psk="<mi_contraseña_wifi>"
key_mgmt=WPA-PSK
}

IP por DHCP

Si no queremos fija, se coneta por DHCP. Si hemos habilitado wifi por wifi o sinó por cable. Para mirar que ip tiene podemos hacer un nmap:

nmap -sP 192.168.1.0/24| grep -B2 -i Raspberry
Nmap scan report for 192.168.1.191
Host is up (0.13s latency).
MAC Address: DC:A6:32:A9:C4:FF (Raspberry Pi Trading)

IP fija

En la partición rootfs editamos el fichero:

rootfs/etc/dhcpcd.conf

Depende si queremos editar wifi o cable ponemos eth0 o wlan0. Por ejemplo, poner por wifi la ip 192.168.1.191

interface wlan0
static ip_address=192.168.1.191/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1

Si queremos añadir una ruta:

/lib/dhcpcd/dhcpcd-hooks/40-route
ip route add 10.0.0.0/8 via 10.38.28.6

Habilitar SSH

Creamos un fichero que se llame ssh en la partición boot. Da igual que esté vacio. Podemos hacer:

touch boot/ssh

Saber el modelo:

https://www.raspberrypi-spy.co.uk/2012/09/checking-your-raspberry-pi-board-version/

cat /proc/cpuinfo
Hardware	: BCM2835
Revision	: a020d3
Serial		: 00000000addfc632
Model		: Raspberry Pi 3 Model B Plus Rev 1.3

Cambiar idioma teclado

Si nos conectamos por ssh tendremos el idioma bien, pero en local no. Se hace con raspi-config:

sudo raspi-config
5 Localisation Options
L3 Keyboard

Y se selecciona el idioma

Monitorización

https://www.raspberrypi.org/documentation/raspbian/applications/vcgencmd.md

Mirar la temperatura:

vcgencmd measure_temp
temp=42.9'C

Voltaje

vcgencmd measure_volts
volt=1.2500V
vcgencmd get_throttled
throttled=0x0
0x0 todo bien
0x50000 ha habido under voltage desde el último reinicio
0x50005 actualmente under voltage

Script

#!/bin/bash

fecha=`date +\%Y\%m\%d_\%H\%M\%S`
voltios=`vcgencmd measure_volts`
test="`vcgencmd get_throttled`"
case $test in 
	throttled=0x50005) estado="Under Voltage";; 
	throttled=0x50000) estado="Ha habido under voltage";; 
	throttled=0x0) estado="OK";; 
	*) estado=$test;;
esac

echo $fecha" "$voltios" "$estado >> /home/pi/uptime

Pantallas TFT

Pantalla tàctil de 10“ con resolución 1024×600

Modificar el fichero /boot/config.txt y añadir:

hdmi_group=2 
hdmi_mode=87 
hdmi_cvt 1024 600 60 6 0 0 0

Puede que con Raspberry 4 falle. También funciona con esto:

disable_overscan=1
hdmi_cvt=1024 600 3 0 0 0