2024年7月17日 星期三

nRF52840專案從MDBT50Q-RX (USB-A) 轉換到MDBT50Q-CX (USB-C) 的開發設定說明書

 前言:

這篇是為那些要將開發專案從 Raytac MDBT50Q-RX (USB-A) 轉換(或複製)到 MDBT50Q-CX(USB-C) 提供的指南。 開發MDBT50Q-CX專案, 除了硬體規格變更之外(相較MDBT50Q-RX尺寸縮小、LED、按鈕、引腳定義變更),還需要針對韌體參數設定調整。

RX-1                        CX-1

  MDBT50Q-RX                              MDBT50Q-CX


說明書目錄

1.  MDBT50Q-RX(USB-A) & MDBT50Q-CX(USB-C) 硬體比較表

2. 韌體參數設定

3. 產出一組21 (41) hex 檔案

4. 執行韌體燒錄


1. MDBT50Q-RX(USB-A) & MDBT50Q-CX(USB-C) 硬體比較表

Comparison chart


2. 從 MDBT50Q-RX 轉換為 MDBT50Q-CX 所需的韌體參數調整 

若你使用現有的MDBT50Q-RX(USB-A)專案韌體 要轉換到MDBT50Q-CX(USB-C)環境,

請針對以下參數調整以配合不同的PIN定義。

Option 1.  若您使用 nRF5 SDK開發環境

針對LED, Button PIN定義  設定如下: 4處 紅框線處

Firmware configuration-nRF5


Option2.
若您使用NCS V2.6.X 開發環境:

使用nrf52840dongle_nrf52840的定義,在專案中新增檔案nrf52840dongle_nrf52840.overlay

並在組態定義中加入,內容如下:

/ {
   leds {
             compatible = "gpio-leds";
             led0_green: led_0 {
                      gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
                      label = "Green LED 0";
             };
             led1_red: led_1 {
                     gpios = <&gpio0 8 GPIO_ACTIVE_LOW>;
                     label = "Red LED 1";
             };
};

  buttons {
  compatible = "gpio-keys";
  button0: button_0 {
                  gpios = <&gpio1 6(GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
                  label = "Push button switch 0";
                                   };
};
};

Firmware configuration-NCS


3. 產出一組21 (41) hex 檔案

3A. Bootloader public key:

nrfutil keys generate public_key.pem → 產生.pem檔

nrfutil keys display --key pk --format code public_key.pem --out_file public_key.c

→ 把.pem檔轉成.c檔

3A-1

3A-2

3B. 範例code路徑:

nRF5 SDK: nRF5_SDK_17.1.0_ddde560\examples\ble_peripheral\ble_app_uart\pca10056\s140

NCS V2.6.0: ncs\v2.6.0\nrf\samples\bluetooth\peripheral_uart

3C. 如何產生Bootloader 設定檔案 (如果您需要Bootloader):

nrfutil.exe settings generate --family NRF52840 --application nrf52840_xxaa.hex --application-version 255 --bootloader-version 2 --bl-settings-version 1 bootloader_settings.hex

3D. 合併2合1 或4合1的hex檔案:

a). 合併21hex檔案 (若專案不需要Bootloader) :

mergehex.exe -m s140_nrf52_7.2.0_softdevice.hex nrf52840_xxaa.hex -o merge.hex

3D-a

b). 合併41hex檔案 (若專案需要Bootloader) :

mergehex.exe -m bootloader.hex bootloader_settings.hex  s140_nrf52_7.2.0_softdevice.hex nrf52840_xxaa.hex -o merge.hex

3D-b


4. 執行韌體燒錄

MDBT50Q-RX(USB-A):使用硬體跳線方式燒錄韌體。

參考文章說明:韌體篇~燒錄與更新MDBT50Q-RX USB Dongle(Nordic nRF52840 / nRF52833)

MDBT50Q-CX(USB-C):利用內建的Bootloader 執行USB DFU做韌體更新。

參考文章說明:nRF52840/nRF52833 Type-C Dongle 接收器 MDBT50Q-CX的使用說明書

 




Edited by Sales Manager: Ms. Jocelyn Tsai

Technical guidance provided by Firmware Deputy Manager: Mr. Stanley Huang


Raytac Corporation 勁達國際電子股份有限公司
Bluetooth & WiFi & LoRa module maker based on Nordic nRF54, nRF53, nRF52, nRF7002 solution
BT5.4 &BT5.3 & BT5.2 & BT5.1 Qualified, FCC/IC/CE/Telec/KC/RCM/SRRC/NCC/WPC Pre-Certified.
Bluetooth Solution: nRF54, nRF5340, nRF52840, nRF52833, nRF52832, nRF52820, nRF52811, nRF52810, nRF52805, nRF51822
WiFi Solution: nRF7002
http://www.raytac.com
email: service@raytac.com
Tel: +886-2-3234-0208

沒有留言:

張貼留言