Telink (連結)

透過集合功能整理內容 你可以依據偏好儲存及分類內容。

TLSR9518

本範例的運作方式為燈泡裝置類型,具有開啟/關閉功能。這些步驟已在 Telink TLSR9518 開發板 (也稱為 B91 開發板) 上完成驗證。

這個範例使用的測試供應商 ID (VID) 為 0xFFF1,產品 ID (PID) 為 0x8005

TLSR9518 俯視圖

初始設定

本文所述步驟已在 Ubuntu 20.04 完成驗證。

  1. 使用序列主控台的 USB 對 UART 轉接器,將開發人員版主機連線至主機電腦:

    • 將開發板上的 J34 (標示上方為 TX) 的 PB2 連接到轉接程式的 RXD
    • J56GND (上方標示為 GND) 連線至轉接程式的 GND
  2. 使用 USB A Male-to-Mini B 傳輸線將 Burning Key (黑色盒子的四個盒子) 與主機電腦連接,另一端連接至另一個 USB A Male-to-Mini B 連接線,如下所示:

    連線 TLSR9518

  3. 下載 LinuxBDT:

    wget http://wiki.telink-semi.cn/tools_and_sdk/Tools/BDT/LinuxBDT.tar.bz2
    tar -xvf LinuxBDT.tar.bz2
    
  4. 安裝 Docker Engine (請勿使用 Docker Desktop)。

  5. 執行 Docker 容器 (第一次需花費一點時間):

    docker run -it --rm -v $PWD:/host -w /host connectedhomeip/chip-build-telink:$(wget -q -O - https://raw.githubusercontent.com/project-chip/connectedhomeip/v1.0-branch/.github/workflows/examples-telink.yaml 2> /dev/null | grep chip-build-telink | awk -F: '{print $NF}')
    
  6. 在 Docker 容器中,複製並初始化 Matter SDK 存放區 ( connectedhomeip):

    git clone https://github.com/project-chip/connectedhomeip.git
    cd connectedhomeip
    git fetch origin v1.0-branch
    git checkout FETCH_HEAD
    ./scripts/checkout_submodules.py --platform telink
    source ./scripts/activate.sh
    

建構映像檔並重新整理 Jamboard

  1. 在 Docker 容器中建構 lighting-app,然後退出 Docker:

    cd examples/lighting-app/telink
    rm -rf build
    west build
    exit
    
  2. 將圖片刷到 Jamboard:

    cd LinuxBDT
    sudo ./bdt 9518 sws # Verify the connection
    sudo ./bdt 9518 ac # Activate MCU
    sudo ./bdt 9518 wf 0 -s 2040k -e # Erase flash sectors
    sudo ./bdt 9518 wf 0 -i ../connectedhomeip/examples/lighting-app/telink/build/zephyr/zephyr.bin
    sudo ./bdt 9518 rst -f # Reset MCU
    

    如果上述步驟成功,下列指令應該會在終端機中產生類似的輸出:

    sudo ./bdt 9518 sws
     TC32 EVK: Swire ok!
    sudo ./bdt 9518 ac
    Activate OK!
    sudo ./bdt 9518 wf 0 -s 2040k -e
    EraseSectorsize...
    Total Time: 26973 ms
    sudo ./bdt 9518 wf 0 -i ../connectedhomeip/examples/lighting-app/telink/build/zephyr/zephyr.bin
    EraseSectorsize...
    Total Time: 9806 ms
    Flash writing...
    [ 0%]Flash Bytes Program at address 0
    ...
    [100%]Flash Bytes Program at address b6d00
    File Download to Flash at address 0x000000: 748836 bytes
    Total Time: 191337 ms
    sudo ./bdt 9518 rst -f
    Total Time: 72 ms
    reset mcu

驗證範例

  1. 裝置上應以 USB 序列裝置的形式呈現。您可以在 /dev 中查詢:

    ls -la /dev/tty*
    

    您可以使用 GNU screenminicom 開啟序列主控台。舉例來說,如果裝置位於 /dev/ttyACM0

    screen /dev/ttyACM0 115200
    
  2. 如要重設 Jamboard,請按下 CHIP_RESET 按鈕,終端機中應該會顯示如下輸出結果:

    *** Booting Zephyr OS build v3.1.0-rc1-3593-gdac17979d626  ***
    I: Init CHIP stack
    I: Starting CHIP task
    ...
    I: 812 [DL]BLEManagerImpl::ConfigureAdvertisingData
    I: 823 [DL]Setting device name to : "TelinkMatter"
    ...
    I: 1093 [SVR]SetupQRCode: [MT:NOTAREALQRCODE01234]
    I: 1099 [SVR]Copy/paste the below URL in a browser to see the QR Code:
    I: 1107 [SVR]https://project-chip.github.io/connectedhomeip/qrcode.html?data=MT%3ANOTAREALQRCODE01234
    I: 1118 [SVR]Manual pairing code: [34970112332]
    I: 1124 [DL]Setting device name to : "TelinkLight"
    
  3. 成功部署 Jamboard 後,您可以按下 SW3 K2 按鈕來控制藍色 LED 燈。每次按下時,LED 都會交替開啟或關閉,同時終端機會輸出以下輸出內容:

    I: Turn On Action has been initiated
    I: Turn On Action has been completed
    D: 1058359 [DMG]Endpoint 1, Cluster 0x0000_0006 update version to 92b92035
    ...
    I: 1058365 [ZCL]Cluster OnOff: attribute OnOff set to 1
    ...
    D: 1058372 [DMG]Endpoint 1, Cluster 0x0000_0008 update version to 7ea4bc9c
    ...
    I: 1058378 [ZCL]Cluster LevelControl: attribute CurrentLevel set to 254
    
  4. 如要將 Jamboard 恢復原廠設定,請按下 SW2 K1 按鈕,終端機中應該會顯示如下輸出結果:

    I: Factory Reset triggered.
    

後續步驟

成功建構 Matter 範例後,請建立開發人員專案