Drone

3DM 98Bunker 제작기(4)-베타플라이트 펌웨어 업데이트

LonleyEngineer 2019. 8. 23. 14:29
반응형

이번에는 조립된 98벙커의 소프트웨어적 측면 세팅을 하기 전에 펌웨어 업데이트를 하는 과정에 대해 써보겠습니다.

 

 

FC에 보면 PC와 연결할 수 있는 USB 단자가 있습니다.

 

요즘은 대부분 Micro 5Pin USB 단자가 있으니 휴대폰에 많이 사용되는 케이블을 이용해서

PC와 연결해줍니다.

 

-- 출처 LDARC KK Flytower 메뉴얼

 

 

 

 

이때 PC에 드라이버가 없으면 안되니 미리 드라이버를 설치해줍니다.

 

보통은 FC에 STM32 계열의 칩셋을 쓰기 때문에 STM32 VCP(Virtual Comport) 드라이버가 필요하며

아주 가끔 구형 FC의 경우 CP210X 계열 드라이버가 필요하기도 합니다.

 

구글링을 하면 다운로드 가능하기도 하고 저작권 문제가 있어서 따로 첨부는 하지 않겠습니다.

 

베타플라이트는 Betaflight Configurator 를 보통 베타 혹은 베타플라이트로 부르는 것으로

베타플라이트 외에 클린플라이트(Clean Flight) 컨피규레이터, 버터플라이트(Butter Flight), iNAV 등등 몇가지 FC 설정을 쉽게 도와주는 프로그램들이 있습니다.

요즘은 거의 베타플라이트가 평정한 것 같습니다만 사용하는 기자재에 따라서 필요한 프로그램이 다를 수 있으니 확인해보시기 바랍니다.

 

 

시작 전부터 잡설이 좀 길어지긴 했습니다만 다시 본론으로

베타플라이트는 https://github.com/betaflight/betaflight-configurator/releases 에서 다운로드가 가능하며

구버전은 구글 크롬의 APP 형식으로 설치해서 사용했으나 1년쯤 전부터는 그냥 설치형식으로 변경되었습니다.

 

 

베타플라이트 컨피규레이터를 실행하고 FC와 PC 연결이 잘 되었고 드라이버가 정상적으로 설정되었다면

아래와 같이 Com Port 혹은 시리얼(Serial) 포트라고 하는 PC의 통신포트가 잡힙니다.





-- 출처 : https://blog.dronetrest.com/how-to-configure-the-martian-iii-fpv-quacopter-in-betaflight/

 

 

위와 같이 정상적으로 comport 가 잡혔다면 FC를 설정하는데 있어서 기본 조건은 갖춘 것입니다.

 

 

이후 FC의 펌웨어를 업데이트 하는 과정이 있는데 이 과정은 넘어가셔도 되나 너무 구버전을 사용하면 몇가지 기능이 빠져있을 수 있으므로 업데이트 하는 것도 나쁘지 않습니다.

다만 너무 최신 펌웨어는 알려지지 않은 버그가 있을 수 있으니 차후에 경험이 쌓이고 사람들이 안정적이라고 하는 버전을 사용하는 것도 방법입니다.

 

 

일단 펌웨어 업데이트를 하기 위해서는 FC에 어떤 펌웨어가 설치되어 있는지 확인하는 과정이 필요합니다.

Connect 버튼을 눌러 베타플라이트에 연결이 잘 되었다면 CLI (Command Line Interface)탭으로 가서 version 이라고 입력해봅니다.

그러면 내 FC에 어떤 펌웨어가 들어가 있는지 확인이 가능합니다.

version 명령어에서 볼 것은 펌웨어 이름과 버전입니다.



 

제 FC에는 BetaFlight 펌웨어 중 OMNIBUSF4SD 3.5.3 버전이 올라가 있음이 확인되었습니다.

그럼 저는 OMNIBUSF4SD 펌웨어 중에서 버전을 선택해서 FC에 올리면 되는 것입니다.

 

 

 

베타플라이트도 그렇고 다른 컨피규레이터도 그렇고 펌웨어 업데이트를 하기 위해서는 DFU 모드로 진입을 해야 합니다.

 

DFU Mode란 Device Firmware Update Mode 로 말그대로 기기의 펌웨어를 업데이트 하는 모드입니다.

평상시에는 펌웨어가 실행되는 모드에고 업데이트하기 위한 모드가 따로 있기 때문입니다.

 

DFU모드에 진입하는 방법은 2가지가 있습니다.

1. H/W 버튼을 이용하는 방법

2. S/W 적으로 드라이버를 교체하는 방법

 

보통 더 쉽고 물리적 조작이 없기 때문에 2번을 선호하나 2번이 잘 안되는 경우 1번으로 해야 하는 경우가 있기 때문에 알아두면 좋습니다.

 

1번 하드웨어적 방법은 보통 FC에 아래와 같이 DFU 모드 진입을 위한 Boot 버튼이나 PCB 패턴이 존재합니다.

그래서 전원을 인가하기 전에 Boot 버튼을 누르고 있다가 전원을 넣거나 PCB 의 boot 패턴 2개를 납땜으로 이어주고(쇼트시키고) 전원을 인가하는 방법으로 진입이 가능합니다.

 

 

 

 

 

 

 

2번의 방법은 소프트웨어적으로 FC를 DFU모드로 진입시키고 드라이버를 DFU로 잡아주는 것입니다.

이때 주로 사용하는 프로그램이 ImpulseRC 입니다.

베타플라이트를 실행하지 않은 상태로 FC를 PC와 연결시켜두고 이 프로그램을 실행하면 아래와 같이 Entering bootloader 메시지와 함께 DFU모드로 진입시켜주고 장치관리자에서도 DFU 드라이버로 변경됩니다.

 

 

 

 

DFU모드로 진입을 한 후 베타플라이트를 실행하면 아래와 같이 Com Port 자리에 DFU라고 표시되는 것을 볼 수 있습니다.

 

DFU모드에 진입한 것이 확인되면 Firmware Flasher 탭을 누르고 위에서 CLI 명령어로 확인된 OMNIBUS 펌웨어 중에서 버전을 선택하고 Load Firmware(Online) 버튼으로 펌웨어를 온라인에서 자동으로 내려받고 Flash Firmware 버튼을 눌러 펌웨어를 올려(Flashing)줍니다.

이름이 비슷한 펌웨어들이 있으므로 선택할 때 주의하셔야 합니다.

 

이때 Full chip erase 옵션을 선택하는 것을 습관화 하면 좋습니다.

기존 정보를 모두 지우고 새롭게 쓰는 옵션으로 과거 데이터 찌꺼기에 의해 생길 수 있는 간섭을 피하기 위함입니다.

 

 

 

원래 이번 글에서 베타플라이트 설정을 모두 마무리 하려고 했는데 펌웨어 업데이트에서 글이 길어지는 바람에

글을 나눠 쓰게 되었습니다.

 

제가 혼자서 공부하며 삽질할때 베타플라이트 접속과 설정, 펌웨어 업데이트를 하는 방법을 몰라서 몇일씩 고생했던 적이 있었는데 요즘엔 정리가 잘된 글도 많고 사람들이 많이 알려주기도 하니 좀 더 수월하긴 합니다만 그래도 고생을 덜하기를 바라는 마음에 주저리 주저리 써봅니다.

 

 

 

반응형