Google की ओर से रिलीज़ किए गए OpenThread को कई डिवाइसों और प्लैटफ़ॉर्म पर पोर्ट किया गया है. इन्हें OpenThread टीम, सिलिकॉन वेंडर, और कम्यूनिटी ने उपलब्ध कराया है. पोर्ट किए गए सभी प्लैटफ़ॉर्म के लिए बिल्ड उदाहरण OpenThread डेटा स्टोर करने की जगह में शामिल किए गए हैं.
वेंडर के साथ काम करने वाले सभी प्लैटफ़ॉर्म और कम्यूनिटी पोर्ट की खोजी जा सकने वाली सूची के लिए, वेंडर खोजें पर जाएं.
सपोर्ट करें
हर प्लैटफ़ॉर्म के लिए सहायता समय के साथ बदलती रहती है. OpenThread टीम ने कुछ प्लैटफ़ॉर्म की पहचान, सहायता के मौजूदा लेवल से की है. टैग नहीं किए गए प्लैटफ़ॉर्म की हाल ही में जांच नहीं की गई है और इन्हें "सीमित सहायता" माना जा सकता है.
सहायता स्तर | ब्यौरा |
---|---|
पूरी तरह से और बुनियादी सहायता के साथ ही, Thread Certified ऐसे किसी भी कॉम्पोनेंट के लिए इस्तेमाल किया जा सकता है जो OpenThread का इस्तेमाल करता हो. OpenThread टीम ने इनमें से कई प्लैटफ़ॉर्म की जांच की है और इन्हें इस्तेमाल किया है. हमारे डेमो और कोडलैब में इन्हें इस्तेमाल करने का सुझाव दिया जाता है. | |
इन प्लैटफ़ॉर्म को पूरी तरह से टेस्ट नहीं किया गया है और हो सकता है कि इनमें कुछ मुख्य फ़ंक्शन मौजूद न हों. | |
फ़िलहाल काम नहीं करता है और OpenThread चलाने में समस्याएं हो सकती हैं. अपने जोखिम पर इस्तेमाल करें. |
सिस्टम आर्किटेक्चर
OpenThread को पोर्टेबिलिटी और सुविधा को ध्यान में रखकर बनाया गया है. यह कोड C/C++ (C99 और C++11) को पोर्ट किया जा सकता है. यह एक नैरो ऐब्स्ट्रैक्शन लेयर की वजह से, सिस्टम आर्किटेक्चर-ऐग्नोस्टिक है. इस ऐब्स्ट्रैक्शन लेयर का मतलब है कि OpenThread बेयर-मेटल या किसी ओएस पर चल सकता है. अब तक, OpenThread को FreeRTOS, RIOT-OS, zephyr OS, Linux, और macOS पर काम करते हुए दिखाया गया है.
OpenThread का पोर्टेबल वर्शन, प्लैटफ़ॉर्म की सुविधाओं के बारे में कोई अनुमान नहीं लगाता है. OpenThread, रेडियो और क्रिप्टो की बेहतर सुविधाओं का इस्तेमाल करने के लिए हुक उपलब्ध कराता है, जिससे मेमोरी, कोड, और कंप्यूट साइकल जैसी सिस्टम की ज़रूरतों को कम किया जा सकता है. ऐसा हर प्लैटफ़ॉर्म के हिसाब से किया जा सकता है. हालांकि, ऐसा करते समय डिफ़ॉल्ट कॉन्फ़िगरेशन को डिफ़ॉल्ट रूप से बनाए रखा जा सकता है.
OpenThread में कॉन्फ़िगर किया जा सकने वाला एक बिल्ड सिस्टम होता है. इसकी मदद से, डेवलपर ज़रूरत के हिसाब से सुविधाओं को चालू या बंद कर सकता है. डिफ़ॉल्ट GNU टूलचेन के अलावा, सोर्स को कई अन्य लोकप्रिय टूलचेन के साथ काम करने के लिए डिज़ाइन किया गया है, जैसे कि IAR और Visual Studio.
प्लैटफ़ॉर्म के डिज़ाइन
OpenThread, सिस्टम-ऑन-चिप (SoC) और नेटवर्क को-प्रोसेसर (एनसीपी), दोनों डिज़ाइन के साथ काम करते हैं.
SoC एक सिंगल-चिप समाधान होता है, जिसमें Thread के मामले में RFIC (802.15.4) और प्रोसेसर होता है. इसमें OpenThread और ऐप्लिकेशन लेयर, लोकल प्रोसेसर पर चलते हैं.
एनसीपी डिज़ाइन में ऐप्लिकेशन लेयर, होस्ट प्रोसेसर पर चलता है और स्टैंडर्ड होस्ट-कंट्रोलर प्रोटोकॉल का इस्तेमाल करके, OpenThread से सीरियल कनेक्शन के ज़रिए कम्यूनिकेट करता है. इस प्रोटोकॉल को Spinel कहा जाता है. इस डिज़ाइन में OpenThread, रेडियो या होस्ट प्रोसेसर पर चल सकता है.
सिंगल-चिप, सिर्फ़ थ्रेड (SoC)
इस डिज़ाइन में, ऐप्लिकेशन लेयर और OpenThread एक ही प्रोसेसर पर चलते हैं. ऐप्लिकेशन सीधे OpenThread API और IPv6 स्टैक का इस्तेमाल करता है.
यह SoC डिज़ाइन है, जिसे आम तौर पर एंड डिवाइसों के लिए इस्तेमाल किया जाता है. एक ही सिलिकॉन के साथ इसे बहुत ज़्यादा इस्तेमाल किया जाता है, इसलिए इसकी लागत और ऊर्जा सबसे कम होती है.
सिंगल-चिप, मल्टी-इंटरफ़ेस (SoC)
जब किसी SoC में कई रेडियो होते हैं, जैसे कि 802.15.4 और वाई-फ़ाई या 802.15.4 और ब्लूटूथ लो एनर्जी (BLE), तो ऐप्लिकेशन लेयर और OpenThread एक ही प्रोसेसर पर चलते रहेंगे. कई इंटरफ़ेस वाले डिज़ाइन में OpenThread, रॉ आईपीवी6 डेटाग्राम इंटरफ़ेस के ज़रिए शेयर किए गए तीसरे पक्ष के आईपीवी6 स्टैक का इस्तेमाल करता है.
को-प्रोसेसर के डिज़ाइन
OpenThread, रेडियो को-प्रोसेसर (आरसीपी) और नेटवर्क को-प्रोसेसर (एनसीपी) डिज़ाइन के साथ काम करते हैं. ज़्यादा जानकारी के लिए, को-प्रोसेसर के डिज़ाइन देखें.
प्लैटफ़ॉर्म से जुड़ी समस्याएं हल करें
OpenThread प्लैटफ़ॉर्म पर फ़िलहाल ये समस्याएं मौजूद हैं: