2016년 10월 2일 일요일

두번째 레이싱 드론 제작기 - 4. Naze 보드 firmware upgrade

오늘은 Naze의 firmware를 최신버전으로 upgrade 해보도록 하겠습니다. Upgrade 하다가 실패했을 경우 어떻게 해결하는 지도 같이 알아보도록 하지요.

Cleanflight을 실행하고 왼쪽 아래에 'Firmware Flasher' tab을 선택합니다. 아래와 같은 창을 보실 수 있습니다.


Naze 보드를 USB line을 이용하여 컴퓨터와 연결해둡니다. 'Choose a board' 메뉴에서 Naze를 선택합니다. Cleanflight는 multi-platform configurator이기 때문에 Naze 이외의 다른 flight controller에도 연결하여 설정을 할 수 있습니다. 'Choose a firmware version for Naze' 메뉴에서 가장 최신의 (stable)이라고 되어 있는 version을 선택합니다. 그 아래 다른 스위치들이 보이는데 모두 비활성화 해둡니다.


여기까지 해주시면 창 맨 아래 오른쪽에 보이는 세개의 버튼들 중에서 가운데 것이 활성화되어 있습니다. 'Load firmware [online]' 이 버튼인데요. 눌러줍니다. 선택한 보드와 firmware version을 online으로 upgrade를 하겠다는 뜻입니다. 해당 firmware의 release info가 보이면서 'Flash Firmware' 버튼이 초록색으로 활성화 되는 것을 보셨을 것입니다.


마지막으로 'Flash Firmware' 버튼을 눌러줍니다. 'Programming: SUCCESSFUL' 메시지가 뜨고 firmware가 최신 version으로 upgrade 되었습니다.







위의 과정처럼 아무런 문제 없이 upgrade가 완료되면 매우 좋겠지만 가끔 예외적인 상황이 벌어지기도 합니다. Cleanflight에서 upgrade 과정에서 error가 발생할 경우 몇 가지 대처 방법을 알려드리겠습니다.

1. Upgrade 진행 중 에러가 발생한다면 USB 라인을 다른 것으로 교체해서 upgrade를 진행해 봅니다.

2. 이전 posting에서 알려드렸던 usb driver가 모두 설치되었는지 확인해 봅니다. 만일 설치하지 않았다면, Usb driver의 link는 아래 그림을 참고하시어 일일히 접속해서 설치하시면 됩니다.


3.  이상의 두 가지 조치에도 정상적으로 upgrade가 되지 않는다면 다음 방법을 이용해 봅니다. 다음 방법은 Flash Loader Demonstrator라는 프로그램을 이용하여 cleanflight의 Naze용 최신 firmware를 upgrade하는 방법입니다.

3-1. 아래 링크를 따라가서 Flasher-stm32를 다운로드하여 설치합니다.

http://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-programmers/flasher-stm32.html


3-2. 설치된 program 목록에서 stmicroelectronics라는 folder 아래 demonstrator gui가 생겼을 것입니다. 아래 링크로 접속 하여 .hex 확장자의 naze용 firmware를 직접 다운로드해서 찾기 쉬운 곳에 저장해 둡니다.

https://github.com/cleanflight/cleanflight/releases

3-3. Naze board 위에 boot라고 표시된 두 개의 단자(아래 그림의 빨간 동그라미 두 개)가 있습니다. 이 두 단자를 short 시킵니다. 알루미늄 호일을 얇게 잘라서 스카치테입으으로 붙여두는게 제일 간단합니다. (주의할 점은 이 두개의 단자 옆에 5V 단자가 있는데, 이것이 boot 단자와 연결되면 안됩니다.)



3-4. USB line으로 Naze를 컴퓨터와 연결합니다.

3-5. demonstrator gui를 실행합니다. Port name에서 COM port를 찾아 선택합니다. USB로 Naze가 연결되어 있다면 하나가 보일 것인데 그것을 선택하면 됩니다.


그리고, next 버튼을 눌러줍니다. 다른 설정은 건드릴 필요가 없습니다.

3-6. 아래와 같은 창이 보일텐데 이제 boot 단자를 연결하던 알루미늄 호일을 제거해도 됩니다.


3-7. 아래 창에서도 역시 next 버튼을 눌러줍니다.


3-8. 아래 창에서 Download to device를 선택하고 아까 download 했던 hex file을 선택합니다. 그리고 next 버튼을 누릅니다.


3-9 Naze 보드로 firmware를 복사하기 시작하고 완료되면 아래와 같이 다운로드가 완료되었음을 알려줍니다.


지금까지 Flash Loader Demonstrator를 이용하여 최신 cleanflight의 naze용 firmware를 upgrade 하였습니다. Cleanflight에서 잘 연결이 되지 않아 firmware upgrade에 실패할 경우나 Naze 보드가 벽돌이 되었을 때 사용할 수 있는 방법입니다.