Configurare Raspberry Pi

De la YO3ITI
Sari la navigare Sari la căutare

Setup inițial Raspberry Pi

Imagine

Descarci de aici https://www.raspberrypi.org/downloads/raspberry-pi-os/

Activarea SSH

Crează un fișier numit ssh în partiția boot.

Prima conexiune

La noile versiuni de raspberry pi și la sistemele de operare mai recente, conexiunea wireless este blocată implicit. Cel mai simplu pentru activare este să te conectezi pe un cablu. Dai apoi comanda ping raspberrypi.local

$ ping raspberrypi.local
PING raspberrypi.local (192.168.1.23): 56 data bytes
64 bytes from 192.168.1.23: icmp_seq=0 ttl=64 time=2.594 ms
64 bytes from 192.168.1.23: icmp_seq=1 ttl=64 time=2.378 ms
64 bytes from 192.168.1.23: icmp_seq=2 ttl=64 time=3.482 ms

User și parola inițială sunt pi cu raspberry

Atenție !! Pe windows trebuie să dați comanda:

$ ping -4 raspberrypi.local

Altfel o să vi se răspundă cu MAC address în loc de IP !!

După prima conectare, ești informat că

Wi-Fi is currently blocked by rfkill.
Use raspi-config to set the country before use.

Pentru investigare:

$ sudo rfkill list all
sudo: unable to resolve host YO3ITIRPI: Name or service not known
0: phy0: Wireless LAN
	Soft blocked: yes
	Hard blocked: no
1: hci0: Bluetooth
	Soft blocked: no
	Hard blocked: no

pentru deblocare:

$ sudo rfkill unblock 0
$ sudo rfkill list all
0: phy0: Wireless LAN
	Soft blocked: no
	Hard blocked: no
1: hci0: Bluetooth
	Soft blocked: no
	Hard blocked: no
pi@YO3ITIRPI:~ $ sudo ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.23  netmask 255.255.255.0  broadcast 192.168.1.255
        ...
        RX packets 823  bytes 119353 (116.5 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 617  bytes 77385 (75.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.18  netmask 255.255.255.0  broadcast 192.168.1.255
        ...
        RX packets 172  bytes 58218 (56.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 26  bytes 4381 (4.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Acum merge wireless-ul. :)

Asigurarea accesului prin WiFi

editează /etc/wpa_supplicant/wpa_supplicant.conf și adaugă următoarele informații:

country=RO
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
    ssid="<SSID-nume de access>"
    psk="<parola(psk)>"
}

Permisiuni scriere

În cazul în care se utilizează o imagine RPi/ OPi read-only, este necesară montarea sistemului în configurație read-write. Se poate face prin comanda:

sudo mount -o remount, rw /

Se poate crea un alias în fișierul .bash_aliases al utilizatorului local, după completarea pasului de mai jos (creare utilizator), astfel:

alias rw="sudo mount -o remount, rw /"

Unde rw este comanda echivalentă sudo mount -o remount, rw /

Utilizatori

Creare utilizator

pi@raspberrypi:~ $ sudo adduser tom
Adding user `tom' ...
Adding new group `tom' (1001) ...
Adding new user `tom' (1001) with group `tom' ...
Creating home directory `/home/tom' ...
Copying files from `/etc/skel' ...
New password: <parola>
Retype new password: <parola din nou>
passwd: password updated successfully
Changing the user information for tom
Enter the new value, or press ENTER for the default
	Full Name []: Miron Iancu
	Room Number []: home
	Work Phone []: +40758xxxxxx
	Home Phone []: +40758xxxxxx
	Other []: none
Is the information correct? [Y/n] Y

Adăugare utilizator în sudoers

pi@raspberrypi:~ $ sudo adduser tom sudo
Adding user `tom' to group `sudo' ...
Adding user tom to group sudo
Done.
pi@raspberrypi:~ $ sudo nano /etc/sudoers
# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

Configurare audio

Atenție ! Înainte de orice, verificați dacă user-ul sub care rulați svxlink este în grupul audio. Creează un fișier de configurare audio (dacă nu există deja) /etc/asound.conf și adaugă:

pcm.!default {
        type plug
        slave {
                pcm "plughw:1,0"
        }
}

ctl.!default {
        type hw
        card 1
}

E foarte important, fără asta dă erori:

Starting logic: SimplexLogic
Loading RX: RxLocal
ALSA lib pcm_hw.c:1822:(_snd_pcm_hw_open) Invalid value for card
ALSA lib pcm_hw.c:1822:(_snd_pcm_hw_open) Invalid value for card
*** ERROR: Open capture audio device failed: No such file or directory
*** ERROR: Could not open audio device for receiver "RxLocal"
*** ERROR: Could not initialize RX "RxLocal"
*** ERROR: Could not initialize Logic object "SimplexLogic". Skipping...

Se testează cu următoarele comenzi aplay -l și arecord -l:

tom@raspberrypi:~ $ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
  Subdevices: 7/7
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
  Subdevice #4: subdevice #4
  Subdevice #5: subdevice #5
  Subdevice #6: subdevice #6
card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 IEC958/HDMI [bcm2835 IEC958/HDMI]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: ALSA [bcm2835 ALSA], device 2: bcm2835 IEC958/HDMI1 [bcm2835 IEC958/HDMI1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

și pentru intrarea audio:

tom@raspberrypi:~ $ arecord -l
**** List of CAPTURE Hardware Devices ****
card 1: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio]
  Subdevices: 0/1
  Subdevice #0: subdevice #0

Testează funcționarea corectă a plăcii de sunet cu comanda:

sudo aplay -D plughw:1,0 audio.wav

Special pentru Orange Pi

Uneori, Orange Pi Zero nu vine configurat cu modulele necesare pentru placa audio internă. Rularea comenzii aplay -l dă următorul rezultat:

eroare

Problema se rezolvă prin modificarea fișierului cu parametri de boot, prin adăugarea parametrului analog-codec după cum urmează:

tom@orangepizero:~$ sudo nano /boot/armbianEnv.txt 

verbosity=1
logo=disabled
console=serial
disp_mode=1920x1080p60
overlay_prefix=sun8i-h3
overlays=usbhost2 usbhost3 analog-codec
rootdev=UUID=48c1e88a-b408-42ec-9d6c-9aaacd147312
rootfstype=ext4
usbstoragequirks=0x2537:0x1066:u,0x2537:0x1068:u

Testarea cu comenzile aplay -l și arecord -l dă următorul rezultat (exemplul de mai jos are două interfețe audio, cea implicită și un stick USB):

tom@orangepizero:~$ sudo aplay -l
[sudo] password for tom: 
**** List of PLAYBACK Hardware Devices ****
card 0: Codec [H3 Audio Codec], device 0: CDC PCM Codec-0 [CDC PCM Codec-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

tom@orangepizero:~$ sudo arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: Codec [H3 Audio Codec], device 0: CDC PCM Codec-0 [CDC PCM Codec-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0