Christian Schaller ने एक असमर्थित फ़िल्म स्कैनर के Windows ड्राइवर द्वारा USB पर भेजे जाने वाले संदेश रिकॉर्ड करने के बाद उससे Linux में पहचानने योग्य स्कैन प्राप्त किया। अपने 15 अक्टूबर के विवरण में वे बताते हैं कि इन कैप्चर का विश्लेषण करने और SANE बैकएंड विकसित करने में उन्होंने Claude की मदद ली। पहले स्कैन की गुणवत्ता में अब भी समस्याएँ थीं; बाद में उन्होंने कहीं बेहतर ड्राइवर मिलने की बात कही। ये एक डेवलपर और एक स्कैनर के नतीजे हैं, इस बात का स्वतंत्र रूप से दोहराया गया माप नहीं कि AI कितनी बार ड्राइवर लिख सकता है।
बाद में Schaller ने hw-harness प्रकाशित किया। MIT लाइसेंस वाले स्क्रिप्ट और दस्तावेज़ों का यह संग्रह उनकी विधि को सामान्य रूप देता है। वे स्पष्ट कहते हैं कि स्कैनर और कैमरा प्रोजेक्ट में खास तौर पर बनाया गया कोड इस्तेमाल हुआ था, प्रकाशित harness का मौजूदा रूप नहीं। असमर्थित USB डिवाइस तक भौतिक पहुँच रखने वाले Linux ड्राइवर डेवलपर के लिए उपयोगी काम का दायरा “AI से रिवर्स इंजीनियरिंग करवाने” से छोटा है: निर्माता के काम कर रहे ड्राइवर के साथ एक क्रिया कैप्चर करें, Linux ड्राइवर के साथ वही क्रिया कैप्चर करें और पहले अर्थपूर्ण अंतर की जाँच करें।
बड़ा बदलाव
- क्या बदला: Schaller ने एक दोहराने योग्य तरीका तैयार किया है जिसमें काम कर रहे Windows डिवाइस सत्र और Linux ड्राइवर के प्रयास को होस्ट पर चलने वाले एक ही USB रिकॉर्डर से रिकॉर्ड किया जाता है। उनके स्कैनर का नतीजा दिखाता है कि यह तुलना क्यों मददगार हो सकती है, लेकिन यह अब भी एक ही रिपोर्ट किया गया मामला है।
- यह क्यों मायने रखता है: ड्राइवर डेवलपर किसी AI कोडिंग सहायक को लेबल किए गए ट्रेस देकर प्रोटोकॉल की संभावित व्याख्या या छोटा जाँच-परीक्षण सुझाने को कह सकता है। तैयार किया गया कोई भी कोड स्वीकार करने से पहले डेवलपर को अब भी हार्डवेयर, काम करने वाली संदर्भ क्रिया और सीधे परीक्षणों की ज़रूरत है।
- किस पर नज़र रखें: विधि इस पर निर्भर है कि डिवाइस का ज़रूरी ट्रैफ़िक दिखाई देता है या नहीं। अंदर लगे MIPI कैमरे के लिए प्रकाशित harness इसके बजाय Windows डिवाइस कॉन्फ़िगरेशन और ACPI की जाँच का रास्ता अपनाता है; USB ट्रेस की प्रक्रिया से डेवलपर के लिए ज़रूरी जानकारी छूट जाएगी।
कैप्चर से पहले क्या चाहिए
प्रोजेक्ट का hw-harness README कहता है कि इसे Fedora पर विकसित और परखा गया था। दस्तावेज़ों में दिए सेटअप के लिए libvirt/KVM, निर्माता का ड्राइवर चलाने वाला Windows गेस्ट, वास्तविक USB passthrough, Linux होस्ट पर usbmon से कैप्चर और तुलना के लिए Linux ड्राइवर या जाँच-प्रोग्राम चाहिए। Windows 11 Pro में harness के RDP-आधारित ग्राफ़िकल नियंत्रण इस्तेमाल किए जा सकते हैं। इसकी VM गाइड कहती है कि Home गेस्ट में SSH का उपयोग हो सकता है, लेकिन वे RDP नियंत्रण उपलब्ध नहीं होते। रिपॉज़िटरी में Fedora पैकेज और समूह की अनुमतियाँ दी गई हैं; डिवाइस जोड़ने से पहले डाउनलोड किए गए संशोधन में harness doctor चलाकर पता लगाएँ कि कौन से हिस्से नहीं हैं।
अनुमति के साथ इस्तेमाल की जाने वाली Windows स्थापना और निर्माता का सॉफ़्टवेयर, ठीक वही डिवाइस, दोहराने योग्य क्रिया और पैकेट कैप्चर के लिए जगह तैयार रखें। VM, हार्डवेयर तक पहुँच, Windows और अपनी पसंद की AI सेवा का बजट रखें; रिपॉज़िटरी शुरुआत से अंत तक का कोई तय खर्च नहीं बताती। इसकी स्क्रिप्ट MIT लाइसेंस के तहत हैं, लेकिन इससे Windows या निर्माता के सॉफ़्टवेयर का लाइसेंस नहीं मिलता। इकट्ठा की गई सामग्री इस्तेमाल या वितरित करने से पहले अपने लाइसेंस की शर्तें और लागू रिवर्स-इंजीनियरिंग नियम जाँचें।
हर डिवाइस के लिए अलग प्रोजेक्ट डायरेक्टरी इस्तेमाल करें। README के अनुसार harness init से कॉन्फ़िगरेशन और अनदेखी की जाने वाली etc/ तथा captures/ डायरेक्टरियाँ बनती हैं। README के उदाहरणों को कॉपी करने के बजाय अपने डिवाइस से VM का नाम और USB निर्माता/उत्पाद ID भरें। winctl auth, harness iso और दस्तावेज़ों में दिया गेस्ट बूटस्ट्रैप Windows VM का नियंत्रण स्थापित करते हैं; कैप्चर से पहले winctl status में ssh: ok दिखाई देना चाहिए। इसे प्रोजेक्ट का दस्तावेज़ों में दिया सेटअप मानें, BIG CHANGE द्वारा चलाई गई प्रक्रिया नहीं।
दोनों सिस्टम पर एक ही क्रिया मिलाएँ
- बेसलाइन और Windows संदर्भ रिकॉर्ड करें। रिपॉज़िटरी के विधि संबंधी दस्तावेज़ का पालन करें: पहले समझें कि निष्क्रिय अवस्था का ट्रैफ़िक कैसा दिखता है। यदि डिवाइस की शुरुआती enumeration चाहिए, तो USB डिवाइस गेस्ट को सौंपने से पहले होस्ट पर कैप्चर शुरू करें। passthrough से दिए गए डिवाइस पर निर्माता का Windows ड्राइवर चलाएँ और किसी छोटी, खास क्रिया को लेबल दें, जैसे बताए गए रिज़ॉल्यूशन पर स्कैन।
usbcapबस का ट्रैफ़िक कैप्चर करता है और एक.metaसहायक फ़ाइल में डिवाइस, बस पता, अवधि और लेबल लिखता है। होस्ट का कैप्चर बिंदु USB passthrough के नीचे है, इसलिए वह गेस्ट की क्रिया देख सकता है। - Linux की मेल खाती क्रिया रिकॉर्ड करें। डिवाइस होस्ट को वापस दें और अपने Linux ड्राइवर को उन्हीं सेटिंग और उसी भौतिक सामग्री के साथ वही क्रिया करते हुए कैप्चर करें। मेल खाता Linux रन न हो तो संदर्भ कैप्चर से यह तय नहीं होता कि ड्राइवर की कौन सी क्रिया अलग हुई। रिपॉज़िटरी का स्कैनर कमांड लेखक के सेटअप का उदाहरण है, हर डिवाइस के लिए सार्वभौमिक कमांड नहीं।
- तुलना करें और एक परिकल्पना परखें। दोनों ट्रेस Wireshark में या विधि संबंधी दस्तावेज़ के
tsharkफ़िल्टरों से पढ़ें। शुरुआती ट्रांसफ़र, क्रिया से ठीक पहले और बाद की write क्रियाएँ, स्थिति की बार-बार जाँच और bulk-transfer का समय देखें। एक बार में एक सेटिंग, जैसे रिज़ॉल्यूशन, बदलकर देखें कि कौन सा ट्रांसफ़र बदलता है। AI सहायक से संभावित अंतर पहचानने और उसके आधार वाले कैप्चर व फ़्रेम का संदर्भ देने को कहें। फिर ड्राइवर में सीमित बदलाव करें या जाँच-प्रोग्राम चलाएँ और असली हार्डवेयर पर वही क्रिया दोहराएँ। मॉडल के उत्तर में एक विश्वसनीय लगने वाली व्याख्या मिलना सफलता का संकेत नहीं है।
तुरंत मिलने वाला आउटपुट लेबल लगी कैप्चर फ़ाइलों की जोड़ी और पहले अर्थपूर्ण अंतर का विवरण है। सफल सुधार के लिए Linux पर डिवाइस को डेवलपर की अपनी जाँचों में अपेक्षित आउटपुट के साथ इच्छित क्रिया लगातार करनी होगी। कुछ बाइट मिल जाना या एक अधूरी छवि बन जाना ड्राइवर की पूरी गुणवत्ता साबित नहीं करता। Schaller के विवरण में पहले पहचानने योग्य स्कैन पर भी और काम करना था, और जब वे काम कर रहे थे तब उनके स्कैनर के लिए मुख्य SANE प्रोजेक्ट में समर्थन अलग से आया।
ट्रेस की तुलना मुश्किल हो तो क्रिया छोटी करें और पुष्टि करें कि डिवाइस, सेटिंग और कैप्चर की परत एक जैसी हैं। विधि एक सवाल का जवाब देने वाले छोटे कैप्चर और डिवाइस जोड़ने का एक बार कैप्चर करने की सलाह देती है। passthrough या गेस्ट नियंत्रण विफल हो तो harness doctor, hostdev status और VM सेटअप गाइड देखें, उसके बाद ही खाली ट्रेस को ड्राइवर की खराबी समझने पर विचार करें। मूल कैप्चर और नोट रखें, ताकि सुझाए गए रजिस्टर कॉन्स्टेंट का संबंध देखे गए फ़्रेम से जोड़ा जा सके।
USB ट्रेसिंग की सीमा
अंदर लगा MIPI कैमरा होस्ट के USB रिकॉर्डर को वैसा उपयोगी ट्रैफ़िक नहीं दिखाता। विधि संबंधी दस्तावेज़ इसके बजाय Windows PnP गुणों, INF फ़ाइलों, रजिस्ट्री प्रविष्टियों और ACPI टेबल के लिए winctl probe के उपयोग, और Linux की ओर जाँच के लिए hwdbg का वर्णन करता है। Schaller अपने लैपटॉप कैमरे पर kernel और libcamera पैच के साथ यह अलग रास्ता अपनाने की बात कहते हैं; ये नतीजे भी उनके ही विवरण से हैं। कैमरे के नतीजे को इस बात का प्रमाण न मानें कि USB वाला चक्र किसी दूसरे डिवाइस पर काम कर गया।
जाँच को डिवाइस के देखे गए व्यवहार और घोषणात्मक कॉन्फ़िगरेशन तक रखें। रिपॉज़िटरी की clean-room गाइड निर्माता की बाइनरी को डिसअसेंबल करने या उनका कोड Linux ड्राइवर में कॉपी करने को इस विधि से बाहर रखती है। यह यह भी चेताती है कि कैप्चर में डिवाइस के सीरियल नंबर आ सकते हैं और प्रोजेक्ट डायरेक्टरी में निजी SSH कुंजी होती है। ट्रेस, डिवाइस पहचानकर्ता और गेस्ट फ़ाइलें किसी AI सेवा को देने या सार्वजनिक रूप से साझा करने से पहले जाँचें; कुंजियाँ और मूल कैप्चर source control में न रखें। प्रकाशित निर्देश आज़माने का एक तरीका बताते हैं। BIG CHANGE ने तय संशोधन पर ब्लॉग और रिपॉज़िटरी की जाँच की, लेकिन VM नहीं चलाया, किसी डिवाइस का कैप्चर नहीं लिया और बने हुए ड्राइवर को सत्यापित नहीं किया।
स्रोत और आगे पढ़ने के लिए
- Christian Schaller का 15 अक्टूबर का विवरण उनके स्कैनर और लैपटॉप पर काम, Claude को दी गई भूमिका और खास तौर पर लिखी गई स्क्रिप्ट के बाद साझा harness आने की वजह समझाता है। स्कैनर का नतीजा उनका अपना विवरण है; इस लेख में उसका स्वतंत्र दोहराव नहीं हुआ।
- hw-harness रिपॉज़िटरी टूल, Fedora और Windows की ज़रूरतें, सेटअप का उदाहरण और प्रोजेक्ट की गोपनीयता चेतावनी बताती है। BIG CHANGE ने
093afc5c576c200f29b771d01624a327d0ff1806कमिट की जाँच की, जो 14 अक्टूबर 2026 का है; रिपॉज़िटरी MIT लाइसेंस के तहत है और इस संशोधन के बाद बदल सकती है। - विधि बेसलाइन, संदर्भ, Linux तुलना और दोहराने के चक्र, कैप्चर संबंधी सावधानियाँ, USB ट्रेस पढ़ने और होस्ट को न दिखने वाली बस वाले डिवाइसों के लिए अलग रास्ते को तय करती है।
- Windows संदर्भ VM का सेटअप गेस्ट तक पहुँच, USB passthrough और RDP नियंत्रणों में Windows Pro तथा Home का अंतर बताता है। अपनी स्थापना के लाइसेंस की शर्तें जाँचें।
- Clean-room की सीमाएँ प्रोजेक्ट की अवलोकन-आधारित प्रक्रिया, निर्माता की बाइनरी के संबंध में उसकी सीमाएँ और कॉन्स्टेंट कहाँ से आए यह दर्ज करने की ज़रूरत बताती हैं। यह प्रोजेक्ट का इंजीनियरिंग मार्गदर्शन है, कानूनी राय नहीं।



