【RPI4】 buildroot Image를 microSD 카드에 write 하기

buildroot를 빌드하고 나면 아래와 같이 "images"라는 폴더가 생갑니다.

 

 

보시는 바와 같이 리눅스 커널과 rootfs 파일을 SD Card에 Write 하여 부팅 디스크로 만들어 주기 위한 파일들로 구성되어 있습니다. 부팅 디스크로 만들기 위해서 Raspberry Pi Imager를 설치합니다. 아래 명령어를 입력하여 설치합니다.

 

snap install rpi-imager			// 20.04 LTS 64bit 버전
sudo apt-get install rpi-imager 	// 기타 배포판 32bit 버전

 

제가 개발하고 있는 우분투 20.04 LTS 64bit 환경이므로 "snap install rpi-imager"를 입력하면 패키지 설치를 위한 인증 화면이 나옵니다.

 

 

자신의 계정 패스워드를 입력하면 설치가 진행됩니다. 설치가 완료되면 왼쪽 런처 바의 프로그램 표시 아이콘을 클릭하여 RPI4 이미지 Write 프로그램이 설치된 것을 확인할 수 있습니다.

 

 

 

 

microSD 카드를 연결합니다. SD 카드가 FAT32로 포맷되어 있지 않다면 FAT32로 포맷해줘야 합니다. 확인을 위해서 아래 명령어를 입력합니다.

sudo fdisk -l

명령어를 입력하면 microSD 카드에 대한 정보가 출력됩니다.

 

 

그림과 같이 파일 포맷이 FAT32로 되어 있어서 포맷하지 않았지만, FAT32로 되어 있지 않다면 아래 명령어를 이용해서 포맷하시기 바랍니다.

sudo umount /media/kimdukyu/RPI4
sudo mkfs.vfat /dev/sdb1

microSD 카드에 RPI4 이미지를 write 해보도록 하겠습니다. RPI 이미저 툴을 실행합니다.

 

 

"CHOOSE OS"를 클릭합니다.

 

 

"Use custom"을 클릭합니다.

 

 

git으로 받은 images 폴더가 있는 경로로 이동하여 "sdcard.img" 파일을 open 합니다.

 

 

"CHOOSE STORAGE"를 클릭합니다.

 

 

자동으로 저장 장치들을 보여줍니다. 자신의 microSD 카드 장치를 선택해 주시면 됩니다.

 

 

"WRITE"를 클릭하면 microSD 카드에 RPI4 커널 및 루트 파일시스템이 write 되면서 부팅 디스크로 만들어 줍니다.

 

 

"YES"를 클릭하여 설치합니다.

 

 

설치가 완료되면 위의 그림처럼 메시지 창이 뜹니다. "CONTINUE"를 클릭하고 micorSD 카드를 분리하여 라즈베리파이에 연결합니다. 그리고 라즈베리파이의 디버그 메시지를 확인하기 위해서는 "USB to UART(TTL)"과 같은 시리얼 케이블이 필요합니다.

 

 

그림과 같이 "USB to UART(TTL)" 케이블이 필요합니다. 구글에서 "PL2303HX"라고 검색하시면 아주 저렴한 가격의 케이블을 구매하실 수 있습니다. 꼭 TTL 모듈로 구입하시기 바랍니다. 시리얼 케이블을 라즈베리파이와 연결합니다.

 

 

그림과 같이 GPIO 40핀 헤더의 6, 8, 10번 핀에 연결하시면 됩니다. 연결하실 때 TX와 RX의 경우 케이블의 반대로 연결하셔야 합니다. TX는 RX와 RX는 TX와 연결하셔야 합니다. 5V 파워 핀은 연결하지 않습니다. 시리얼 케이블을 PC와 연결하면 우분투에서 "/dev/ttyUSB0"로 연결됩니다. minicom 프로그램을 통해서 시리얼 메시지를 확인할 수 있습니다. minocom을 실행합니다.

 

sudo minicom -s

 

명령어를 실행하면 설정 화면이 나타납니다.

 

 

"Serial port setup"을 키보드를 통해서 선택합니다.

 

 

그림과 같이 설정해 주시면 됩니다. A키를 눌러 "/devy/ttyUSB0"를 입력하고 엔터키를 누르시고, F키를 눌러서 하드웨어 플로우 컨트롤을 "No"로 설정하고 엔터키를 누릅니다.

 

 

"Save setup as dfl"을 선택해서 설정을 저장하고 "Exit"를 클릭합니다. 이제 라즈베리파이 보드에 전원을 인가하면 minicom에 리눅스 콘솔 메시지가 출력됩니다.

 

 

로그인 아이디는 "root"입니다.

 

 

라즈베리파이 재단에서 제공하는 라즈비안이 아닌 기본적인 Linux BSP 이미지를 빌드하고 보드에 퓨징 하여 실행해 보았습니다. 다음 글에서는 커널을 다운로드하고 빌드하여 보드에 퓨징 하는 방법에 대해서 알아보도록 하겠습니다.

이 글을 공유하기

댓글

Designed by JB FACTORY