منصوبے کے بارے میں

پلسار ESP8266 اور ESP32 پر مبنی ہارڈ ویئر کے لیے GPL-3.0 فرم ویئر پروجیکٹ ہے، جس کا مقصد سمارٹ ہوم انٹیگریشن، آٹومیشن اور پیمائش ہے۔ یہ عوامی ریلیز ابتدائی صارفین کے لیے ہے جو رسمی ریلیز سے پہلے جانچ اور ڈی بگنگ میں مدد فراہم کر سکتے ہیں۔ README میں بتایا گیا ہے کہ دستاویزات بہت کم ہیں اور فرم ویئر میں ابھی بھی نمایاں تبدیلیاں ہو رہی ہیں۔ ترقی کا کام VSCode اور PlatformIO سے کیا جاتا ہے۔ کوڈ بیس کو نمبر شدہ ماڈیول گروپس میں منظم کیا گیا ہے۔ 0_ConfigUser صارف کے سامنے آنے والی فعالیت کی ترتیب پر مشتمل ہے۔ 1_TaskerManager مرکزی عمل درآمد پرت ہے جو HomeControlSystem.cpp میں setup() اور loop() کے ساتھ مل کر کام کرتا ہے تاکہ ماڈیول کے افعال چلا سکے۔ یہ ہر فنکشن کے سی پی یو کے استعمال کے وقت کو محدود کرکے کوآپریٹو ملٹی ٹاسکنگ فراہم کرتا ہے اور ایسے کاموں کو تقسیم کرتا ہے جو بصورت دیگر بلاک ہو جاتے ہیں، جیسے سینسر سے ریڈنگ کی درخواست کرنا اور بعد میں اس کے نتیجے کی جانچ کرنا۔ باقی گروپس مشترکہ بنیادی سسٹم فعالیت، ہوسٹ نیٹ ورکنگ، جی پی آئی او ڈرائیورز، سینسرز، لائٹس، توانائی کی پیمائش، ڈسپلےز، یونیفائیڈ کنٹرولرز اور ایک بار کے لیے بنائے گئے مخصوص ہارڈ ویئر کنفیگریشنز کا احاطہ کرتے ہیں۔ نیٹ ورکنگ پرت میزبان کے ساتھ مواصلات کے لیے ہے، موجودہ کنفیگریشن نوٹس میں وائی فائی اور MQTT کو ضروری بتایا گیا ہے۔ ریموٹ ریڈیو جیسے 433 میگا ہرٹز ہارڈ ویئر کو ہوسٹ نیٹ ورکنگ کے بجائے ہارڈ ویئر ایڈ آن کے طور پر سمجھا جاتا ہے۔ سینسر پرت میں ایک انٹرفیس ماڈیول شامل ہے جو قسم کے لحاظ سے ریڈنگز کو خلاصہ کرتا ہے تاکہ دوسرے ماڈیولز یہ جانے بغیر کہ کون سا فزیکل سینسر منسلک ہے پیمائش کی درخواست کر سکیں۔ دستاویز شدہ سینسرز کی فہرست میں ADS1115 ADC اور اینالاگ وولٹیج ان پٹ، APDS9960 پروکسیمٹی، BH1750 اور TSL2516 لائٹ سینسرز، درجہ حرارت، نمی اور دباؤ کے لیے BME ڈیوائسز، بٹنز، کاؤنٹرز اور فریکوئنسی ان پٹ، DS18x20 اور DHT درجہ حرارت/نمی سینسرز، ڈور کانٹیکٹس، نمی سینسرز، PIR/ڈوپلر موشن اور اوکیوپنسی سینسرز، پلس کاؤنٹرز، ریموٹ سینسرز، روٹری ان پٹ، SeeSaw مٹی سینسرز، سوئچز اور SR04/الٹراسونک فاصلہ سینسرز شامل ہیں۔ README ٹیبل میں کچھ اندراجات کو عارضی یا اوور لیپنگ کے طور پر نشان زد کیا گیا ہے۔ دیگر ماڈیول زمرے بیرونی جی پی آئی او ڈیوائسز، ایڈریس ایبل ایل ای ڈی اور پی ڈبلیو ایم لائٹنگ کو کنٹرول کرنے، توانائی کے ڈیٹا کو جمع کرنے، ڈسپلے سپورٹ فراہم کرنے اور ایسے کنٹرولرز کو کنٹرول کرتے ہیں جو سینسرز، ڈرائیورز اور ڈسپلےز کو ایک متحد سسٹم میں یکجا کرتے ہیں۔ HVAC کنٹرول کو ایک مثال کے طور پر پیش کیا گیا ہے، جہاں ایک سینسر ڈرائیور آؤٹ پٹ کے لیے ان پٹ فراہم کر سکتا ہے؛ آسان رد عمل والے رویے کو رولز کے ذریعے ہینڈل کیا جا سکتا ہے۔ 10_ConSpec کو خصوصی ایک بار کے ہارڈ ویئر کے نفاذ کے لیے مخصوص کیا گیا ہے۔ بلڈ کنفیگریشن کو ہارڈ ویئر لے آؤٹ، ڈیوائس/MQTT نام دینے اور اسٹارٹ اپ کمانڈز کے لیے mFirmwareCustom_Secret.h اور کوڈ اور نیٹ ورک سیٹنگز کے لیے mUserConfig_Secret.h کے درمیان تقسیم کیا گیا ہے۔ platformio_override کو ESP8266 یا ESP32 بلڈ ماحول اور ہدف ڈیوائسز کو منتخب کرنے کے لیے استعمال کیا جاتا ہے۔ README میں بتایا گیا ہے کہ جب آپ Git سے پل کرتے ہیں تو پیدا کردہ یا اوور رائیڈ فائلوں کو تبدیل کیا جا سکتا ہے۔ منصوبہ بند 1.0 ورژن کے کام میں فائل سسٹم سپورٹ، محفوظ کردہ سیٹنگز، ایک بنیادی WebUI، ملٹی پن لائٹنگ، ایک ریکوری فرم ویئر ویب پیج، اور اس بات کو یقینی بنانا شامل ہے کہ غیر معاون کوڈ کو غیر فعال یا جانچ لیا جائے۔ طویل مدتی منصوبوں میں ESP32 پر PoE کے ساتھ ایتھرنیٹ، مکمل ویب سپورٹ، ایک کیمرہ سینسر نوڈ، اور GSM/LTE ریموٹ ڈیٹا کی صلاحیتیں شامل ہیں۔ یہ روڈ میپ آئٹمز ہیں نہ کہ مکمل خصوصیات۔