Friday, October 13, 2017



1. Burn OS to SD card
+ Link download image: https://www.raspberrypi.org
   Thường thì sẽ có 2 lựa chọn: một bản full đầy đủ có giao diện đồ họa và một bản lite chỉ có giao diện command line thôi (bản lite dung lượng ít hơn nhiều)

+ Burn xuống SD từ máy PC linux (ubuntu, fedora) với quyền root

#umount /dev/mmcblk0p1
#dd bs=4M if=2017-07-05-raspbian-jessie-lite.img of=/dev/mmcblk0 status=progress

Note: Trên Windows có thể dùng Win32DiskImager
Xem thêm tại:
https://www.raspberrypi.org/documentation/installation/installing-images/

Nhớ thay 2017-07-05-raspbian-jessie-lite.img với file img tương ứng của bạn
Sau khi burn xong thì trên SD card sẽ được chia ra làm 2 phân vùng

- Phân vùng boot chứa file cấu hình phần cứng và kernel
          cmdline.txt
          config.txt
          kernel.img
          start.elf
- Phân vùng root file system

2. Kết nối board và debug với minicom (using with uart)
- Trong bài viết này sẽ dùng chương trình minicom để debug thông qua module USB to TTL
(thường dùng khi không có màn hình HDMI)
- Cần chuẩn bị module USB to TTL, vd như hình dưới


- Kết nối module USB to TTL với board RPI (chỉ cần 3 dây)
          USB to TTL                                     board RPI
              GND           --------------------      GND
              TX              --------------------       RX
              RX              --------------------       TX




         
- Kết nối USB to TTL vào máy tính, trên PC mở terminal lên và chạy lệnh  dmesg

 .....
[45001.522444] usb 2-1.2: new full-speed USB device number 9 using ehci-pci
[45001.602022] usb 2-1.2: New USB device found, idVendor=067b, idProduct=2303
[45001.602028] usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[45001.602031] usb 2-1.2: Product: USB-Serial Controller
[45001.602033] usb 2-1.2: Manufacturer: Prolific Technology Inc.
[45001.604849] pl2303 2-1.2:1.0: pl2303 converter detected
[45001.607623] usb 2-1.2: pl2303 converter now attached to ttyUSB0

setup minicom với ttyUSB0 (xem lại bài viết này để biết cách setup minicom)

- Bật nguồn và mở minicom trên PC
  Login info:
        user:          pi
        password: raspberry



Note:
Ngoài ra có thể dùng ssh (pi đã được kết nối mạng, ssh server trên raspberry pi đã được enable, nếu đang disable thì dùng lệnh #sudo raspi-config để enable)

3. Truyền file xuống board bằng LAN network và chương trình scp
- Kết nối cáp mạng từ board PI trực tiêp vào PC
- Config IP
#set ip for RPI: sudo ifconfig eth0 192.168.1.3 netmask 255.255.255.0
#set ip for host PC:  ifconfig eth0 192.168.1.2 netmask 255.255.255.0

- Truyền file bằng lệnh scp từ terminal trên PC
#on host'terminal
scp -r dirORfile_local_on_PC pi@192.168.1.3:/home/pi/Documents/opengl-opencv

4. Cài đặt toolchain

- git clone https://github.com/raspberrypi/tools
- move tools to /opt folder
- source environment when build app

TOOLCHAIN_DIR=/opt/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64
export PATH=$PATH:${TOOLCHAIN_DIR}/bin

-x64 nếu PC là máy 64bit


5. Tạo rootfs trên HOST

Có 2 cách để có được rootfs đó là :
- mount 2017-07-05-raspbian-jessie-lite.img lên một folder nào đó trên host rồi copy ra
- copy từ SD card sau khi burn xong

Ta giả sử đặt tên cho folder rootfs là: 2017-07-05-raspbian-jessie-lite-rootfs
Việc tiếp theo là cần fix link cho rootfs folder bằng sysroot-relativelinks.py

#correct link rootfs
sysroot-relativelinks.py /path/to/2017-07-05-raspbian-jessie-lite-rootfs

Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © Lập trình hệ thống nhúng Linux . Powered by Luong Duy Ninh -