W tym poście chciałbym opisać sposób wygenerowania projektu systemu Yocto dla Raspberry Pi.
Opisywany sposób jest dosyć prosty i sprowadza się do kompilacji odpowiednich obrazów.
Na samym początku należy pobrać Buildroot'a ze strony producenta. Ja wykorzystałem wersja 2019_05 ponieważ jest to najnowsza wersja oprogramowania jak była dostępna.
Do katalogu domowego pobieramy spakowane oprogramowanie:
- sudo wget https://buildroot.org/downloads/buildroot-2019.05.tar.bz2
W następnym kroku należy wypakować obraz i przejść do stworzonego folderu:
- tar xvjf buildroot-2019.05.tar.bz2
- cd buildroot-2019.05
Kolejnym elementem jest wywołanie komendy:
- make list-defconfigs
Pozwoli ona na wyświetlenie dostępnych obrazów do przygotowania min. dla Raspberry Pi:
- raspberrypi0_defconfig
- raspberrypi0w_defconfig
- raspberrypi2_defconfig
- raspberrypi3_64_defconfig
- raspberrypi3_defconfig
- raspberrypi3_qt5we_defconfig
- raspberrypi_defconfig
Aby rozpocząć przygotowywanie obrazu należy wywołać komendę:
- make NAZWA
- np. make raspberrypi3_defconfig
Ta operacja zajmie dosłownie kilka sekund. Następnie należy wywołać komendę:
- make all
Tym razem operacja zajmie kiklanaście minut. Po jej poprawnym zakończeniu zostanie przygotowany obraz w katalogu wewnętrznym output/images/sdcard.img. Obraz przygotowany dla wersji raspberrypi3_defconfig zajmuje około 160Mb.
Aby wgrać do na kartę sd można użyć programu do kopiowania danych dd:
- dd if=sdcard.img of=/dev/mmcblk0
W celu sprawdzenia nazwy podłączonej karty SD lub konwertera USB należy wprowadzić
następującą komendę:
- lsblk
Możliwa jest też własna konfiguracja systemu za pomocą komendy:
- make menuconfig
Aby przeprowadzić komunikacją / obsługę systemu można podłączyć konwerter UART/USB bądź standardowo klawiaturę z monitorem.
Po podłączeniu do urządzenia ustawienie WiFi można wykonać poprzez edycję pliku /etc/wpa_supplicant.conf. W pliku powinny znajdować się następujące elementy:
Po wprowadzeniu zmian do pliku z własnym ssid oraz hasłem należy wykonać reboot Raspberry.
Po podłączeniu do urządzenia ustawienie WiFi można wykonać poprzez edycję pliku /etc/wpa_supplicant.conf. W pliku powinny znajdować się następujące elementy:
- ctrl_interface=/var/run/wpa_supplicant
- ctrl_interface_group=0
- update_config=1network={
- ssid=”SSID”
- psk=”PASSWORD”
- proto=RSN
- key_mgmt=WPA-PSK
- pairwise=CCMP
- auth_alg=OPEN
- }
Po wprowadzeniu zmian do pliku z własnym ssid oraz hasłem należy wykonać reboot Raspberry.