테링크

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

TLSR9518

이 예는 사용/사용 중지 기능이 있는 전구 기기 유형의 역할을 합니다. 이 단계는 Telink TLSR9518 개발 보드 (B91 개발 보드라고도 함)에서 확인되었습니다.

이 예에서는 0xFFF1의 테스트 공급업체 ID (VID)와 0x8005의 제품 ID (PID)를 사용합니다.

TLSR9518 위에서 본 이미지

초기 설정

이 문서의 단계는 Ubuntu 20.04에서 검증되었습니다.

  1. 직렬 콘솔용 USB-UART 어댑터를 사용하여 개발 보드를 호스트 PC에 연결합니다.

    • 개발 보드에서 J34PB2 (위에 TX로 라벨 지정)를 어댑터의 RXD에 연결합니다.
    • J56GND (위에서 GND)를 어댑터의 GND에 연결합니다.
  2. 다음과 같이 Burning Key의 한 쪽 (4개의 LED가 있는 검은색 상자)을 USB A Male-to-Mini B 케이블로 호스트 PC에 연결하고 다른 쪽은 다른 USB A A-M-M-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 github 저장소 ( 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
    

이미지를 빌드하고 보드를 플래시합니다.

  1. Docker 컨테이너에서 lighting-app를 빌드한 후 Docker를 종료합니다.

    cd examples/lighting-app/telink
    rm -rf build
    west build
    exit
    
  2. 이미지를 보드에 플래시합니다.

    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 screen 또는 minicom를 사용하여 직렬 콘솔을 열 수 있습니다. 예를 들어 기기가 /dev/ttyACM0에 있는 경우 다음과 같습니다.

    screen /dev/ttyACM0 115200
    
  2. 보드를 재설정하려면 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. 보드를 성공적으로 의뢰한 후 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. 보드를 초기화하려면 SW2 K1 버튼을 누릅니다. 그러면 터미널에 다음과 같은 출력이 표시됩니다.

    I: Factory Reset triggered.
    

다음 단계

Matter 예가 성공적으로 빌드되면 개발자 프로젝트를 만듭니다.