본문 바로가기

BLE/버그 리포트

(2)
GNU ARM Toolchain 버전 선택시 주의사항 지금까지는 무엇이든 최신 버전이 더 최적화가 잘 되어있을 것이라고 생각하여 GNU ARM Toolchain과 이클립스 최신 버전이 나올 때마다 업데이트해 왔습니다. 그런데 SDK12.3의 bootloader_secure를 GCC와 이클립스를 사용하여 빌드 후 플래시하니 작동하지 않았습니다. 이전 포스팅과 마찬가지로 Keil을 사용하면 제대로 작동했습니다. 이번엔 아무리 분석해 봐도 Keil과의 차이점이나 오류를 찾을 수 없었습니다. 마지막에 설마하는 심정으로 툴체인 버전을 글을 쓰는 시점의 최신 버전인 7-2017-q4-major에서 튜토리얼에서 사용된 4.9 2015q3 버전으로 바꿔봤는데 제대로 작동하더군요. 이 링크에 나와있지만 노르딕의 SDK와 소프트디바이스는 GCC 기준으로 모두 4.9 2015..
nRF_SDK12.3 buttonless_dfu 예제 GCC 프로젝트 버그 예전에 BLE를 이용하여 펌웨어를 업데이트(On-The-Air Device Firmware Update)하는 예제인 experimental_ble_app_buttonless_dfu를 실행시켜 본 적이 있습니다. 당시엔 BLE 공부를 처음 시작할 때여서 개발자 블로그에 나온대로 따라하기만 했습니다. 그때는 여러 SDK 버전을 오가며 dual bank dfu도 실행해 보고 secure dfu도 실행해 보고 이것저것 해볼 때라 지금 다시 시도해보려니 많이 헤깔렸습니다. 그래서 예전에 사용했던 DFU 관련 프로젝트, 파일들을 완전히 지우고, 새로 만들어 봤습니다. 그런데 GCC와 이클립스로 다시 세팅을 하고, 오류없이 빌드하고 플래시했음에도 불구하고 실행이 되지 않았습니다. 이상한 것은 동일한 파일을 사용하여 ..