مرکزی مواد پر جائیں
اے آئی ٹیوٹوریلز

1991–95 جیپ کے لیے Arduino پر مبنی OBD1 اسکینر بنائیں

جانیں کہ ہم آہنگ 1991–95 جیپ اور کرائسلر OBD1 انجن کمپیوٹرز کے لیے کم لاگت والا Arduino Nano انٹرفیس xj-scanner کیسے تیار اور چلایا جاتا ہے۔ اس رہنما میں حفاظتی جانچ، وائرنگ کی تیاری، سافٹ ویئر کی تنصیب، فرم ویئر اپ لوڈ، خرابی کے کوڈ پڑھنا، لائیو ڈیٹا لاگ کرنا، بلٹ اِن ٹیسٹ اور خرابیوں کے حل کے وسائل شامل ہیں۔

1991–95 جیپ کے لیے Arduino پر مبنی OBD1 اسکینر

xj-scanner کیا ہے؟

xj-scanner ایک سستے 5 V Arduino Nano کے ذریعے لیپ ٹاپ کو 1991–95 کی Jeep کے انجن کمپیوٹر سے جوڑتا ہے۔ ہڈ کے نیچے موجود تشخیصی کنیکٹر سے تین تاریں Nano تک جاتی ہیں، جو USB کے ذریعے لیپ ٹاپ سے جڑتا ہے۔

کنکشن کے بعد یہ پروجیکٹ خرابی کے کوڈز اور انجن کا براہِ راست ڈیٹا پڑھ سکتا ہے، ڈرائیو کے دوران معلومات لاگ کر سکتا ہے، اور انجن کمپیوٹر کے اندر موجود ایکچیویٹر ٹیسٹ چلا سکتا ہے۔ Claude Code، Codex، یا کوئی دوسرا coding agent آپ کو سیٹ اپ کے مراحل اور repository کی ہدایات سمجھنے میں رہنمائی دے سکتا ہے۔

یہ پروجیکٹ 1994 Jeep Cherokee XJ with a 4.0L engine and computer part number 56030117 پر بنایا اور آزمایا گیا ہے۔ دیگر 1991–95 Chrysler اور Jeep SBEC/OBD1 کمپیوٹرز ملتے جلتے ہو سکتے ہیں، لیکن مطابقت کی ضمانت نہیں دی جاتی۔ ہارڈ ویئر جوڑنے سے پہلے ہمیشہ اپنے تشخیصی کنیکٹر کی پیمائش کریں۔

Jeep کے تشخیصی اسکینر کا سیٹ اپ

اہم خصوصیات

  • انجن کمپیوٹر کے خرابی کے کوڈز پڑھتا ہے۔
  • انجن کے براہِ راست پیرامیٹرز اور ان کی اسکیل شدہ قدریں دکھاتا ہے۔
  • براہِ راست ڈیٹا کو pc/logs/ کے اندر فائلوں میں لاگ کرتا ہے۔
  • انجن کمپیوٹر کے اندر موجود ایکچیویٹر ٹیسٹ سپورٹ کرتا ہے۔
  • ٹیسٹنگ کے لیے simulated Jeep mode شامل ہے، جس سے گاڑی کے بغیر لیپ ٹاپ سافٹ ویئر آزمایا جا سکتا ہے۔
  • Nano wiring-debug sketch کے ساتھ مرکزی bridge firmware بھی شامل ہے۔
  • لاگز کا خلاصہ بنانے، پیرامیٹرز اسکین کرنے، اور کمپیوٹر کا part number چیک کرنے کے لیے مددگار ٹولز شامل ہیں۔
  • رہنمائی کے ساتھ انسٹالیشن اور خرابی دور کرنے کے لیے agent-oriented playbooks فراہم کرتا ہے۔

ضروری ہارڈ ویئر

متوقع ہارڈ ویئر لاگت تقریباً $15 ہے۔ شروع کرنے سے پہلے درج ذیل اجزا جمع کر لیں:

  • USB-C یا mini-USB اور متعلقہ کیبل والا 5 V Arduino Nano clone۔
  • ایک چھوٹا breadboard۔
  • چند breadboard jumper wires۔
  • ہڈ کے نیچے موجود کنیکٹر سے لیپ ٹاپ کی جگہ تک پہنچنے والی تین تاریں۔
  • تشخیصی کنیکٹر میں فٹ ہونے والے 1/4-inch کے تین male spade terminals۔
  • ایک multimeter۔

اہم حفاظتی انتباہ

Ignition key آن ہونے پر cavity 6 میں 12 volts ہوتے ہیں۔ Arduino یا scanner کی کسی بھی تار کو cavity 6 سے کبھی مت جوڑیں۔

کنیکٹر کی cavities کی شناخت تار کے رنگ سے نہ کریں۔ ٹیسٹ گاڑی میں cavity 6 میں ground wire جیسا ہی black-and-white تار استعمال ہوا تھا۔ غلط کنکشن Nano یا لیپ ٹاپ کو گاڑی کے وولٹیج کے سامنے لا سکتا ہے۔

کسی بھی چیز کی wiring کرنے سے پہلے multimeter کے ذریعے ہر cavity چیک کریں۔ اپنی پیمائش کا موازنہ docs/connector.md میں دی گئی متوقع readings سے کریں۔ Repository میں آزمائی گئی wiring کے مطابق Nano کے pins D10، D11، اور GND بالترتیب diagnostic-plug cavities 4، 3، اور 2 سے جڑتے ہیں، لیکن آپ کو پہلے اپنی گاڑی کے کنیکٹر کی تصدیق کرنا ضروری ہے۔

آپشن 1: AI coding agent سے سیٹ اپ میں رہنمائی لیں

سب سے آسان انسٹالیشن کا طریقہ Claude Code، Codex، یا کسی دوسرے repository-aware coding agent کا استعمال ہے۔

  1. xj-scanner repository کو اپنے لیپ ٹاپ پر clone کریں۔
  2. اپنے coding agent میں repository کھولیں۔
  3. پوچھیں: Help me hook this up to my Jeep.
  4. ہدایات پر ایک وقت میں ایک قدم کے حساب سے عمل کریں۔

Agent AGENTS.md اور .claude/skills/ کے اندر موجود playbooks پڑھ سکتا ہے۔ ان ہدایات میں سافٹ ویئر سیٹ اپ، breadboard assembly، meter کے ذریعے کنیکٹر cavities کی شناخت، اور پہلی reading لینے کے مراحل شامل ہیں۔ اگر کوئی ہدایت واضح نہ ہو تو آگے بڑھنے سے پہلے agent سے اسے آسان الفاظ میں سمجھانے کو کہیں۔

آپشن 2: xj-scanner کو دستی طور پر انسٹال اور چلائیں

1. Python environment بنائیں

Repository کے root سے virtual environment بنائیں اور scanner کی dependencies انسٹال کریں:

python3 -m venv .venv && .venv/bin/pip install -r pc/requirements.txt

2. لیپ ٹاپ سافٹ ویئر کو demo mode میں آزمائیں

Jeep سے کنیکٹ کرنے سے پہلے scanner کو اس کی simulated vehicle کے خلاف چلائیں:

.venv/bin/python pc/xj_scan.py --cli DEMO

اس سے تصدیق ہو جاتی ہے کہ Python والا حصہ Arduino یا انجن کمپیوٹر کے بغیر کام کرتا ہے۔ اگر demo mode ناکام ہو تو vehicle wiring کی طرف بڑھنے سے پہلے لیپ ٹاپ والے مسئلے کو حل کریں۔

3. Arduino CLI اور AVR core انسٹال کریں

README میں macOS اور Homebrew کے لیے درج ذیل commands دی گئی ہیں:

brew install arduino-cli
arduino-cli core install arduino:avr

اگر آپ کوئی دوسرا operating system استعمال کرتے ہیں تو اس platform کے لیے مناسب طریقے سے arduino-cli انسٹال کریں، پھر arduino:avr core انسٹال کریں۔

4. Nano کو connect اور identify کریں

Arduino Nano کو USB کے ذریعے لیپ ٹاپ سے جوڑیں۔ اس کا serial port معلوم کریں، پھر upload command میں /dev/cu.usbserial-XXXX کی جگہ اصل port درج کریں۔

مثال میں board identifier arduino:avr:nano:cpu=atmega328old استعمال کیا گیا ہے، جو بہت سے Nano clones میں استعمال ہونے والی old bootloader configuration منتخب کرتا ہے۔

5. Bridge firmware compile اور upload کریں

arduino-cli compile --upload -p /dev/cu.usbserial-XXXX --fqbn arduino:avr:nano:cpu=atmega328old arduino/xj_bridge

xj_bridge sketch Nano کو لیپ ٹاپ scanner اور Jeep کے انجن کمپیوٹر کے درمیان communication bridge میں تبدیل کرتا ہے۔

6. Wiring کی تصدیق اور assembly کریں

گاڑی کی wiring کو Nano سے منقطع رکھتے ہوئے multimeter کے ذریعے diagnostic connector کی cavities کی شناخت کریں۔ Connector measurements، breadboard layout، اور wiring کی تفصیلات کے لیے repository کی docs/ directory دیکھیں۔

آزمائی گئی گاڑی کے لیے تین signal connections یہ ہیں:

  • Nano D10 کو diagnostic connector cavity 4 سے جوڑیں۔
  • Nano D11 کو diagnostic connector cavity 3 سے جوڑیں۔
  • Nano GND کو diagnostic connector cavity 2 سے جوڑیں۔

صرف اس فہرست کی بنیاد پر آگے نہ بڑھیں۔ اپنی گاڑی میں ہر کیویٹی کی تصدیق کریں اور تمام تاروں کو کیویٹی 6 سے دور رکھیں۔

7. خرابی کے کوڈز اور لائیو ڈیٹا پڑھیں

جب فرم ویئر اور تصدیق شدہ وائرنگ تیار ہو جائے تو اگنیشن کی چابی کو ON کریں اور یہ کمانڈ چلائیں:

.venv/bin/python pc/xj_scan.py --cli auto

خودکار موڈ میں اسکینر پہلے خرابی کے کوڈز پڑھتا ہے اور پھر لائیو ڈیٹا جمع کرتا ہے۔ لاگز pc/logs/ کے اندر لکھے جاتے ہیں۔

ریپوزٹری کی ساخت کو سمجھنا

  • arduino/: مرکزی xj_bridge Nano اسکیچ اور وائرنگ کی تشخیص کے لیے xj_sniff اسکیچ رکھتا ہے۔
  • pc/: اس میں xj_scan.py موجود ہے، جو خرابی کے کوڈز، لائیو ڈیٹا، لاگنگ اور ایکچیویٹر ٹیسٹس سنبھالتا ہے۔
  • tools/: لاگز کا خلاصہ بنانے، ہر پیرامیٹر کو جانچنے اور انجن کمپیوٹر کا پارٹ نمبر چیک کرنے کی افادیتیں رکھتا ہے۔
  • docs/: کنیکٹر، وائرنگ، کمیونیکیشن پروٹوکول، پیرامیٹرز، اسکیلنگ فارمولوں اور خرابی دور کرنے کے طریقۂ کار کی دستاویز فراہم کرتا ہے۔
  • .claude/skills/: مرحلہ وار رہنما ہدایات رکھتا ہے جن پر AI ایجنٹ آپ کے ساتھ عمل کر سکتا ہے۔

بنیادی طریقۂ کار

پہلا محتاط سیشن اس ترتیب سے ہونا چاہیے:

  1. Python اور اس کی dependencies کی توثیق کے لیے DEMO موڈ چلائیں۔
  2. Nano پر xj_bridge اپ لوڈ کریں۔
  3. گاڑی کی طرف کی وائرنگ منقطع کریں اور ہر کنیکٹر کیویٹی کی پیمائش کریں۔
  4. دستاویز کی مدد سے گراؤنڈ اور کمیونیکیشن کیویٹیز کی تصدیق کریں۔
  5. بریڈ بورڈ سرکٹ بنائیں اور ہر کنکشن دوبارہ چیک کریں۔
  6. انجن اسٹارٹ کیے بغیر چابی کو ON کریں۔
  7. --cli auto کے ساتھ اسکینر چلائیں۔
  8. رپورٹ کیے گئے خرابی کے کوڈز کا جائزہ لیں اور تصدیق کریں کہ pc/logs/ میں لاگ بن گیا ہے۔

اعلیٰ سطحی تجاویز

کمیونیکیشن ناکام ہونے پر ڈیبگ اسکیچ استعمال کریں

arduino/xj_sniff اسکیچ وائرنگ کی تشخیص کے لیے شامل کیا گیا ہے۔ جب برج انجن کمپیوٹر سے کمیونیکیشن نہ کر سکے تو اسے docs/ میں موجود خرابی دور کرنے کے مواد کے ساتھ استعمال کریں۔ برقی توانائی موجود ہونے کے دوران وائرنگ تبدیل کرنے سے گریز کریں۔

ڈرائیو لاگز کا خلاصہ بنائیں

لائیو ڈیٹا ریکارڈ کرنے کے بعد tools/ کے اندر موجود مددگار افادیتوں کا جائزہ لیں۔ ریپوزٹری میں لاگ کا خلاصہ بنانے والی ایک افادیت شامل ہے جو طویل ریکارڈنگ کا جائزہ لینا آسان بنا سکتی ہے۔ اگر اصل ڈیٹا کو بغیر تبدیلی محفوظ رکھنا ہو تو لاگ کی نقل پر کام کریں۔

دستیاب پیرامیٹرز کو احتیاط سے جانچیں

ایک مددگار ٹول پروجیکٹ میں معلوم ہر پیرامیٹر کو جانچ سکتا ہے۔ اسے استعمال کرنے سے پہلے پروٹوکول اور پیرامیٹر کی دستاویز دیکھیں تاکہ آپ سمجھ سکیں کہ کیا درخواست کی جا رہی ہے اور ہر خام قدر کو کیسے اسکیل کیا جاتا ہے۔

انجن کمپیوٹر کا پارٹ نمبر چیک کریں

چونکہ اس پروجیکٹ کی توثیق انجن کمپیوٹر 56030117 پر کی گئی تھی، اس لیے کسی دوسری گاڑی کی تحقیق کرتے وقت فراہم کردہ پارٹ نمبر مددگار استعمال کریں۔ مختلف SBEC/OBD1 کمپیوٹر کا رویہ ملتا جلتا ہو سکتا ہے، لیکن README معاونت کی ضمانت نہیں دیتا۔

ایکچیویٹر ٹیسٹس میں احتیاط کریں

PC اسکینر میں بلٹ اِن ایکچیویٹر ٹیسٹس شامل ہیں۔ یہ ٹیسٹس گاڑی کے ہارڈ ویئر کو کمانڈ دے سکتے ہیں، اس لیے انہیں صرف اسی وقت چلائیں جب آپ مخصوص ٹیسٹ کو سمجھتے ہوں، گاڑی محفوظ مقام پر کھڑی ہو، اور حرکت کرنے والے یا برقی توانائی والے اجزا چوٹ یا نقصان کا سبب نہ بن سکیں۔

تفصیلی اسکیلنگ دستاویز استعمال کریں

docs/ ڈائریکٹری دستیاب پیرامیٹرز اور اسکیلنگ فارمولوں کی وضاحت کرتی ہے۔ خام ریڈنگز کی تشریح کرتے وقت اس سے رجوع کریں، خاص طور پر اگر آپ فیول ٹرم کا تجزیہ کر رہے ہوں یا کسی قدر کا دوسرے اسکین ٹول سے موازنہ کر رہے ہوں۔

خرابی دور کرنے کی چیک لسٹ

  • گاڑی کے کنکشن کی تشخیص سے پہلے تصدیق کریں کہ --cli DEMO کام کرتا ہے۔
  • تصدیق کریں کہ Nano متوقع USB سیریل پورٹ پر ظاہر ہوتا ہے۔
  • یقینی بنائیں کہ فرم ویئر درست Nano بوٹ لوڈر انتخاب کے ساتھ اپ لوڈ کیا گیا تھا۔
  • تاروں کے رنگوں پر انحصار کرنے کے بجائے ڈائیگناسٹک کنیکٹر کی پیمائش کریں۔
  • یقینی بنائیں کہ کوئی تار کیویٹی 6 سے منسلک نہ ہو۔
  • وائرنگ کی دستاویز کے مطابق D10، D11 اور GND کے بریڈ بورڈ راستے چیک کریں۔
  • جب برقی سیٹ اپ درست نظر آئے لیکن کمیونیکیشن پھر بھی ناکام ہو تو xj_sniff اور خرابی دور کرنے کی رہنما استعمال کریں۔
  • یاد رکھیں کہ غیر آزمودہ Chrysler یا Jeep کمپیوٹرز 1994 Cherokee ٹیسٹ گاڑی سے مختلف ہو سکتے ہیں۔

نتیجہ

xj-scanner ایک مطابقت رکھنے والی Jeep کے OBD1 انجن کمپیوٹر کو لیپ ٹاپ اور Arduino Nano کے ذریعے جانچنے کا کم لاگت طریقہ فراہم کرتا ہے۔ ڈیمو موڈ سے آغاز کریں، ملٹی میٹر کے ذریعے ہر کنیکٹر کیویٹی کی تصدیق کریں، اور ریپوزٹری کی دستاویزات پر احتیاط سے عمل کریں۔ یہ پروجیکٹ GPLv3 کے تحت فراہم کردہ شوقیہ سافٹ ویئر ہے جو گاڑی کے برقی نظام سے کمیونیکیشن کرتا ہے، اس لیے اسے اپنی ذمہ داری پر استعمال کریں اور برقی حفاظت کو اولین ترجیح دیں۔

یہ پروجیکٹ پروٹوکول، پیرامیٹر، اسکیلنگ اور خرابی کے کوڈز سے متعلق کام پر مبنی ہے جو ChryslerScanner سے لیا گیا ہے، جبکہ فیول ٹرم اسکیلنگ میں disassembled SBEC code سے رہنمائی حاصل کی گئی ہے۔