Π‘Π»ΠΎΠΌΠ°Π½Π½Ρ‹ΠΉ Π½ΠΎΡƒΡ‚Π±ΡƒΠΊ с Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ Ρ‚Π°Ρ‡ΠΏΠ°Π΄ΠΎΠΌ ΠΈΠ»ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ устройство Π²Π²ΠΎΠ΄Π° β€” ΠΎΠ±Π΅ эти ситуации Π²Π΅Π΄ΡƒΡ‚ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ вопросу: ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΡΠ΅Π½ΡΠΎΡ€Π½ΡƒΡŽ панСль ΠΎΡ‚ лэптопа ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ Ρ‡Π΅Ρ€Π΅Π· USB-ΠΏΠΎΡ€Ρ‚? ΠžΡ‚Π²Π΅Ρ‚ ΡƒΡ‚Π²Π΅Ρ€Π΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ, Π½ΠΎ процСсс Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ тСхничСских Π½Π°Π²Ρ‹ΠΊΠΎΠ², Π½ΠΎ ΠΈ понимания ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½Ρ‹Ρ… устройств. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ разбСрёмся, ΠΊΠ°ΠΊΠΈΠ΅ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Ρ‹ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ инструмСнты понадобятся, ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ простая ΠΏΠ°ΠΉΠΊΠ° ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² ΠΊ Ρ€Π°Π·ΡŠΡ‘ΠΌΡƒ USB Type-A ΠΏΠΎΡ‡Ρ‚ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

Основная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Ρ‹ Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ спСциализированныС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ связи (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, PS/2 ΠΈΠ»ΠΈ I2C), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ нСсовмСстимы с стандартным USB HID-интСрфСйсом. Однако с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² Π²Ρ€ΠΎΠ΄Π΅ Arduino ΠΈΠ»ΠΈ STM32, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, USB-I2C мостов) ΠΌΠΎΠΆΠ½ΠΎ "пСрСвСсти" сигналы сСнсора Π² понятный для ПК Ρ„ΠΎΡ€ΠΌΠ°Ρ‚. Π“ΠΎΡ‚ΠΎΠ²Ρ‹ Π»ΠΈ Π²Ρ‹ ΠΏΠΎΠ³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΡΡ Π² ΠΌΠΈΡ€ паяльников, ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΎΠΊ ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ²? Π’ΠΎΠ³Π΄Π° Π½Π°Ρ‡Π½Ρ‘ΠΌ с самого Π²Π°ΠΆΠ½ΠΎΠ³ΠΎ β€” ΠΎΡ†Π΅Π½ΠΊΠΈ рСалистичности вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

КакиС Ρ‚Π°Ρ‡ΠΏΠ°Π΄Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊ USB, Π° ΠΊΠ°ΠΊΠΈΠ΅ β€” Π½Π΅Ρ‚

НС ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚Π°Ρ‡ΠΏΠ°Π΄ поддаётся "Ρ€Π΅Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ" Π² качСствС USB-устройства. Π’ΠΎΡ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ Ρ„Π°ΠΊΡ‚ΠΎΡ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΡΡ‚ΡŒ прСдприятия:

  • πŸ”§ Π’ΠΈΠΏ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ матСринской ΠΏΠ»Π°Ρ‚Π΅. Π’Π°Ρ‡ΠΏΠ°Π΄Ρ‹ с интСрфСйсом PS/2 (4-6 ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ²) ΠΏΡ€ΠΎΡ‰Π΅ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Π΅ΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈ с I2C ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρƒ Apple ΠΈΠ»ΠΈ Dell Latitude).
  • πŸ“± НаличиС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. Если Π²Ρ‹ Π½Π°ΠΉΠ΄Ρ‘Ρ‚Π΅ Π΄Π°Ρ‚Π°ΡˆΠΈΡ‚ Π½Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Synaptics TM3000 ΠΈΠ»ΠΈ ELAN Tech), ΡˆΠ°Π½ΡΡ‹ Π½Π° успСх возрастут Π² Ρ€Π°Π·Ρ‹.
  • πŸ’» Π‘ΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°ΠΌΠΈ. НСкоторыС сСнсоры Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ слоТной ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сигналов, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ справится Arduino Uno, Π½ΠΎ справится STM32F4.
  • πŸ”Œ ЀизичСскоС состояниС. Если Ρ‚Π°Ρ‡ΠΏΠ°Π΄ мСханичСски ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Ρ‘Π½ (Ρ‚Ρ€Π΅Ρ‰ΠΈΠ½Ρ‹, отслоСниС сСнсорного слоя), Π΅Π³ΠΎ восстановлСниС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π΄ΠΎΡ€ΠΎΠΆΠ΅, Ρ‡Π΅ΠΌ ΠΏΠΎΠΊΡƒΠΏΠΊΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ USB-Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π°.

Π‘Π°ΠΌΡ‹Π΅ "Π΄Ρ€ΡƒΠΆΠ΅Π»ΡŽΠ±Π½Ρ‹Π΅" ΠΊ ΠΏΠ΅Ρ€Π΅Π΄Π΅Π»ΠΊΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ β€” Ρ‚Π°Ρ‡ΠΏΠ°Π΄Ρ‹ ΠΎΡ‚ Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠΎΠ² Lenovo ThinkPad (сСрии T4xx, X2xx), Acer Aspire ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… HP ProBook. Π˜Ρ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ часто ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ Π²Ρ€ΠΎΠ΄Π΅ libusbp ΠΈΠ»ΠΈ HID-Project. А Π²ΠΎΡ‚ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Ρ‹ ΠΎΡ‚ MacBook (особСнно с Force Touch) практичСски Π½Π΅Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π±Π΅Π· Π³Π»ΡƒΠ±ΠΎΠΊΠΈΡ… Π·Π½Π°Π½ΠΈΠΉ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’Π°Ρ‡ΠΏΠ°Π΄Ρ‹ с ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ClickPad ΠΎΡ‚ Synaptics) ΠΌΠΎΠ³ΡƒΡ‚ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ настройки эмуляции Π½Π°ΠΆΠ°Ρ‚ΠΈΠΉ Π² ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅. Π‘Π΅Π· этого ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Π΄Π°ΠΆΠ΅ Ссли сСнсорная ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ отзываСтся Π½Π° касания.
МодСль Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ° Π’ΠΈΠΏ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π° Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹ΠΉ Π°Π΄Π°ΠΏΡ‚Π΅Ρ€
Lenovo ThinkPad T480 Synaptics TM3000 PS/2 Низкая USB-PS/2 Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ Π½Π° ATmega32U4
Acer Aspire E15 ELAN 1200 I2C БрСдняя STM32 + Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ELAN-I2C-HID
HP Pavilion 15 Synaptics ClickPad PS/2 + GPIO Высокая Arduino Leonardo + кастомизированная ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°
Dell XPS 13 (2018) ALPS U1 I2C + ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹ΠΉ ΠžΡ‡Π΅Π½ΡŒ высокая ESP32 с Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°

НСобходимыС инструмСнты ΠΈ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ΡƒΡŽΡ‰ΠΈΠ΅

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ‚Π°Ρ‡ΠΏΠ°Π΄ Π² USB-устройство, Π²Π°ΠΌ понадобится Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ паяльник, Π½ΠΎ ΠΈ спСциализированноС ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅. Π’ΠΎΡ‚ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€:

  • πŸ”₯ Паяльная станция с Ρ‚ΠΎΠ½ΠΊΠΈΠΌ ΠΆΠ°Π»ΠΎΠΌ (для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с SMD-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ). ΠœΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ β€” Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 40 Π’Ρ‚.
  • πŸ” Π›ΡƒΠΏΠ° ΠΈΠ»ΠΈ микроскоп (ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π° часто ΠΈΠΌΠ΅ΡŽΡ‚ шаг ΠΌΠ΅Π½Π΅Π΅ 1 ΠΌΠΌ).
  • πŸ“Ά ΠœΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ†Π΅ΠΏΠ΅ΠΉ ΠΈ напряТСний.
  • πŸ–₯️ ΠœΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€: Arduino Leonardo (для простых ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²) ΠΈΠ»ΠΈ STM32F103 (для слоТных ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ²).
  • πŸ”Œ АдаптСры ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π½ΠΈΠΊΠΈ:
    • USB-UART (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, CP2102) для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ.
    • I2C-USB мост (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, FT232H) для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ.
  • πŸ› οΈ Расходники: ΠΏΡ€ΠΈΠΏΠΎΠΉ Sn63Pb37, Ρ„Π»ΡŽΡ RMA-223, тСрмоусадочная Ρ‚Ρ€ΡƒΠ±ΠΊΠ°, ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° AWG 30.

Если Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠ»Π°Ρ‚Ρ‹ Π²Ρ€ΠΎΠ΄Π΅ Teensy (ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ HID "ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ") ΠΈΠ»ΠΈ Raspberry Pi Pico (гибкая ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° Π½Π° MicroPython). Для Ρ‚Π°Ρ‡ΠΏΠ°Π΄ΠΎΠ² с I2C ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ логичСский Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Saleae Logic), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π°ΠΌΠΈ Apple (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΡ‚ MacBook Pro 2015-2017) Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΈΡ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ (Broadcom BCM5976) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Π‘Π΅Π· рСвСрс-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡ€ΠΈΠ½Π³Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
πŸ“Š Какой ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°?
  • Arduino (Leonardo/Micro)
  • STM32 (любая модСль)
  • ESP32
  • Raspberry Pi Pico
  • Π”Ρ€ΡƒΠ³ΠΎΠΉ/НС знаю

Π¨Π°Π³ 1: Π˜Π·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π° ΠΈΠ· Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ°

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Ρ‚Π°Ρ‡ΠΏΠ°Π΄ ΠΊ USB, Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΈΠ· корпуса Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ°. Π­Ρ‚ΠΎΡ‚ процСсс Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ остороТности: сСнсорная панСль соСдинСна с матСринской ΠΏΠ»Π°Ρ‚ΠΎΠΉ Ρ‚ΠΎΠ½ΠΊΠΈΠΌ ΡˆΠ»Π΅ΠΉΡ„ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ΡŒ.

ΠžΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π½ΠΎΡƒΡ‚Π±ΡƒΠΊ ΠΎΡ‚ сСти ΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠΈΡ‚Π΅ аккумулятор|

Π‘Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ€ΡƒΠΉΡ‚Π΅ располоТСниС ΡˆΠ»Π΅ΠΉΡ„ΠΎΠ² ΠΈ Π²ΠΈΠ½Ρ‚ΠΎΠ²|

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ пластиковый ΠΌΠ΅Π΄ΠΈΠ°Ρ‚ΠΎΡ€ для Ρ€Π°Π·ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π·Π°Ρ‰Ρ‘Π»ΠΎΠΊ|

Π₯Ρ€Π°Π½ΠΈΡ‚Π΅ Π²ΠΈΠ½Ρ‚Ρ‹ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ… (ΠΎΠ½ΠΈ часто Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Π΄Π»ΠΈΠ½Π΅)-->

Алгоритм дСйствий:

  1. Π‘Π½ΠΈΠΌΠΈΡ‚Π΅ заднюю ΠΊΡ€Ρ‹ΡˆΠΊΡƒ Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ°, ΠΎΡ‚ΠΊΡ€ΡƒΡ‚ΠΈΠ² всС Π²ΠΈΠ½Ρ‚Ρ‹. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… модСлях (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, MacBook Air) ΠΊΡ€Ρ‹ΡˆΠΊΠ° ΠΏΡ€ΠΈΠΊΠ»Π΅Π΅Π½Π° β€” потрСбуСтся Ρ„Π΅Π½ для размягчСния клСя.
  2. ΠžΡ‚ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅ ΡˆΠ»Π΅ΠΉΡ„ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π° ΠΎΡ‚ матСринской ΠΏΠ»Π°Ρ‚Ρ‹. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ½ фиксируСтся Π·Π°Ρ‰Ρ‘Π»ΠΊΠΎΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎ ΠΏΡ€ΠΈΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ плоской ΠΎΡ‚Π²Ρ‘Ρ€Ρ‚ΠΊΠΎΠΉ.
  3. ΠžΡ‚ΠΊΡ€ΡƒΡ‚ΠΈΡ‚Π΅ Π²ΠΈΠ½Ρ‚Ρ‹, крСпящиС Ρ‚Π°Ρ‡ΠΏΠ°Π΄ ΠΊ корпусу. Π‘ΡƒΠ΄ΡŒΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹: Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²ΠΈΠ½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ скрыты ΠΏΠΎΠ΄ Π½Π°ΠΊΠ»Π΅ΠΉΠΊΠ°ΠΌΠΈ ΠΈΠ»ΠΈ Ρ€Π΅Π·ΠΈΠ½ΠΎΠ²Ρ‹ΠΌΠΈ Π½ΠΎΠΆΠΊΠ°ΠΌΠΈ.
  4. Π˜Π·Π²Π»Π΅ΠΊΠΈΡ‚Π΅ Ρ‚Π°Ρ‡ΠΏΠ°Π΄ вмСстС с мСталличСской Ρ€Π°ΠΌΠΊΠΎΠΉ (Ссли ΠΎΠ½Π° Π΅ΡΡ‚ΡŒ). НС тянитС Π·Π° ΡˆΠ»Π΅ΠΉΡ„ β€” это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹!

Если Ρ‚Π°Ρ‡ΠΏΠ°Π΄ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ Π² Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ корпуса (ΠΊΠ°ΠΊ Π² Dell XPS 13), придётся Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π½ΠΎΡƒΡ‚Π±ΡƒΠΊ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях цСлСсообразно ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ, стоит Π»ΠΈ ΠΈΠ³Ρ€Π° свСч: Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡ€ΠΎΡ‰Π΅ ΠΊΡƒΠΏΠΈΡ‚ΡŒ Π±/Ρƒ Ρ‚Π°Ρ‡ΠΏΠ°Π΄ Π½Π° AliExpress ΠΈΠ»ΠΈ eBay ΡƒΠΆΠ΅ Π² Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли ΡˆΠ»Π΅ΠΉΡ„ порвался?

Если ΡˆΠ»Π΅ΠΉΡ„ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π° ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Ρ‘Π½, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ двумя способами:

1. Пайка Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² ΠΊ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌ ΡˆΠ»Π΅ΠΉΡ„Π° (Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΡŽΠ²Π΅Π»ΠΈΡ€Π½ΠΎΠΉ точности).

2. Π—Π°ΠΌΠ΅Π½Π° ΡˆΠ»Π΅ΠΉΡ„Π° Π½Π° Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ ΠΎΡ‚ донорского Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ° (Π½ΠΎΠΌΠ΅Ρ€ Π΄Π΅Ρ‚Π°Π»ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΡƒΠΊΠ°Π·Π°Π½ Π½Π° самом ΡˆΠ»Π΅ΠΉΡ„Π΅).

Π’ ΠΎΠ±ΠΎΠΈΡ… случаях рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ» ΠΈΠ»ΠΈ проводящий ΠΊΠ»Π΅ΠΉ для укрСплСния соСдинСний.

Π¨Π°Π³ 2: Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°

Π‘Π°ΠΌΡ‹ΠΉ отвСтствСнный этап β€” ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ ΡˆΠ»Π΅ΠΉΡ„Π° Π·Π° Ρ‡Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚. Π‘Π΅Π· этой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ USB Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Π’ΠΎΡ‚ ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ:

1. Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ осмотр. На ΡˆΠ»Π΅ΠΉΡ„Π΅ ΠΈΠ»ΠΈ ΠΏΠ»Π°Ρ‚Π΅ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π° часто Π΅ΡΡ‚ΡŒ ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ²: GND, VCC, SCL, SDA (для I2C) ΠΈΠ»ΠΈ CLK, DATA (для PS/2). Если ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π½Π΅Ρ‚, придётся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€.

2. ΠŸΡ€ΠΎΠ·Π²ΠΎΠ½ΠΊΠ°. Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€ Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΄ΠΈΠΎΠ΄ΠΎΠ² ΠΈ Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ GND ΠΈ VCC (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ это ΠΊΡ€Π°ΠΉΠ½ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹). НапряТСниС питания Ρ‚Π°Ρ‡ΠΏΠ°Π΄ΠΎΠ² β€” 3.3V ΠΈΠ»ΠΈ 5V.

3. Анализ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. Для I2C-Ρ‚Π°Ρ‡ΠΏΠ°Π΄ΠΎΠ² ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ логичСский Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ ΠΊ линиям SCL/SDA ΠΈ Π·Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈ касании. Для PS/2 ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ осциллограф ΠΈΠ»ΠΈ Arduino Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ SoftwareSerial.

ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ Π²Π°ΠΆΠ½ΠΎ: Ссли Ρ‚Π°Ρ‡ΠΏΠ°Π΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» (ΠΊΠ°ΠΊ Π² MacBook ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ASUS ROG), Π±Π΅Π· Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ для ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΎΠ±Ρ€Π΅Ρ‡Ρ‘Π½ Π½Π° ΠΏΡ€ΠΎΠ²Π°Π». Π’ Ρ‚Π°ΠΊΠΈΡ… случаях СдинствСнный Π²Ρ‹Ρ…ΠΎΠ΄ β€” поиск энтузиастов, ΡƒΠΆΠ΅ Ρ€Π΅ΡˆΠΈΠ²ΡˆΠΈΡ… эту Π·Π°Π΄Π°Ρ‡Ρƒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ°Ρ… EEVblog ΠΈΠ»ΠΈ XDA Developers).

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ для Π°Π½Π°Π»ΠΈΠ·Π° ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° для дСкодирования
PS/2 Arduino + Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° PS2Mouse
#include 

PS2Mouse mouse(6, 5); // CLK, DATA

void setup() { mouse.begin(); }

I2C ЛогичСский Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ + PulseView
Wire.begin();

byte data[4];

Wire.requestFrom(0x15, 4); // АдрСс ELAN

while(Wire.available()) {

for(int i=0; i<4; i++) data[i] = Wire.read();

}

Π¨Π°Π³ 3: Π’Ρ‹Π±ΠΎΡ€ схСмы ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°

Когда ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ способ прСобразования сигналов Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π° Π² USB HID. Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Ρ‚Ρ€ΠΈ:

  • πŸ”Œ Π“ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ Π°Π΄Π°ΠΏΡ‚Π΅Ρ€. НапримСр, ΠΏΠ»Π°Ρ‚Ρ‹ USB-PS/2 Π½Π° Π±Π°Π·Π΅ CH340G ΠΈΠ»ΠΈ FT232RL. ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для PS/2-Ρ‚Π°Ρ‡ΠΏΠ°Π΄ΠΎΠ².
  • πŸ“± ΠœΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ с ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ. Arduino Leonardo ΠΈΠ»ΠΈ Teensy ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ USB-ΠΌΡ‹ΡˆΡŒ, Ссли Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π² Π½ΠΈΡ… ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄.
  • πŸ’» ΠŸΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ². Для I2C ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹Ρ… интСрфСйсов понадобится STM32 с кастомизированной ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ.

Рассмотрим самый ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ β€” ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ Arduino Leonardo для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с PS/2-Ρ‚Π°Ρ‡ΠΏΠ°Π΄ΠΎΠΌ:

  1. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π° ΠΊ Arduino:
    • DATA β†’ Pin 5
    • CLK β†’ Pin 6
    • VCC β†’ 5V
    • GND β†’ GND
  • УстановитС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ PS2Mouse Ρ‡Π΅Ρ€Π΅Π· Arduino IDE.
  • Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ скСтч для эмуляции USB-ΠΌΡ‹ΡˆΠΈ:
    #include 
    

    #include

    PS2Mouse mouse(6, 5);

    void setup() {

    mouse.begin();

    Mouse.begin();

    }

    void loop() {

    if (mouse.available()) {

    PS2Data data = mouse.read();

    Mouse.move(data.x, -data.y); // Π˜Π½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ Y-ось

    }

    }

  • Для I2C-Ρ‚Π°Ρ‡ΠΏΠ°Π΄ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ELAN) процСсс слоТнСС: потрСбуСтся ΠΏΠ°Ρ€ΡΠΈΡ‚ΡŒ сырыС Π΄Π°Π½Π½Ρ‹Π΅ с сСнсора ΠΈ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π² ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ HID. Π“ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π΅ΡΡ‚ΡŒ Π½Π° GitHub (ΠΏΠΎΠΈΡ‰ΠΈΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π²Ρ€ΠΎΠ΄Π΅ ELAN-Touchpad-USB).

    πŸ’‘

    Если Ρ‚Π°Ρ‡ΠΏΠ°Π΄ Π½Π΅ Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π° касания послС ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΏΠΎΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ CLK/DATA. Иногда сигналы Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ транзисторов ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, digitalWrite(CLK, !digitalRead(CLK))).

    Π¨Π°Π³ 4: Π‘Π±ΠΎΡ€ΠΊΠ° схСмы ΠΈ тСстированиС

    Когда ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Π°, остаётся ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ схСму ΠΈ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ устройство. Π’ΠΎΡ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹:

    • πŸ”₯ Пайка. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚ΠΎΠ½ΠΊΠΈΠΉ ΠΏΡ€ΠΈΠΏΠΎΠΉ ΠΈ Ρ„Π»ΡŽΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π·Π°ΠΌΠΊΠ½ΡƒΡ‚ΡŒ сосСдниС ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹. Для надёТности зафиксируйтС ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° горячим ΠΊΠ»Π΅Π΅ΠΌ.
    • πŸ›‘οΈ Π˜Π·ΠΎΠ»ΡΡ†ΠΈΡ. ΠžΠ±ΠΌΠΎΡ‚Π°ΠΉΡ‚Π΅ ΠΎΠ³ΠΎΠ»Ρ‘Π½Π½Ρ‹Π΅ участки тСрмоусадочной Ρ‚Ρ€ΡƒΠ±ΠΊΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ·ΠΎΠ»Π΅Π½Ρ‚ΠΎΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… Π·Π°ΠΌΡ‹ΠΊΠ°Π½ΠΈΠΉ.
    • πŸ’‘ ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅. Если Ρ‚Π°Ρ‡ΠΏΠ°Π΄ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ 3.3V, Π° Π²Ρ‹ ΠΏΠΎΠ΄Π°Π»ΠΈ 5V, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ³ΠΎΡ€Π΅Ρ‚ΡŒ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ стабилизатор напряТСния (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, AMS1117).
    • πŸ–₯️ ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ ПК. Π’ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Arduino Π² USB-ΠΏΠΎΡ€Ρ‚. Если Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ Π½Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ»ΠΈΡΡŒ автоматичСски, скачайтС ΠΈΡ… с сайта Arduino.

    Для тСстирования ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅:

    • Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρƒ MouseTester (ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ raw-Π΄Π°Π½Π½Ρ‹Π΅ с USB-устройств).
    • Heidi Debugger (для ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° HID-сообщСний).
    • Paint ΠΈΠ»ΠΈ любой графичСский Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ (Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΠ»Π°Π²Π½ΠΎΡΡ‚ΡŒ двиТСния курсора).

    Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π½Π° этом этапС:

    • πŸ”„ ΠšΡƒΡ€ΡΠΎΡ€ двиТСтся Ρ€Ρ‹Π²ΠΊΠ°ΠΌΠΈ β†’ ΡƒΠ²Π΅Π»ΠΈΡ‡ΡŒΡ‚Π΅ частоту опроса Π² ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ сглаТиваниС.
    • ❌ Π’Π°Ρ‡ΠΏΠ°Π΄ Π½Π΅ распознаётся β†’ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ VID/PID Π² ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅ (Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ стандарту HID).
    • πŸ”‹ Устройство ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· нСсколько сСкунд β†’ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² ΠΏΠΈΡ‚Π°Π½ΠΈΠΈ (Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ кондСнсатор 100nF ΠΌΠ΅ΠΆΠ΄Ρƒ VCC ΠΈ GND).
    πŸ’‘

    Если Ρ‚Π°Ρ‡ΠΏΠ°Π΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Π½ΠΎ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π΅ Π½Π°ΠΆΠΈΠΌΠ°ΡŽΡ‚ΡΡ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π»ΠΈ ваша ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° ΡΠΌΡƒΠ»ΡΡ†ΠΈΡŽ ΠΊΠ»ΠΈΠΊΠΎΠ². Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ для этого Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события mouse.buttons() ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Mouse.press()/Mouse.release().

    Настройка Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² ΠΈ кастомизация

    Π”Π°ΠΆΠ΅ Ссли Ρ‚Π°Ρ‡ΠΏΠ°Π΄ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ опрСдСлился ΠΊΠ°ΠΊ USB-устройство, Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ. Π’ΠΎΡ‚ ΠΊΠ°ΠΊ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎΠ΄ Windows ΠΈ Linux:

    Для Windows:

    1. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ДиспСтчСр устройств ΠΈ Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ вашС устройство Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠœΡ‹ΡˆΠΈ ΠΈ ΠΈΠ½Ρ‹Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ устройства.
    2. Если Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π½Π΅ установился, ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ Π΅Π³ΠΎ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, ΡƒΠΊΠ°Π·Π°Π² ΠΏΠ°ΠΏΠΊΡƒ с inf-Ρ„Π°ΠΉΠ»ΠΎΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, mouhid.inf для стандартных HID-устройств).
    3. Для Ρ‚ΠΎΠ½ΠΊΠΎΠΉ настройки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Synaptics Control Panel ΠΈΠ»ΠΈ ELAN Smart-Pad (Ссли ΠΎΠ½ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π²Π°ΡˆΡƒ модСль).

    Для Linux:

    1. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, распознаётся Π»ΠΈ устройство ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
      lsusb | grep -i mouse
    2. НастройтС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ сСнсора Ρ‡Π΅Ρ€Π΅Π· xinput:
      xinput list  # НайдитС ID вашСго устройства
      

      xinput set-prop [ID] "libinput Tapping Enabled" 1

    3. Для кастомизации ТСстов установитС libinput-gestures ΠΈΠ»ΠΈ touchegg.

    Если Ρ‚Π°Ρ‡ΠΏΠ°Π΄ опрСдСляСтся ΠΊΠ°ΠΊ "нСизвСстноС устройство", ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅:

    • πŸ”„ ΠŸΠ΅Ρ€Π΅ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ VID/PID (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 0x046D:0xC52B для эмуляции Logitech).
    • πŸ“₯ Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Zadig для Π·Π°ΠΌΠ΅Π½Ρ‹ стандартного USB-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Π½Π° libusb.
    • πŸ”§ ΠžΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ descriptor Π² ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ устройство ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π»ΠΎΡΡŒ ΠΊΠ°ΠΊ HID-compliant mouse.
    Как Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡ‚Π°Ρ‡Π°?

    Для эмуляции ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡ‚Π°Ρ‡Π° (ТСсты, скролл двумя ΠΏΠ°Π»ΡŒΡ†Π°ΠΌΠΈ) стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Mouse.h нСдостаточно. Π’Π°ΠΌ понадобится:

    1. ΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰Π°Ρ HID Multi-Touch Protocol (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, USBHIDTouchScreen для Teensy).

    2. ΠŸΠ°Ρ€ΡΠΈΠ½Π³ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‚ΠΎΡ‡ΠΊΠ°Ρ… касания (для I2C-Ρ‚Π°Ρ‡ΠΏΠ°Π΄ΠΎΠ² это ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π±Π°ΠΉΡ‚Ρ‹ с адрСсов 0x02-0x0A).

    3. Настройка report descriptor Π² ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ОБ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π»Π° ТСсты.

    Π“ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π΅ΡΡ‚ΡŒ для Ρ‚Π°Ρ‡ΠΏΠ°Π΄ΠΎΠ² Synaptics (Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° SynapticsPS2) ΠΈ ELAN (ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ELAN-Touchpad Π½Π° GitHub).

    FAQ: ЧастыС вопросы ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ

    МоТно Π»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ‚Π°Ρ‡ΠΏΠ°Π΄ ΠΎΡ‚ MacBook ΠΊ USB?

    Π’Π°Ρ‡ΠΏΠ°Π΄Ρ‹ Apple (особСнно с Force Touch) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ ΠΈ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅. На сСгодняшний дСнь Π½Π΅Ρ‚ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎ доступных Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ для ΠΈΡ… ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ USB. Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ β€” старыС ΠΌΠΎΠ΄Π΅Π»ΠΈ (MacBook Pro 2012-2015), Π½ΠΎ ΠΈ Ρ‚Π°ΠΌ потрСбуСтся рСвСрс-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡ€ΠΈΠ½Π³ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°.

    ΠŸΠΎΡ‡Π΅ΠΌΡƒ курсор двиТСтся Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΡƒΡŽ сторону?

    Π­Ρ‚ΠΎ типичная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с инвСрсиСй осСй. Π’ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅ Arduino ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π·Π½Π°ΠΊ ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ:

    Mouse.move(-data.x, data.y); // Π˜Π½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ X-ось

    Для I2C-Ρ‚Π°Ρ‡ΠΏΠ°Π΄ΠΎΠ² ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ порядок Π±Π°ΠΉΡ‚ΠΎΠ² Π² сырых Π΄Π°Π½Π½Ρ‹Ρ… (ΠΈΠ½ΠΎΠ³Π΄Π° X ΠΈ Y ΠΏΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°Π½Ρ‹ мСстами).

    НуТно Π»ΠΈ ΠΏΠ°ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π±Π΅Π· ΠΏΠ°ΠΉΠΊΠΈ?

    ВСорСтичСски ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΡƒΠΆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, pomona clips) ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° с Π·Π°ΠΆΠΈΠΌΠ°ΠΌΠΈ "ΠΊΡ€ΠΎΠΊΠΎΠ΄ΠΈΠ»", Π½ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Π½Π°Π΄Ρ‘ΠΆΠ½Ρ‹ΠΌ. Пайка β€” СдинствСнный способ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚, особСнно Ссли Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°Ρ‡ΠΏΠ°Π΄ рСгулярно.

    Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚Π°Ρ‡ΠΏΠ°Π΄ Ρ€Π°Π±ΠΎΡ‚Π°Π» ΠΊΠ°ΠΊ Π² Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ΅ (с ТСстами)?

    Для ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ТСстов (скролл, свайпы, Π·ΡƒΠΌ) Π½ΡƒΠΆΠ½ΠΎ:

    1. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ HID Multi-Touch (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Teensy 3.2+).
    2. ΠΠ°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ парсинг Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠ°Π»ΡŒΡ†Π°Ρ… (для Synaptics это Π±Π°ΠΉΡ‚Ρ‹ Finger1-XY, Finger2-XY ΠΈ Ρ‚.Π΄.).
    3. Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ТСстов Π² ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, свайп Π²Π²Π΅Ρ€Ρ… = PAGE_UP).
    4. Π’ Windows ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Synaptics Gesture Suite, Π² Linux β€” touchegg.

    Π“ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π΅ΡΡ‚ΡŒ для Ρ‚Π°Ρ‡ΠΏΠ°Π΄ΠΎΠ² Lenovo ΠΈ Acer.

    Π“Π΄Π΅ ΠΊΡƒΠΏΠΈΡ‚ΡŒ ΡˆΠ»Π΅ΠΉΡ„ ΠΈΠ»ΠΈ Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ для Ρ‚Π°Ρ‡ΠΏΠ°Π΄Π°?

    Π¨Π»Π΅ΠΉΡ„Ρ‹ ΠΈ Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ:

    • На AliExpress (поиск ΠΏΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ° + "touchpad cable").
    • На eBay (Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ ΠΏΠΎ "used/lot" для донорских Π΄Π΅Ρ‚Π°Π»Π΅ΠΉ).
    • Π’ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ… элСктронных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, LCSC для SMD-Π΄Π΅Ρ‚Π°Π»Π΅ΠΉ).
    • На Ρ„ΠΎΡ€ΡƒΠΌΠ°Ρ… ΠΏΠΎ Ρ€Π΅ΠΌΠΎΠ½Ρ‚Ρƒ Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, NotebookReview ΠΈΠ»ΠΈ BadCaps).

    Π¦Π΅Π½Ρ‹ Π²Π°Ρ€ΡŒΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΎΡ‚ $5 Π·Π° ΡˆΠ»Π΅ΠΉΡ„ Π΄ΠΎ $50 Π·Π° спСциализированныС Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, USB-I2C мосты).