Raspberry

Z Poznámkový blok
Verze z 20. 4. 2021, 20:14, kterou vytvořil Tydyt (diskuse | příspěvky) (Bez displeje)
Přejít na: navigace, hledání

Jedná se o malé PC které může najít uplatnění v různých aplikací. Vlastnímu projektu je věnována stránka https://www.raspberrypi.org/ kde najdeme veškeré oficiální informace.

O Raspberry

Modely

Raspberry Pi (Raspberrypi.org) se vyrábí v několika provedení které se liší jak výkonem, tak počtem interface. Český e-shop: rpishop.cz mohu plně doporučit.

Raspberry Pi Model B+ V1.2

pi@raspberrypi:~ $ lscpu                                       pi@raspberrypi:~ $ cat /proc/cpuinfo
Architecture:          armv6l                                  processor       : 0
Byte Order:            Little Endian                           model name      : ARMv6-compatible processor rev 7 (v6l)
CPU(s):                1                                       BogoMIPS        : 2.00
On-line CPU(s) list:   0                                       Features        : half thumb fastmult vfp edsp java tls
Thread(s) per core:    1                                       CPU implementer : 0x41
Core(s) per socket:    1                                       CPU architecture: 7
Socket(s):             1                                       CPU variant     : 0x0
Model name:            ARMv6-compatible processor rev 7 (v6l)  CPU part        : 0xb76
CPU max MHz:           700.0000                                CPU revision    : 7
CPU min MHz:           700.0000
                                                               Hardware        : BCM2708
                                                               Revision        : 0010
                                                               Serial          : 000000008bdc96fc

Raspberry Pi2 Model B V1.1

pi@raspberrypi:~ $ lscpu                                       pi@raspberrypi:~ $ cat /proc/cpuinfo
Architecture:          armv7l                                  processor       : 0
Byte Order:            Little Endian                           model name      : ARMv7 Processor rev 5 (v7l)
CPU(s):                4                                       BogoMIPS        : 38.40
On-line CPU(s) list:   0-3                                     Features        : half thumb fastmult vfp edsp neon vfpv3   
Thread(s) per core:    1                                                         tls vfpv4 idiva idivt vfpd32 lpae evtstrm
Core(s) per socket:    4                                       CPU implementer : 0x41
Socket(s):             1                                       CPU architecture: 7
Model name:            ARMv7 Processor rev 5 (v7l)             CPU variant     : 0x0
CPU max MHz:           900.0000                                CPU part        : 0xc07
CPU min MHz:           600.0000                                CPU revision    : 5
                                                                        .
                                                                        .                                                                         .
                                                                        .
                                                               Hardware        : BCM2709
                                                               Revision        : a01041
                                                               Serial          : 000000002e97c5ef

Raspberry Pi3 Model B V1.2

pi@raspberrypi:~ $ lscpu                                       pi@raspberrypi:~ $ cat /proc/cpuinfo
Architecture:          armv7l                                  processor       : 0
Byte Order:            Little Endian                           model name      : ARMv7 Processor rev 4 (v7l)
CPU(s):                4                                       BogoMIPS        : 38.40
On-line CPU(s) list:   0-3                                     Features        : half thumb fastmult vfp edsp neon vfpv3 tls  
Thread(s) per core:    1                                                         vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
Core(s) per socket:    4                                       CPU implementer : 0x41
Socket(s):             1                                       CPU architecture: 7
Model name:            ARMv7 Processor rev 4 (v7l)             CPU variant     : 0x0
CPU max MHz:           1200.0000                               CPU part        : 0xd03
CPU min MHz:           600.0000                                CPU revision    : 4
                                                                        .
                                                                        .                                                                         .
                                                                        .
                                                               Hardware        : BCM2709
                                                               Revision        : a02082
                                                               Serial          : 00000000bd487497

Raspberry Pi3 Model B+

pi@raspberrypi:~ $ lscpu                                       pi@raspberrypi:~ $ cat /proc/cpuinfo
Architecture:          armv7l                                  processor       : 0
Byte Order:            Little Endian                           model name      : ARMv7 Processor rev 4 (v7l)
CPU(s):                4                                       BogoMIPS        : 38.40
On-line CPU(s) list:   0-3                                     Features        : half thumb fastmult vfp edsp neon vfpv3 tls  
Thread(s) per core:    1                                                         vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
Core(s) per socket:    4                                       CPU implementer : 0x41
Socket(s):             1                                       CPU architecture: 7
Model:                 4                                       CPU variant     : 0x0
Model name:            ARMv7 Processor rev 4 (v7l)             CPU part        : 0xd03
CPU max MHz:           1400.0000                               CPU revision    : 4
CPU min MHz:           600.0000                                         .
BogoMIPS:              89.60                                            .                                                                         .
                                                                        .
                                                               Hardware        : BCM2835
                                                               Revision        : a020d3
                                                               Serial          : 00000000d9540833

Raspberry Pi4 Model B

pi@raspberrypi:~ $ lscpu                                       pi@raspberrypi:~ $ cat /proc/cpuinfo
Architecture:        armv7l                                    processor       : 0
Byte Order:          Little Endian                             model name      : ARMv7 Processor rev 3 (v7l)
CPU(s):              4                                         BogoMIPS        : 108.00
On-line CPU(s) list: 0-3                                       Features        : half thumb fastmult vfp edsp neon vfpv3 tls 
Thread(s) per core:  1                                                           vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
Core(s) per socket:  4                                         CPU implementer : 0x41
Socket(s):           1                                         CPU architecture: 7
Vendor ID:           ARM                                       CPU variant     : 0x0
Model:               3                                         CPU part        : 0xd08
Model name:          Cortex-A72                                CPU revision    : 3
Stepping:            r0p3                                             .
CPU max MHz:         1500.0000                                        .
CPU min MHz:         600.0000                                         .
BogoMIPS:            108.00                                    Hardware        : BCM2835
                                                               Revision        : a03111
                                                               Serial          : 10000000dc074739

Image

Přímo na stránkách projektu v sekci Downloads nalezneme několik image na microSD kartu pro zprovoznění vlastního Raspberry. Ta slouží jako disk na kterém je vlastní systém který se zní spouští. Pro přehrání image na microSD kartu můžeme použít program Win32 Disk Image která umí nahrát image na SD kartu, ale také z SD karty image vytvořit. Je také možné použít program etcher která je novější, ale umí jen nahrání image na SD kartu. (Není možné image jen překopírovat, neboť je potřeba zajistit z karty bootování).

Existují i další projekty které mají vytvořené hotové image pro snadnější instalaci. Například příjem signálů ADS-B a distribuci na flightradar24 je možné též použít hotový image přímo z flightradar24.com. Obdobně je také možné stáhnou další image z FlightAware kde je i postup instalace. Instalací a zprovoznění těchto projektů se zabývám v samostatných článcích.

SSH přístup

Pokud chceme na Raspberry přistupovat vzdáleně pomocí protokolu SSH, musíme ještě po přehrání image nahrát na nicroCD kartu prázdný soubor z názvem "ssh". Pro přístup přes sériovou konzolu, nebo pomocí klávesnice a monitoru není tato operace nutná a povolit ssh přístup pak můžeme již přímo na Raspberry.

Nastavení

První spusštění - Debian

V případě balíčků Debian je ve výchozím nastavení nastaven DHCP klient a přístup přes SSH. Vychozí login je "pi" a heslo "raspberry". U instalace FlightAware je heslo "flightaware".

Po prvním spuštění je vhodné spustit příkaz "sudo raspi-config" pro dokončení plného nastavení vlastního Raspberry.

┌───────────────────────────┤ Raspberry Pi Software Configuration Tool (raspi-config) ├────────────────────────────┐
│                                                                                                                  │
│    1 Expand Filesystem                                Ensures that all of the SD card storage is availabl        │
│    2 Change User Password                             Change password for the default user (pi)                  │
│    3 Enable Boot to Desktop/Scratch                   Choose whether to boot into a desktop environment,         │
│    4 Internationalisation Options                     Set up language and regional settings to match your        │
│    5 Enable Camera                                    Enable this Pi to work with the Raspberry Pi Camera        │
│    6 Add to Rastrack                                  Add this Pi to the online Raspberry Pi Map (Rastrac        │
│    7 Overclock                                        Configure overclocking for your Pi                         │
│    8 Advanced Options                                 Configure advanced settings                                │
│    9 About raspi-config                               Information about this configuration tool                  │
│                                                                                                                  │
│                                 <Select>                                 <Finish>                                │
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

Dopopručené nastavení

Nastavení lokalizace pro správné zobrazení času, znaků, ...

  • 4 Localisation Options Set up language and regional settings to match your location
    • I1 Change Locale Set up language and regional settings to match your location
      • [*] cs_CZ ISO-8859-2
      • [*] cs_CZ.UTF-8 UTF-8
    • I2 Change Timezone Set up timezone to match your location
      • Europe / Prague
    • I4 Change Wi-fi Country Set the legal channels used in your country
      • CZ Czech Republic

Povolení, zakázaní různých rozhraní. Je vhodné nepotřebné zakázat a naopak potřebné povolit

  • 5 Interfacing Options Configure connections to peripherals
┌─────────────────────────┤ Raspberry Pi Software Configuration Tool (raspi-config) ├──────────────────────────┐
│                                                                                                              │
│               P1 Camera      Enable/Disable connection to the Raspberry Pi Camera                            │
│               P2 SSH         Enable/Disable remote command line access to your Pi using SSH                  │
│               P3 VNC         Enable/Disable graphical remote access to your Pi using RealVNC                 │
│               P4 SPI         Enable/Disable automatic loading of SPI kernel module                           │
│               P5 I2C         Enable/Disable automatic loading of I2C kernel module                           │
│               P6 Serial      Enable/Disable shell and kernel messages on the serial connection               │
│               P7 1-Wire      Enable/Disable one-wire interface                                               │
│               P8 Remote GPIO Enable/Disable remote access to GPIO pins                                       │
│                                                                                                              │
│                               <Select>                               <Back>                                  │
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

Zde bych nejspíš doporučil vypnutí sériové konzole, ale zapnutí sériového portu.

Další důležité nastavení, využití celé SD karty

  • 7 Advanced Options Configure advanced settings
┌─────────────────────────┤ Raspberry Pi Software Configuration Tool (raspi-config) ├──────────────────────────┐
│                                                                                                              │
│         A1 Expand Filesystem Ensures that all of the SD card storage is available to the OS                  │
│         A2 Overscan          You may need to configure overscan if black bars are present on display         │
│         A3 Memory Split      Change the amount of memory made available to the GPU                           │
│         A4 Audio             Force audio out through HDMI or 3.5mm jack                                      │
│         A5 Resolution        Set a specific screen resolution                                                │
│         A6 GL Driver         Enable/Disable experimental desktop GL driver                                   │
│                                                                                                              │
│                               <Select>                               <Back>                                  │
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

Vypnutí IP6

Bohužel nekteré síťové programy nemají plné možnosti vzhledem k IP6. To pak může způsobovat jisté problémy. Vypnutí můžeme provést:

sudo su
echo "install ipv6 /bin/true" >> /etc/modprobe.d/blacklist.conf
exit

Následně je ještě nutné odstranit ("#" - zakomentovat) záznamy o IP6 z /etc/host

sudo nano /etc/host

VNC

Instalace a nastavení

I když Rasberry má podporu pro grafickou vzdálenou správu pomocí VNC, je potřeba ještě doinstlovat:

sudo apt update && upgrade
sudo apt install realvnc-vnc-server realvnc-vnc-viewer

Nasledně je potřeba podpora VNC povolit v nastaveni Rasberry. A to bud pres ssh:

sudo raspi-config
  • Menu "Interfacing Options".
  • Vybrat "P3 VNC" a přepnout na VNC > Yes.

Nebo v grafickem rozhraní:

Vybrat Menu > Preferences > Raspberry Pi Configuration > Interfaces.
Ensure VNC is Enabled.

Bez displeje

Pokud chceme Rasberry provozovat bez displeje a mít na nej grafivký přístup, je nutne spustit vncserver který vytvoří virtuální plochu, navic jen po uživatelem. Aby bylo spuštění zajištěno automaticky, je vhodné tento příkaz vložit do crontab:

crontab -e

@reboot vncserver -randr=1920x1080

Vypínání displeje

Pokud je využíváno grafické rozhraní je nutné doinstalovat sporuč, třeba xscreensaver

sudo apt-get install xscreensaver

Poté v "Volby", "Screensaver" nastavíme "Mode" Disable Screen Saver.


Pro Raspberry Pi bez GUI (grafického rozhraní), můžete nastavit console blanking – na aktuální nastavení se můžete podívat pomocí

cat /sys/module/kernel/parameters/consoleblank

Určit po kolika sekundách se zhasne obrazovka pokud používáte CLI musíte v cmdline.txt – pomocí

sudo nano /boot/cmdline.txt

Pokud přidáte „consoleblank=0“ nebude se zhasínat. Nezapomeňte, že cmdline.txt je jeden řádek!

Upgrade

Po do nastavení je vhodné ještě provést upgrade vlastního Respberry

sudo apt-get update && sudo apt-get -y dist-upgrade
sudo rpi-update
sudo reboot

Reinstall kernel

Pro přeinstalování kernelu postupně zadáme:

sudo apt update
sudo apt dist-upgrade -y
sudo apt install --reinstall raspberrypi-kernel raspberrypi-bootloader
sudo reboot

Napájení

Raspberry Pi je napájeno přes USB mini kde jsou zapojené jen napájecí piny. Proto je potřeba mít zdroj 5V. Je také potřeba aby byl zdroj dostatečně "stabilní". Při testech u 2A zdroje nastávalo odpojení USB donglu. Při výměně jen za 1A se tento problém neprojevil a bylo vše v pořádku ! Z toho plyne že i 1A zdroj může plně dostačovat, pokud je ale stabilní a nijak na výstupu nekolísá.

Odpojení USB zařízení bylo signalizované v dmesg výpisem "USB disconnect, device number 35".

GPIO

Vlastní Raspberry obsahuje rozšiřující konektor, GPIO na který je moýžné připojení dalších periférií. Zapojení konektoru je:

Pi3 gpio.png
Pi gpio.png

















Projekty

GPS & NTP server

  • Připojení přijímače GPS a vytvoření z Raspberry NTP server

RTL-SDR

  • Instalace a zprovoznění ovladačů RTL-SDR "klíčenky" pro příjem radiového provozu

MSi.-SDR

  • Instalace a zprovoznění ovladačů MSi.-SDR "klíčenky" pro příjem radiového provozu

SoapySDR

  • Instalace Soapy SDR -- SDR knihovny

ADS-B

  • Sledování leteckého provozu ADS-B

OGN

  • Sledování malých letadel, kluzáku - flarm / OGM přijímač

ACARS / VDL mode 2

  • Projekt příjmu leteckých zpráv

RTLSDR-Airband

  • Přijím analogových hlasových kanálů a vytváří zvukové proudy pro online streamingové služby,

Web-RX

  • Výce uživatelský příjmač ovládaný přes Web rozhraní

SDRSharp

  • Monitorovací SW pro radioamaterský přijem

TV-server

  • Raspberry jako DVB-T server pro spracování TV

Odkazy