পাই জিরো এইচআইডি হিসাবে: ইউএসবি এর মাধ্যমে পাই জিরো থেকে পিসি মাউস কীভাবে নিয়ন্ত্রণ করবেন?


10

আমি এটি জিজ্ঞাসা করছি কারণ দিনগুলি অনুসন্ধানের পরেও আমি এই বিষয় সম্পর্কে পরিষ্কার কিছু পাইনি। সুতরাং, প্রশ্নটি ইতিমধ্যে উপস্থিত থাকলে আমি দুঃখিত।

আমি কেবল একটি মজাদার জন্য একটি প্রকল্পে কাজ করছি, যেখানে আমি রাস্পবেরি পাই থেকে পিসি মাউসটি নিয়ন্ত্রণ করতে চাই। ব্যবহারকারীর ইনপুটটি আরপি-র সাথে সংযুক্ত যে কোনও ধরণের হার্ডওয়্যার দ্বারা সম্পন্ন হবে, আমার মূল সন্দেহটি ইউএসবির মাধ্যমে আরপি থেকে পিসিতে গতিবিধির নির্দেশাবলী কীভাবে প্রেরণ করতে হবে তা নিয়ন্ত্রণ করতে হবে।

আমি জানি যে পিসিটিকে ইউএসবি ডিভাইস হিসাবে স্বীকৃতি দেওয়ার জন্য আমাকে ওটিজি মোড সক্ষম করতে হবে, তবে ইউএসবির মাধ্যমে পিসিতে মাউস মুভমেন্টগুলি কীভাবে প্রেরণ করা যায় এবং উইন্ডোজ / লিনাক্সকে এটি বোঝার জন্য আমার কোনও ধারণা নেই। আমি দেখতে পেলাম যে "লিনাক্স-ইউএসবি গ্যাজেট এপিআই ফ্রেমওয়ার্ক" বিদ্যমান আছে তবে এটি ব্যবহার সম্পর্কে কোনও উদাহরণ নেই এবং এটি সর্বোত্তম পন্থা কিনা তা আমি আসলে জানি না।

আপনি আমাকে দয়া করে আমাকে কিছু সংকেত বা সংস্থান দিতে পারেন?

আপনাকে অনেক ধন্যবাদ.

usb  pi-zero 

এখানে শুরু করার জন্য এখানে আমি মনে করি: kernel.org/doc/Docamentation/usb/gadget_hid.txt এখানে একটি hid_gadget_testপ্রোগ্রাম উল্লেখ করা হয়েছে, আমার কাছে পাই পাই নেই তবে আপনি পরীক্ষা করতে পারেন apt-file search hid_gadget_test(এবং apt install apt-fileপ্রয়োজনে প্রথমে)।
স্বর্ণলোকস

@ গোল্ডিলোকস না, আপনার লিঙ্কটি দেখতে অনেকটা স্পট অন, এটি অবশ্যই বেড়ার ডান দিক। অন্যদিকে নিয়মিত এইচআইডি ড্রাইভারদের লাইভ করুনusbkbd.ko
দিমিত্রি গ্রিগরিওয়েভ

@ গল্ডিলোকস না, লিনাক্সে, "গ্যাজেট" এর অর্থ সর্বদা দাস হিসাবে চালানো, হোস্ট হিসাবে নয়।
hobbs

@ হোবস আপনি ঠিক বলেছেন - আমি সেখানে দ্বিতীয়বার অনুমান করেছি কারণ g_etherইথারনেট গ্যাজেট হিসাবে শূন্যটি আঁকানোর সময় কোন প্রান্তটি ব্যবহৃত হয়েছিল তা আমি মনে করতে পারি না (তবে এটি স্লেভ সাইড, হোস্ট সাইডের ড্রাইভারটি আরও সাধারণ usbnet)
স্বর্ণলোকস

উত্তর:


5

g_hid@ গডিলকস দ্বারা উল্লিখিত মডিউলটি ব্যবহার করার চেষ্টা করুন :

  1. dtoverlay=dwc2আপনার একটি লাইন যুক্ত করুন config.txtএবং পুনরায় বুট করুন
  2. সাথে ড্রাইভার ড্রাইভার sertোকান modprobe g_hid
  3. চালান hid_gadget_test /dev/hidg0 keyboard। আপনাকে এখানে প্রদত্ত নমুনা কোডটি ব্যবহার করে প্রথমে প্রোগ্রামটি তৈরি করতে হবে ।

অর্জন করা আরেকটি, আরো নমনীয় উপায় যে আপনি চান (কাস্টম ড্রাইভার লিখেই) ব্যবহার করতে হয় gadgetfs । আমি কমপক্ষে একটি প্রকল্প জানি যা একটি ছোট এআরএম কম্পিউটারকে এই পদ্ধতিটি ব্যবহার করে ইউএসবি / ব্লুটুথ কীবোর্ড / মাউস / গেমপ্যাডে পরিণত করেছে।

দুর্ভাগ্যক্রমে, র‌্যাপসবেরি পাইতে গ্যাজেটফগুলির স্থিতি অনিশ্চিত। এই থ্রেডটি সুপারিশ করে যে এটি কাজ করে না, তবে লেখক ঠিক কী চেষ্টা করেছেন তা অস্পষ্ট। আমি তবুও এটি চেষ্টা করার পরামর্শ দিই:

  1. dtoverlay=dwc2আপনার একটি লাইন যুক্ত করুন config.txtএবং পুনরায় বুট করুন
  2. সাথে গ্যাজেট এফএস ড্রাইভার sertোকান modprobe gadgetfs
  3. এর সাথে ইউজারস্পেস ফাইল সিস্টেমটি মাউন্ট করুন mkdir /dev/gadget; mount -t gadgetfs none /dev/gadget/

আপনি যদি এই মুহুর্তে কোনও ত্রুটি না পান তবে আপনি নিজের কাস্টম ইউএসবি ডিভাইসগুলি প্রোগ্রাম করার জন্য এই জাতীয় গ্যাজেটফ গ্রন্থাগারগুলি ব্যবহার করতে সক্ষম হবেন ।


1
উত্তরের জন্য তোমাকে অনেক ধন্যবাদ! আমি উভয় উপায়ে চেষ্টা করব এবং যত তাড়াতাড়ি সম্ভব আপনাকে জানাব।

1
@ দেসপ্রোপসিতো আপনি কি কখনও এই কাজ পেয়েছেন? আমি একটি আপডেট পছন্দ করব
সাইরেন্স

@ সাইরেনস, আমি দুঃখিত, কিনে আমি এটি কাজ করতে পারিনি :( তবে আমি অন্য উপায়গুলি চেষ্টা করার সাথে সাথে আমি অন্য পদ্ধতির চেষ্টা করব

@ দেসপ্রোপসিতো আপনি ঠিক কী কাজ করতে পারবেন না তা বলতে পারেন? আপনি modprobeড্রাইভার সক্ষম ছিল ? আপনি মাউন্ট করতে পারেন gadgetfs? আপনি তৈরি এবং চালাতে পারেন hid_gadget_test?
দিমিত্রি গ্রিগরিয়েভ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.