새로 업데이트 되면서 DFU시 HEX파일이 아닌 ZIP파일을 이용하여야 합니다.
이전 예제에서 만들어 놓은 DFU용 파일을 보시면 이렇습니다.
HEX파일 대신 BIN로 바뀌었고, 그외에 DAT와 JSON파일이 패키지로 묶여 있네요.
1. BIN 파일 만들기
일단 패키지 파일을 만들려면 BIN 파일이 있어야 합니다.
1-1 keil을 이용한 방법
keil에서 소스를 build해주세요.
그리고 소스의 build폴더로 갑니다.
axf파일과 hex파일이 보입니다.
bin파일을 만들기 위해 axf파일을 복사합니다.
keil 설치폴더 \ ARM\ARMCC\bin\에 붙여넣기해 주세요.
붙여넣으신 다음 fromelf 파일을 이용하여 bin파일로 만들어 줍니다.
fromelf.exe --bin --output 만들파일명.bin 복사해온 파일명.axf
명령어가 길죠? 첨부파일 makebin을 받으시면 간단하게 사용 가능합니다.
makebin 복사해온 파일명
하시면 자동으로 bin파일이 생성됩니다.
1-2 IAR을 이용한 방법
IAR에서는 Project-Option에서 bin으로 build가 가능합니다.
Output Converter에서 format을 binary로~
Override default를 체크푸시면 hex가 bin으로 바뀝니다.
이제 build를 하시면 bin파일이 생성됩니다.
2. ZIP파일 만들기!!
이제 만들어진 bin 파일을
MCP설치폴더\버전\nrf\에 붙여넣어주세요.
전 C:\Program Files (x86)\Nordic Semiconductor\Master Control Panel\3.8.0.7\nrf 네요
여기서는 nfr파일로 zip파일을 생성합니다.
명령어는
nrf.exe dfu genpkg 만들파일명.zip --application 복사한파일명.bin
--application-version 0xff --dev-revision 1 --dev-type 1 --sd-req 소프트 디바이스버전
또 많이 복잡합니다.ㅠㅠ
이것도 첨부파일의 makezip을 폴더에 복사하셔서 사용하시면 됩니다.
makezip 복사한파일명
PS. zip파일로 만들때 softdevice의 버전이 다르면 update하다 error가 발생합니다.
버전에 맞게 파라메터 값을 넣어주시고, 배치파일 이용시
v7.0 은 makezip7_0
v7.1은 makezip7_1
v8.0은 makezip 을 이용하시면 됩니다.
만들어진 ZIP파일을 MCP를 이용하여 DFU하시면 됩니다.
'Study > nRF51xxx(BLE)' 카테고리의 다른 글
BLE를 이용한 DFU - 안드로이드 어플편 (0) | 2015.03.19 |
---|---|
BLE를 이용한 DFU (0) | 2015.03.18 |
DFU (Device Firmware Update) (0) | 2015.03.18 |
nRF51 DK 예제 20 -LPCOMP(Low Power Comparator) (0) | 2015.03.17 |
nRF51 DK 예제 19 -UART(Loop back test) (0) | 2015.03.16 |