تيلينك

المحتوى

TLSR9518

يعمل هذا المثال كنوع جهاز من نوع مصباح كهربائي، مع إمكانية التفعيل/الإيقاف. تم التحقّق من الخطوات على لوحة التطوير Telink TLSR9518 (المعروفة أيضًا باسم مجلس تطوير B91).

يستخدم هذا المثال معرّف مورّد (VID) تجريبي لـ 0xFFF1 ومعرّف منتج (PID) للسمة 0x8005.

عرض علوي لـ TLSR9518

الإعداد الأولي

تم التحقق من صحة الخطوات الواردة في هذا المستند على Ubuntu 20.04.

  1. وصِّل لوحة مطوّري البرامج بجهاز الكمبيوتر المضيف باستخدام محول من USB إلى UART لوحدة التحكم التسلسلية:

    • اربط PB2 من J34 (المسمى TX أعلاه) على لوحة مطوّري البرامج بـ RXD من المحول.
    • اربط GND من J56 (المسمى GND أعلاه) بـ GND من المحوِّل.
  2. وصِّل أحد جانبي Burning Key (الصندوق الأسود المزوَّد بأربعة مصابيح LED) بالكمبيوتر المضيف الذي يستخدم كابل بمنفذ USB A من الذكور إلى Mini B، والآخر بلوحة تطوير البرامج باستخدام كابل USB آخر من نوع USB A ذكر إلى صغير 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 مستودع GitHub لحزمة تطوير البرامج (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
    

أنشئ الصورة وامسِك اللوح.

  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. بعد تشغيل اللوح بنجاح، يمكنك التحكم في مصباح LED الأزرق عن طريق الضغط على زر SW3 K2. كل ضغطة تؤدي إلى تشغيل مصباح 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 بنجاح، يمكنك إنشاء مشروع مطور.