Coral dev board micro
Coral dev board micro를 리눅스에서 개발하는 환경을 구축하는 방법입니다.
1.준비 사항
아래의 공식 홈페이지에서 필요한 사항을 준비합니다.
https://coral.ai/docs/dev-board-micro/get-started/#1-gather-requirements
Linux PC가 필요한데 아래와 같이 4가지 방법을 시도했습니다.
1. 현재 사용중인 윈도우 10 PC에 듀얼부트로 리눅스 설치 -> 노트북의 그래픽카드와의 충돌로 인해 설치 불가
2. 윈도우 PC에서 VMware로 리눅스 설치 or WSL로 리눅스 설치-> -> 보드의 펌웨어 업데이트 과정에서 보드의 Reset이 진행되는데 이 과정에서 윈도우 터미널에서 WSL로 USB 포트 전환시켜줘야 합니다. 하지만 이를 수동으로 해줘야 하므로 delay가 발생하여 불가
4. 안쓰는 PC에 리눅스 설치-> 해당 방법으로 진행 가능( 리눅스 20.04 LTS 설치 필요.)
위 4가지 방법을 시도하는 동안 많은 trial and error가 있었습니다.
이 글을 읽으시는 분들은 저와 같은 error를 겪지 않으시기 바랍니다.
2. face detection 예제 실행
공식 홈페이지의 예제 실행 순서에 따라 다음 단계를 진행하엿습니다.
git clone --recurse-submodules -j8 https://github.com/google-coral/coralmicro
* GIT이 설치되지 않은 경우 아래 커맨드로 설치 필요.
sudo apt-get install git
sudo apt install git
cd coralmicro && bash setup.sh
git 을 통해 프로젝트 파일을 받고, 실행을 위한 setup을 진행하는 command입니다.
펌웨어 업데이트에는 파이썬 파일이 사용되는데 여기에 import되는 module들에 대한 설치를 지원하는 것으로 보입니다.
setup진행시 위와 같이 log가 나온다면 문제가 없습니다..
만약 hidapi, wheel 관련 error 메시지가 나온다면 linux 버전을 20.04 LTS로 시도해보시기 바랍니다. 최신버전 리눅스(ex) 22.04 LTS) 에서는 python 3.10을 사용하는데 이를 통해 setup을 진행하면 hidapi, wheel 관련 error가 발생하는 것을 확인할 수 있었습니다.
20.04 LTS상에서 python 3.8사용할 시 위와 같이 setup이 잘 수행되었으니 참고하시기 바랍니다
bash build.sh
프로젝트를 빌드하는 커맨드입니다.
위와 같이 빌드과정과 퍼센티지를 보여주는 로그를 확인할 수 있습니다.
lsusb
이제 PC에 보드를 연결하고 위 커맨드로 USB가 제대로 연결되었는지 볼 수 있습니다.
제 경우에는 "Bus 003 Device 006: ID 18d1:9308 Google Inc. Coral Dev Board Micro" 를 통해 coral dev board 연결을 확인할 수 있었습니다.
python3 scripts/flashtool.py -e detect_faces
face detection 펌웨어를 보드에 업데이트 해주는 커맨드입니다.
실행 결과 많은 log가 출력되고 최종적으로
"Flashing to flash storage complete, the device is restarting to execute your application."
를 확인할 수 있었습니다.
보드쪽에서는 아래와 같이 LED 점등을 확인할 수 있습니다.
각 LED의 역할을 다음과 같습니다.
1번 Green LED: camera가 동작을 보여줍니다.
2번 white LED: TPU 동작을 보여줍니다.
3번 Green LED: 카메라에 얼굴이 인식되는 경우 점등됩니다.