SIG Mesh أم بروتوكول خاص؟ طرق ربط أجهزة Bluetooth ببوابة
إعلانات خاصة أم اتصال BLE مباشر أم شبكة خاصة أم SIG Mesh؟ الفصل بين البروتوكول والاعتماد، وقيمة النماذج القياسية لبوابة Matter، والقيود التي يجب حسابها.
في المقال السابق شغّلنا نصف بوابة Matter الأول بحاسوب وهاتف فقط. والآن ننتقل إلى النصف الآخر من البوابة: أي بروتوكول ينبغي أن تتحدث به البوابة مع أجهزة البلوتوث؟
كانت أجهزتنا تعمل في الأصل ببروتوكول بثّ (Advertising) بلوتوث صمّمناه بأنفسنا، ويُتحكَّم بها عبر تطبيقنا الخاص، وظلّ يعمل زمنًا طويلًا دون مشاكل. ولهذا طرح أحد أعضاء الفريق في بداية المشروع سؤالًا: هل نحتاج فعلًا إلى SIG Mesh؟
يستحق هذا السؤال مقالًا مستقلًا، لأن عبارة «تجاوز SIG Mesh» قد تعني أمرين مختلفين تمامًا، ولكل منهما عواقب مختلفة.
أولًا: ماذا نعني بـ«التجاوز»؟
الخيار الأول: عدم استخدام بروتوكول SIG Mesh أصلًا. تحتفظ الأجهزة ببروتوكول البثّ الخاص بها، وتتحدث البوابة به أيضًا.
الخيار الثاني: استخدام بروتوكول SIG Mesh مع تخطّي اعتماد Bluetooth SIG. أي اتباع المعيار تقنيًا دون التسجيل لدى SIG أو دفع الرسوم.
الأول قرار تقني، والثاني مسألة امتثال. وكثير من النقاشات لا تصل إلى نتيجة لأنها تخلط بينهما. لذا نبدأ بالجانب التقني ونؤجل الاعتماد إلى ما بعده.
أربع طرق لربط الأجهزة بالبوابة
| الأسلوب | التغطية | عدد الأجهزة | قابلية التشغيل البيني | الأمان | حجم العمل |
|---|---|---|---|---|---|
| بثّ خاص (Proprietary advertising) | حول البوابة فقط، دون إعادة إرسال | لا حدّ صارم | منتجاتك وحدها | كله عليك | صغير |
| اتصالات BLE مباشرة (كل جهاز يتصل بالبوابة) | حول البوابة فقط | محدود بعدد الاتصالات المتزامنة، وعادةً بضع عشرات | متوسطة | تشفير قياسي | متوسط |
| شبكة Mesh خاصة مطوَّرة داخليًا | إعادة الإرسال ممكنة | حسب التنفيذ | منتجاتك وحدها | كله عليك | كبير جدًا |
| SIG Mesh | إعادة إرسال وتغطية المنزل كله | مئات العقد دون مشكلة | يعمل بين مصنّعين مختلفين | تشفير قياسي وحماية من إعادة الإرسال الخبيثة | متوسط، ومعظمه في SDK الخاص بالشريحة |
البثّ الخاص هو الأبسط: لتشغيل مصباح، تبثّ البوابة أمرًا فينفّذه الجهاز. لكن لا وجود لإعادة الإرسال؛ فإن كانت البوابة في غرفة المعيشة فقد لا يسمعها مصباح غرفة النوم أبدًا. أما الإقران (Provisioning) والتشفير والحماية من إعادة الإرسال فعليك تصميمها وصيانتها كلها.
اتصالات BLE المباشرة تشبه اتصال الهاتف بسماعات بلوتوث. التشفير قياسي، لكن البوابة لا تحتمل إلا عددًا محدودًا من الاتصالات المتزامنة، وهو أقل بكثير من عشرات المفاتيح والمصابيح في المنزل المعتاد.
الشبكة الخاصة المطوَّرة داخليًا تعني إعادة اختراع SIG Mesh. السيطرة على عواصف إعادة الإرسال، وإزالة الرسائل المكررة، وتدوير المفاتيح، وحماية أرقام التسلسل من الإعادة: كل واحدة منها فخّ. بنى كثير من المصنّعين شبكاتهم الخاصة في البدايات، وانتقل معظمهم اليوم إلى SIG Mesh.
SIG Mesh معيار من Bluetooth SIG. تعيد الأجهزة الإرسال لبعضها فتغطي البيت كله، ونموذج الأمان جاهز، والأهم أنه يحدد مجموعة قياسية من نماذج الأجهزة.
أين تظهر القيمة الحقيقية لـ SIG Mesh: النماذج القياسية
يحدد SIG Mesh كيف تُوصَف الأجهزة الشائعة كالمفاتيح والمصابيح وكيف يُتحكَّم بها:
| نموذج SIG Mesh | الجهاز | المقابل في Matter |
|---|---|---|
| Generic OnOff | المفاتيح والمقابس | On/Off Light |
| Light Lightness | المصابيح القابلة لتعديل السطوع | Dimmable Light |
| Light CTL | مصابيح الأبيض القابلة للضبط | Color Temperature Light |
| Light HSL | المصابيح الملونة | Extended Color Light |
هذا الجدول بالغ الأهمية للبوابة. لدى Matter أنواع أجهزة تقابلها تقريبًا واحدًا لواحد، فتكون الترجمة مباشرة جدًا. أما مع بروتوكول خاص فعليك تعريف هذا التقابل بنفسك وإعادة النظر فيه مع كل نوع جهاز جديد.
وللنماذج القياسية فائدتان أخريان:
- يمكن أن تستخدم البوابة والأجهزة شرائح من مصنّعين مختلفين. تعتمد بوابتنا على وحدة Silicon Labs وأجهزتنا على شرائح Telink. وما دام الطرفان يلتزمان بالنماذج القياسية فهما يعملان معًا، ولا يقيّدنا مصنّع شرائح واحد.
- يسهل الانضمام إلى منظومات أخرى. فمثلًا Bluetooth Mesh من Xiaomi مبني على SIG Mesh، وقوالب المصابيح والمفاتيح فيه تستخدم النماذج نفسها. لذلك يمكن لنسخة Xiaomi لاحقًا أن تعيد استخدام معظم كود التطبيق، مع استبدال طبقة الإقران والمصادقة أساسًا.
ما كلفة SIG Mesh؟
SIG Mesh ليس مجانيًا؛ لكن معظم كلفته دفعها غيرك مسبقًا.
البروتوكول معقّد. يستخدم الإقران تبادل مفاتيح ECDH، وتُشفَّر الرسائل في طبقتي الشبكة والنقل، وهناك التجزئة وأرقام التسلسل وIV Index. كل ذلك موجود في SDK الخاص بمصنّع الشريحة وقد اجتاز اختبارات SIG. في جانب الأجهزة استخدم الـ SDK ولا تكتب تنفيذك الخاص.
حجم الشبكة له حدود. يمرّر SIG Mesh الرسائل بإعادة إرسال فيضية، فكلما زادت العقد في منطقة واحدة ازدحم الهواء. وكقاعدة تقريبية، يكون أداء الشبكة أفضل ما يكون عند بضع مئات من العقد أو أقل. أما الإضاءة التجارية بآلاف النقاط فتحتاج إلى تقسيمها حسب الطابق أو المنطقة إلى عدة شبكات وبوابات.
البوابة لا تخزّن إلا عددًا محدودًا من العقد. وهذا يُغفَل بسهولة:
- يخزّن البرنامج الثابت الرسمي لبوابة Telink حتى 200 عقدة افتراضيًا، أو 110 عند تفعيل الإقران عن بُعد. ويُحتسب مفتاح رباعي الأزرار عقدة واحدة لا أربعًا.
- إذا بنيت بوابة على حزمة Zephyr من Nordic، فالإعداد الافتراضي يسمح بـ 8 عقد فقط، وقائمة الحماية من إعادة الإرسال فيها 10 مدخلات فقط. وإن تركته دون تغيير فستبدأ رسائل الجهاز الحادي عشر بالفشل.
مئتا عقدة كافية للمنزل، لكن تحقّق من هذه الأرقام أثناء التصميم.
الجهاز ينتمي إلى شبكة واحدة فقط. فالمصباح نفسه لا يمكن أن تديره بوابتنا ومركز Xiaomi في الوقت ذاته. ودعم المنظومتين يعني نسختين من المنتج، يُقرَن كلٌّ منهما على حدة.
هل يمكن تخطّي اعتماد SIG؟
نعود إلى المعنى الثاني للسؤال الأصلي: استخدام SIG Mesh دون اعتماد Bluetooth SIG.
تقنيًا لا فرق. تعمل الأجهزة بشكل طبيعي وتتشغّل بينيًا مع أجهزة SIG Mesh الأخرى. المخاطر في مكان آخر:
| الخطر | التفاصيل |
|---|---|
| ترخيص البراءات | ترخيص براءات SIG لا يغطي إلا المنتجات المعتمدة |
| قنوات البيع | غالبًا ما تطلب Amazon ومنصات أخرى وكبار تجار التجزئة والموزعون في الخارج معرّف اعتماد بلوتوث |
| إنفاذ SIG | تُخطِر SIG المنتجات غير المعتمدة وتطلب منها الاعتماد أو السحب من السوق |
| العلامة التجارية | لا يجوز استخدام اسم «Bluetooth» أو شعاره على العبوة أو في التسويق |
سوء فهم شائع: العودة إلى بروتوكول خاص لا تعفيك من اعتماد SIG. فكل منتج يستخدم البلوتوث يحتاج إلى الاعتماد ليُباع، سواء استخدم Mesh أم لا. وبدون Mesh فأنت فقط تتخطى الاختبارات الخاصة بـ Mesh.
والخبر الجيد أن الاعتماد لا يعني بالضرورة إعادة الاختبار. فإن استخدمت حزمة اعتمدها مصنّع الشريحة سلفًا، دون تعديل أجزائها المعتمدة، أمكنك الإحالة إلى اعتماده وتقديم إقرار ودفع الرسوم فقط. وإذا كان تصميم البلوتوث متطابقًا في المفاتيح والمصابيح والمفاتيح اللاسلكية، فيمكنها تقاسم تصميم واحد ورسم واحد.
وانتبه أيضًا إلى أن شهادات الراديو مثل SRRC وCE وFCC متطلبات قانونية منفصلة عن اعتماد SIG. ودونها لا يجوز بيع المنتج قانونًا. وسيتناول مقال لاحق تكاليف الشهادات وترتيبها.
في جانب البوابة: أين تعيش حزمة Mesh؟
في جانب الأجهزة لا خلاف على استخدام SDK الشريحة. أما في البوابة فيمكن أن توجد حزمة Mesh في ثلاثة أماكن:
| الأسلوب | كيف يعمل | الإيجابيات والسلبيات |
|---|---|---|
| تنفيذ Mesh داخل برنامج البوابة | استخدام بلوتوث لوحة Linux نفسها لإرسال إعلانات Mesh واستقبالها | شريحة أقل، لكن عليك كتابة آلاف الأسطر من حزمة البروتوكول وإجراء اختبارات الاعتماد بنفسك |
| وحدة بلوتوث كمعالج مساعد | تعمل حزمة Mesh على الوحدة، ويرسل البرنامج الرئيسي الأوامر عبر UART | حزمة مجرَّبة ويمكن الإحالة إلى اعتماد المصنّع؛ وحدة إضافية |
| وحدة كمتحكّم بلوتوث عادي | تشغّل الوحدة HCI القياسي، وتعمل Mesh على Linux (مثل BlueZ) | برنامج ثابت جاهز للوحدة، لكن لا تطوير على Windows |
اخترنا الثاني: وحدة بلوتوث كمعالج مساعد. فالجزء الأصعب والأكثر حساسية للاعتماد في Mesh يبقى عند مصنّع الشريحة، ونتولى نحن الأوامر التسلسلية وترجمة Matter فقط. أما أي وحدة من أي مصنّع هي الأفضل كمعالج مساعد فهو موضوع المقال القادم.
ختامًا
إذن، هل يمكن تجاوز SIG Mesh؟
- عدم استخدام بروتوكول SIG Mesh: ممكن، لكنك تخسر إعادة الإرسال والأمان القياسي والتشغيل البيني بين المصنّعين، وتبقى بحاجة إلى اعتماد البلوتوث.
- استخدام SIG Mesh دون اعتماد: الوظائف لا تتأثر، لكن التصدير والمتاجر الإلكترونية وقنوات التجزئة الكبرى تصبح عمليًا مغلقة أمامك.
بالنسبة إلينا، أكبر قيمة في SIG Mesh ليست كلمة «معيار»، بل مجموعة نماذج الأجهزة التي تقابل Matter تقريبًا واحدًا لواحد. وهذا يُبقي طبقة الترجمة في البوابة بسيطة ويتركنا أحرارًا في اختيار شرائحنا.
إذا كانت أجهزتك ما زالت تعمل ببروتوكول خاص وتفكر في الانتقال إلى SIG Mesh، أو كنت تبني بالفعل بوابة Bluetooth Mesh، فسيسعدني الحديث معك: linktr.ee/weiyii