جدول المحتويات:

استخدم لوحة مفاتيح Palm Infrared مع أجهزة Android: 5 خطوات
استخدم لوحة مفاتيح Palm Infrared مع أجهزة Android: 5 خطوات

فيديو: استخدم لوحة مفاتيح Palm Infrared مع أجهزة Android: 5 خطوات

فيديو: استخدم لوحة مفاتيح Palm Infrared مع أجهزة Android: 5 خطوات
فيديو: كيف تعرف ان هاتفك يدعم IR | تحويل الهاتف الى ريموت كنترول للتحكم بجميع الاجهزة 2024, يوليو
Anonim
استخدم لوحة مفاتيح Palm Infrared مع أجهزة Android
استخدم لوحة مفاتيح Palm Infrared مع أجهزة Android
استخدم لوحة مفاتيح Palm Infrared مع أجهزة Android
استخدم لوحة مفاتيح Palm Infrared مع أجهزة Android
استخدم لوحة مفاتيح Palm Infrared مع أجهزة Android
استخدم لوحة مفاتيح Palm Infrared مع أجهزة Android

كان لدي لوحة مفاتيح PalmOne اللاسلكية جالسة وأردت الحصول على لوحة مفاتيح Bluetooth لهاتفي. كانت المشكلة الوحيدة هي أن لوحة مفاتيح PalmOne كانت تعتمد على الأشعة تحت الحمراء.

كان لدي أيضًا جهاز Brainlink. هذا جهاز صغير لطيف إلى حد ما للتوسط بين الأجهزة المختلفة. يحتوي على معالج atxmega16 وبطارية قابلة لإعادة الشحن وبعض المستشعرات وراديو Bluetooth ومجموعة من المنافذ وحالة وبعض البرامج الثابتة القابلة للترقية للتحكم في كل شيء. تم إيقاف Brainlink ولكن SurplusShed يمتلكها مقابل 39 دولارًا ، ولديهم خصم دوري بنسبة 30-50 ٪ على كل شيء. حصلت عليه مقابل 20 دولارًا. يمكنك أيضًا استخدام لوحة atxmega plus Bluetooth الخاصة بك (المخططات هنا) ، ولكن قد لا تكون تكاليفك أقل.

على أي حال ، بعد تحديد مكان خط الإشارة على لوحة المفاتيح ، وإجراء ترقية للبرنامج الثابت لـ Brainlink وكتابة برنامج تشغيل Android للوحة المفاتيح ، فإنه يعمل بشكل جيد. نظرًا لأن معظم العمل كان تحقيقًا وبرمجيات ، والآن بعد أن تم ذلك ، أصبح مشروعًا سهلًا جدًا لأي شخص لديه Brainlink. انت تحتاج:

  • لوحة مفاتيح PalmOne اللاسلكية
  • برينلينك
  • حبل ذو 3 أو 8 سنون لوصلة Brainlink (موصل بنمط JST بطول 1.25 مم) ؛ يمكنك استخدام الحبل ذي 8 سنون المتضمن في Brainlink ولكنك سترغب في طلب المزيد لمشاريع أخرى
  • اللحيم والحديد
  • شريط كهربائي
  • اختياري: قفل وحلقة وصل

في الماضي ، استخدمت Brainlink للاتصال بسماعة رأس Mindflex EEG وبجهاز Roomba. إنه رائع حقًا لمهام التوصيل التسلسلي إلى البلوتوث. أقوم فقط بصنع موصلات مختلفة لأجهزة مختلفة ، ويمكنني نقل Brainlink بينها.

الخطوة 1: الخلفية

خلفية
خلفية
خلفية
خلفية
خلفية
خلفية

لا تتردد في تخطي وصف الخلفية هذا.

ترسل لوحة مفاتيح PalmOne اللاسلكية بياناتها من خلال IR LED على ساق ، باستخدام IrDA. بينما يمكن للمرء استخدام كاشف الأشعة تحت الحمراء لفك تشفير البيانات ، إلا أن هناك طريقة أسهل. إذا قمت بطي لوحة المفاتيح نصفًا ، فستظهر ثلاثة أشرطة نحاسية. الوسط هو الأرض والجزء السفلي هو خط الإرسال. يؤدي وضعها في راسم الذبذبات إلى التحقق من أن الإشارة الموجودة على خط الإرسال مشفرة في حوالي 9600 (بشكل أكثر دقة: 9760) 8 N 2 ، مع المستوى العالي حوالي 1.56 فولت ، ومع تشكيل نبض irDA: 1 مرتفع ، ونبضات موجبة يستغرق 3/16 من الوقت.

لسوء الحظ ، كل هذا يعني أنه لا يمكننا فقط توصيل هذا بوحدة Bluetooth بسيطة (على الأقل ليس بدون إنشاء برامج ثابتة مخصصة لها) ، كما فعلت في مشروع Mindflex الخاص بي. لحسن الحظ ، يحتوي atxmega في Brainlink على وضع irDA لـ UART. من السهل إضافة القليل من التعليمات البرمجية إلى برنامج Brainlink الثابت مما يسمح لكود "J1" بتبديله إلى وضع IrDA. كنت أتوقع أن يكون المستوى العالي 1.56 فولت غير كافٍ لـ atxmega ، لكنني فوجئت بسرور عندما قمت بتوصيل الشرائط النحاسية بـ GND و UART Receive على Brainlink وشاهدت النتائج في Realterm: كنت أحصل على تسلسلات رائعة من ستة بايت من لوحة المفاتيح.

اتضح أن التسلسل المكون من ستة بايت هو عبارة عن تغليف فقط لكود مسح ضوئي واحد بايت (مع إصدار علامة بت عالية). على وجه التحديد ، التسلسل هو FF C0 xx yy zz C1 ، حيث xx هو رمز المسح ، yy هو xx xor'ed مع FF ، و zz هو xx xor'ed بـ 67. (في الواقع ، يتم إرسال رمز المسح ثلاث مرات: مرة واحدة واضحة وترميز مرتين. أعتقد أن هذا يرجع إلى أن irDA عرضة للفساد ، وبالتالي يمكنك استخدام فك تشفير الأغلبية للحصول على البايت.) بعد ذلك ، كانت صعوبة الأجهزة الوحيدة هي العثور على مكان لحام موصل على لوحة المفاتيح. ولم يكن ذلك صعبًا.

على جانب البرنامج ، على الرغم من أنه ربما يمكنني تبديل وحدة RN-42 Bluetooth في Brainlink إلى وضع HID ، فإن ذلك كان له إمكانات كبيرة ، لأنه إذا لم تتحول الوحدة مرة أخرى إلى SPP ، فلن أتمكن من التحدث إليها Brainlink عبر بروتوكول Bluetooth الخاص به.

كان الشيء الأسهل فعله هو استخدام تطبيق BluezIME للوحة المفاتيح مفتوح المصدر الذي يسمح للعديد من لوحات الألعاب التي تعمل بتقنية Bluetooth بالعمل كوحدات تحكم Android وإضافة وضع لتسلسلات لوحة المفاتيح اللاسلكية Palm One ذات الستة بايت. التطبيق الناتج هو لوحة مفاتيح P1 المجانية في Google Play الآن (كود المصدر على جيثب).

الخطوة 2: ترقية برنامج Brainklink الثابت

ترقية برنامج Brainklink الثابت
ترقية برنامج Brainklink الثابت
ترقية برنامج Brainklink الثابت
ترقية برنامج Brainklink الثابت

لتمكين دعم البيانات التسلسلية بتنسيق IrDA على Brainlink ، تحتاج إلى تحميل البرنامج الثابت المخصص الخاص بي. إنه سهل مع جهاز Android وبرنامج تحميل البرامج الثابتة الذي كتبته (بالمناسبة ، يمكنك تعديل برنامج التحميل ليكون أداة تحميل فلاش atmega / atxmega AVR109 للأغراض العامة).

  1. قم بإقران Brainlink (رقم التعريف الشخصي 1234) بجهاز Android - سيتعين عليك القيام بذلك على أي حال لتوصيل لوحة المفاتيح
  2. قم بتنزيل Brainlink Firmware Uploader من Google Play (مصدر للتحميل والبرامج الثابتة على جيثب).
  3. قم بإيقاف تشغيل Brainlink وقم بتوصيل الدبابيس 8 و 2 (الغريب أن الدبوس 8 هو الدبوس الموجود في أقصى اليسار ، والدبوس 1 على اليمين) على المنفذ ذي الثمانية سنون.
  4. مع الاستمرار في توصيل المسامير ، قم بتشغيل Brainlink. يجب أن يتحول مؤشر LED الخاص به إلى اللون الأزرق.
  5. حدد البرامج الثابتة المخصصة التي تريدها (إذا كان لديك Roomba ، فإن أحد البرامج الثابتة يعمل بشكل أفضل مع Roombas الأحدث والآخر مع البرامج الأقدم) ، ثم اضغط على "تحميل".
  6. يجب أن يكون الأمر كذلك ، على الرغم من أنك إذا كنت تواجه صعوبات في الاتصال ، فقد تحتاج إلى المحاولة أكثر من مرة.

أصبح Brainlink الخاص بك الآن أكثر ذكاءً: فهو لا يدعم قراءة البيانات من بعض أجهزة IrDA فقط (بمجرد تحديد موقع إشارة غير معدلة) ، ولكنه يعمل أيضًا كوصلة قياسية من Roomba-to-Bluetooth ، ويمكنه التقاط البيانات من سماعة رأس Mindflex EEG. والبرامج الثابتة متوافقة مع الإصدارات السابقة.

الخطوة 3: توصيل Brainlink بلوحة المفاتيح

ربط Brainlink بلوحة المفاتيح
ربط Brainlink بلوحة المفاتيح
ربط Brainlink بلوحة المفاتيح
ربط Brainlink بلوحة المفاتيح
ربط Brainlink بلوحة المفاتيح
ربط Brainlink بلوحة المفاتيح

ستحتاج إلى موصل ربط يناسب المسامير الثلاثة الموجودة في أقصى اليسار على منفذ Brainlink ذي الثمانية سنون. هذه موصلات من نمط JST بمسافة دبابيس 1.25 مم. يمكنك استخدام موصل ثلاثي السنون (اختياري) أو موصل ذو 8 سنون. يمكنك استخدام الموصل ذي 8 سنون الذي يأتي مع Brainlink ، ولكن بعد ذلك سترغب في طلب المزيد منها (وجدت موصلات 3 و 8 سنون رخيصة على موقع ئي باي).

افتح حجرة بطارية لوحة المفاتيح وقم بإزالة البطاريات. بالقرب من الجانب الناقص للبطاريات ، ستجد زوجين من الأسلاك موصولين معًا عبر موصل من طراز JST. إذا كانت ألوانك تشبه ألواني ، فإن الأسلاك السوداء مطحونة (يمكنك فقط التحقق من المقاومة بين ذلك والطرف الناقص على البطارية) والألوان الأخرى (البني والرمادي) هي الإشارة.

على منفذ Brainlink ذو 8 سنون ، يكون الاتصال الموجود في أقصى اليسار أرضيًا (أقصى يسار منفذ ذي 8 أسنان) والدبوس الثالث من اليسار هو استقبال تسلسلي. قم بتوصيل السلك الأرضي في موصل Brainlink الخاص بك بالخط الأرضي على لوحة المفاتيح ، وسلك الاستقبال الموجود على Brainlink بخط الإشارة ، وقد تجد أنه لا توجد مساحة في منطقة لوحة المفاتيح لاتصال اللحام وموصل نمط JST كان ذلك داخل لوحة المفاتيح. إذا كان الأمر كذلك ، فما عليك سوى إزالة الموصل من نمط JST ، ولحام كلا من الأسلاك الثلاثة ذات الصلة (سلكان أرضيان للوحة المفاتيح وسلك أرضي من Brainlink ؛ سلكان لإشارة لوحة المفاتيح وسلك استقبال Brainlink واحد).

من المغري فصل جانب IR LED للموصل على غرار JST لتوفير عمر البطارية. لا تفعل ذلك. تنهار الإشارة إذا قمت بذلك. راجعت مع الذبذبات الخاصة بي.

اصنع ثقبًا على حافة غطاء البطارية حتى تمر أسلاك حبل Brainlink من خلاله ، واستخدم شريطًا كهربائيًا للحفاظ على الوصلتين معزولين ، واربط عقدة صغيرة لتخفيف التوتر.

أخيرًا ، عند الانتهاء من كل شيء ، إما أن تقوم بالتستر على جهات الاتصال غير ذات الصلة على حبل Brainlink أو قم فقط بقطع الأسلاك غير ذات الصلة.

قد ترغب أيضًا في لصق بعض الفيلكرو على Brainlink ولوحة المفاتيح للحفاظ على Brainlink في مكانه.

الخطوة 4: الاستخدام مع جهاز Android

باستخدام مع جهاز Android
باستخدام مع جهاز Android
  1. قم بإقران Brainlink بجهاز Android الخاص بك (رقم التعريف الشخصي 1234).
  2. قم بتثبيت تطبيق P1 Keyboard الخاص بي.
  3. قم بتشغيل إعدادات لوحة المفاتيح P1 (يجب أن يكون رمزها في المشغل الخاص بك).
  4. قم بتمكين لوحة مفاتيح P1 في إعدادات أسلوب الإدخال في Android. في إصدارات Android الأحدث ، يمكنك تمكين لوحة مفاتيح P1 عن طريق اختيار "تحديد IME" في إعدادات لوحة مفاتيح P1 ، والنقر على "إعداد طرق الإدخال". (ستتلقى تحذيرًا من أن لوحة المفاتيح ترى جميع كلمات المرور الخاصة بك ، وما إلى ذلك. هذا تحذير قياسي لنظام Android: بالطبع ، يرى برنامج تشغيل لوحة المفاتيح كل ما تكتبه. إذا كنت خائفًا ، انظر إلى الكود المصدري للوحة المفاتيح وقم ببناء بنفسك.)
  5. اضغط على "تحديد الجهاز" واختر Brainlink الخاص بك (يظهر لي كـ RN42-A308).
  6. اضغط على "تحديد IME" في إعدادات لوحة المفاتيح P1 وحدد لوحة مفاتيح P1.
  7. قد يستغرق الاتصال بعض الوقت ، ولكن يجب أن تتلقى رسالة حول الاتصال إذا سارت الأمور على ما يرام

وانت انتهيت! لا تتردد في التبرع لمؤلف BluezIME التي تستند إليها لوحة مفاتيح P1.

في Android 4.0+ ، عندما يكون هناك إشعار في الحقول النصية يسمح بتبديل طرق الإدخال ، بحيث يمكنك بسهولة الرجوع إلى طريقة إدخال أخرى.

برنامج التشغيل الذي كتبته للوحة المفاتيح بسيط للغاية. يدعم المفاتيح العادية ، لكنه لا يدعم العديد من المفاتيح المميزة أو الأشياء الخاصة الأخرى ، لقد أضفت دعمًا لاستخدام الزرين مع المنزل (FN-1 والمفتاح الموجود على يسار المساحة) كمنزل ، باستخدام مفتاح Windows و FN-2 كـ Menu و FN-3 كبحث. أيضًا ، يعمل ctrl-a و c و v و x كما هو متوقع.

إنه يعمل جيدًا بما يكفي لأنني كتبت المسودة الأولى الكاملة لهذا Instructable على هاتفي Galaxy S2 باستخدام لوحة المفاتيح.

الخطوة 5: لوحات المفاتيح الأخرى

لوحات مفاتيح أخرى
لوحات مفاتيح أخرى
لوحات مفاتيح أخرى
لوحات مفاتيح أخرى

إذا كنت ترغب في تجربة لوحات مفاتيح أخرى تعمل بالأشعة تحت الحمراء ، فسيتعين عليك معرفة الإشارات التي يرسلونها ومعدل الباود. مع تحديث Brainlink للبرنامج المتوافق مع IrDA ، يمكنك الاتصال بـ RealTerm إلى Brainlink. عندما ترى إشارة "BL" المتكررة التي تمثل توقيع Brainlink ، اكتب:

* J1Z

تطلب النجمة الانتباه ، ويتحول J1 إلى 9600 باود IrDA (فقط يجب أن تكتب 1 بسرعة بعد J أو تحصل على خطأ). Z مخصص لوضع الجسر التسلسلي إلى Bluetooth.

قم بتبديل RealTerm لعرض الرموز السداسية ، واضغط على المفاتيح الموجودة على لوحة المفاتيح ومعرفة ما إذا كان يمكنك فهمها.

للخروج من وضع الجسر التسلسلي ، قم بتشغيل Brainlink.

أظن أن 9600 باود هو معدل الباود الصحيح. إذا تعذر ذلك ، يمكنك تغيير معدل البث بالباود في Brainlink. سأبدأ بتجربة 57600 باود:

* J1u57Z

ثم 1200 باود:

* J1u12Z

بمجرد معرفة كيفية إرسال لوحة المفاتيح لبياناتها ، ما عليك سوى تعديل رمز برنامج التشغيل الخاص بي. ربما يكفي مجرد تغيير الأرقام في PalmOneWirelessKeyboard.java.

موصى به: