TLSआर9518
यह उदाहरण, चालू या बंद करने की सुविधाओं के साथ, लाइट बल्ब वाले डिवाइस के तौर पर काम करता है. यह तरीका, Telink TLSR9518 डेवलपमेंट बोर्ड (इसे B91 डेवलपमेंट बोर्ड भी कहा जाता है) पर पुष्टि किए गए थे.
इस उदाहरण में 0xFFF1
के जांच वेंडर आईडी (VID) और
0x8005
के प्रॉडक्ट आईडी (PID) का इस्तेमाल किया गया है.
शुरुआती सेट अप
इस दस्तावेज़ में दिए गए चरणों की पुष्टि Ubuntu 20.04 पर की गई थी.
सीरियल कंसोल के लिए यूएसबी-टू-यूएआरटी अडैप्टर के साथ डेव बोर्ड को होस्ट पीसी से कनेक्ट करें:
- अडैप्टर के RXD पर J34 के PB2 को (ऊपर TX लेबल के साथ) डेवलपर बोर्ड से कनेक्ट करें.
- J56 के GND (ऊपर GND लेबल के साथ) को अडैप्टर के GND से कनेक्ट करें.
Burning Key के एक किनारे (ब्लैक एलईडी वाले चार बॉक्स) को यूएसबी A से पुरुष-से-मिनी B केबल वाली होस्ट पीसी से कनेक्ट करें. वहीं, दूसरी तरफ़ डेवलपर A को पुरुष A से पुरुष-मिनी B की केबल को इस तरह जोड़ें:
LinuxBDT डाउनलोड करें:
wget http://wiki.telink-semi.cn/tools_and_sdk/Tools/BDT/LinuxBDT.tar.bz2
tar -xvf LinuxBDT.tar.bz2
डॉकर इंजन इंस्टॉल करें (डॉकर डेस्कटॉप का इस्तेमाल नहीं करें).
डॉकर कंटेनर को चलाएं (इसमें पहली बार पूरा होने में कुछ समय लगेगा):
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}')
डॉकर कंटेनर में, क्लोन करें और MatterSDK 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
इमेज बनाएं और बोर्ड को फ़्लैश करें
डॉकर कंटेनर में,
lighting-app
बनाएं और फिर डॉकर से बाहर निकलें:cd examples/lighting-app/telink
rm -rf build
west build
exit
बोर्ड पर मौजूद इमेज को फ़्लैश करें:
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
उदाहरण की पुष्टि करें
डिवाइस को आपके कंप्यूटर पर, यूएसबी सीरियल डिवाइस के तौर पर मौजूद होना चाहिए. यह
/dev
में हो सकता है:ls -la /dev/tty*
आप GNU
screen
याminicom
के साथ सीरियल कंसोल खोल सकते हैं. उदाहरण के लिए, अगर डिवाइस/dev/ttyACM0
पर है, तो:screen /dev/ttyACM0 115200
बोर्ड को रीसेट करने के लिए, 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 के2 बटन को दबाकर नीले रंग की एलईडी को कंट्रोल किया जा सकता है. हर प्रेस की वजह से टर्मिनल, एलईडी को वैकल्पिक रूप से चालू या बंद करता है और टर्मिनल में ये आउटपुट दिखाता है:
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
बोर्ड को फ़ैक्ट्री रीसेट करने के लिए, SW2 K1 बटन दबाएं और आपको टर्मिनल में इस तरह का आउटपुट दिखेगा:
I: Factory Reset triggered.
अगले चरण
Matter का उदाहरण बनने के बाद, डेवलपर प्रोजेक्ट बनाएं.