1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.

[VoodooPS2Controller] Клавиатура и тачпад ноутбуков в macOS 10.12

Тема в разделе 'Хакинтош', создана пользователем гык-sse2, 15 сен 2016.

?

Какие проблемы у вас есть?

  1. Не работают кнопки громкости

    26 голосов
    59.1%
  2. Отваливаются кнопки яркости и переключение рабочих столов

    13 голосов
    29.5%
  3. Нет префпанели

    24 голосов
    54.5%
  4. Другое

    11 голосов
    25.0%
  5. Caps Lock

    15 голосов
    34.1%
Можно выбрать сразу несколько вариантов.
  1. гык-sse2

    гык-sse2 Apple Life Dev Разработчик

    Симпатии:
    993
    Исходники (текущая версия): https://github.com/RehabMan/OS-X-Voodoo-PS2-Controller/pull/90
    Работает префпанель, трёхпальцевое перетягивание, закостылен Caps Lock, но иногда светодиод начинает работать наоборот.

    Show Spoiler

    Кто-то недавно писал в теме про 10.12, что клавиатура и тачпад на ноутах нормально не работают. Я пока не смог добиться существенных улучшений, но интересно, одни и те же у всех проблемы или разные.
    Вот что у меня:
    1. Не работают кнопки громкости.
    2. После сна или ещё когда-то перестают работать кнопки яркости и переключение рабочих столов (неважно, какое там сочетание клавиш назначено).
    3. Нет префпанели тачпада, а если поставить старую, то после каждой загрузки приходится заходить в настройки и выставлять галочки.
    4. (Это было и до 10.12) Нельзя сменить сочетание клавиш для яркости, т.к. оно не отображается в настройках сочетаний клавиш. А если подключить любую USB-клавиатуру, то оно там появляется. macOS как-то узнаёт, что эта клавиатура не может регулировать яркость? Но ведь регулирует же.
    5. Caps Lock имеет цикл из 4 состояний:
    маленькие буквы, светодиод не горит
    БОЛЬШИЕ БУКВЫ, СВЕТОДИОД ГОРИТ
    БОЛЬШИЕ БУКВЫ, СВЕТОДИОД НЕ ГОРИТ
    маленькие буквы, светодиод не горит (состояние такое же, как первое, но из него мы попадаем в первое, а не во второе)

    По 2 – вообще непонятно, чё за фигня. Кнопки-то нажимаются, судя по виртуальной клавиатуре, но не действуют. Ctrl-стрелки, например, начинают перемещать курсор на 1 слово.
    По 1 – HID Explorer показывает, что кнопка не нажимается, а в логах видно, что keyboardEvent с правильным ADB-кодом отправляется. В IOHIDFamily таблица defaultKeymapOfLength не изменилась.
    По 3 – я сменил класс драйвера тачпада на AppleMultitouchUSBDriver, и стала отображаться новая префпанель, и в ней:
    работают только переключатели "Имитация правой кнопки", "Касание для имитации правой кнопки", "Скорость перемещения", "Направление прокрутки: обычное". Регулятора скорости прокрутки и переключателя перетягивания нет вообще. Правый клик тоже приходится включать после каждой перезагрузки, а перетягивание работает, но после сна перестаёт.
     
    Последнее редактирование: 15 ноя 2016
    atim и ruslan.n.kipkeev нравится это.
     
  2. Andrey1970

    Andrey1970 iГуру

    Симпатии:
    3`188
    pihmusik нравится это.
  3. Andrey1970

    Andrey1970 iГуру

    Симпатии:
    3`188
    @гык-sse2, на счет Caps Lock не знал, вернее не обращал внимания, действительно косяк.
    Правда у меня нет светодиода, но симптомы такие же. чтобы переключить Caps Lock: надо дважды клавишу клацнуть.
     
  4. гык-sse2

    гык-sse2 Apple Life Dev Разработчик

    Симпатии:
    993
    А, ну так туда я не смотрел, у меня VoodooPS2Controller от RehabMan) что толку "тереть" про SmartTouchpad, если исходники закрытые?
     
  5. Andrey1970

    Andrey1970 iГуру

    Симпатии:
    3`188
    @гык-sse2, да на него наезжали по этому поводу, вроде открыл что-то, но наверное не все.
    Тут кто-то ссылку давал, что-то немого найти.
     
  6. Moorre

    Moorre iГуру

    Симпатии:
    4`293
    @Andrey1970, наезжали и не раз. Я сам лично спрашивал, когда откроет. Ответил, что как только найдет правильный job себе и когда вылижет код до состояния "отлично", так и откроет. По срокам, ориентировочно, до конца года.
    Типа, ему эти проекты нужны для устройства на работу как "резюме". А как устроится, уже не будет смысле держать закрытыми.
    А исходники и лежат открытыми, только им более 3 лет давность, там ничего интересного нет.
     
    Andrey1970 нравится это.
  7. jazz_club

    jazz_club iГуру

    Симпатии:
    495
    М.б. кто-то знает, куда эти "галочки" прописываются?
    Можно прописать при старте. ;)
     
  8. гык-sse2

    гык-sse2 Apple Life Dev Разработчик

    Симпатии:
    993
    Вот сюда прописываются.
    Снимок экрана 2016-09-15 в 23.00.15.
    Да, можно сделать, чтобы туда прописывалось значение из плиста (и даже, может быть, не позволять системе его менять), как временное решение.
     
    jazz_club нравится это.
  9. m-dudarev

    m-dudarev iГуру

    Симпатии:
    2`613
    Тоже стало интересно и буквально в прошлые выходные это решил.)
    https://www.applelife.ru/threads/el...ad-driver-mac-os-x.207992/page-14#post-608929
     
  10. jazz_club

    jazz_club iГуру

    Симпатии:
    495
    Как?
    Прописал скроллы и тапы (Clicking) в конфиг VoodooPS2Trackpad.kext. Tолку нет, скроллы работают, а 1FT и 2FT - только ручками, в ТрекПад из 10.11.6
    Снимок экрана 2016-09-17 в 4.04.13.
     
    Последнее редактирование: 17 сен 2016
  11. гык-sse2

    гык-sse2 Apple Life Dev Разработчик

    Симпатии:
    993
    Подождите пока, работаю над этим. Могу сделать 3 варианта:
    1) Настройки прописываются в плист
    2) Настройки прописываются из VoodooPS2SynapticsTrackpad.prefPane (фактически, это станет дубликатом эппловской OldTrackpadTab) и сохраняются VoodooPS2SynapticsConfigDaemon
    3) Настройки прописываются из современной эппловской панели Trackpad, но под неправильными именами. Например, "Увеличение или уменьшение масштаба" будет включать перетягивание, а "Смарт-масштабирование" – перетягивание с фиксацией. Но так не получится регулировать скорость прокрутки.
    3а) То же, что и 3, но в Localizable.strings дать жестам соответствующие имена (и кто-нибудь может сделать анимацию, но этим я заниматься не буду) и потом заменять Localizable.strings после обновлений

    Я тут возился, пытался разобраться, почему не отображается в системной панели настройка "Перетягивание тремя пальцами", а всё оказалось банально – это в предыдущих версиях OS X жест был отключаемый, и была такая галочка, а теперь он тупо всегда включен.

    Пишите, какого варианта больше хотите)
     
    Последнее редактирование: 17 сен 2016
  12. m-dudarev

    m-dudarev iГуру

    Симпатии:
    2`613
    Если это не про Voodoo, то начиная с 10.11, Apple перенесла настройку этого жеста сюда.
    Снимок экрана 2016-09-18 в 00.12.09.
    Если он заработал сразу после обновления системы, то вероятнее всего систему обновляли поверх существующей, а не устанавливали с чистого листа.
     
    гык-sse2 нравится это.
  13. jazz_club

    jazz_club iГуру

    Симпатии:
    495
    VoodooPS2Trackpad.kext

    Нчальные настройки (Минимум - миниморум) для SynTP (VoodooPS2Controller.kext / VoodooPS2Trackpad.kext):
    - чувствительность трекпада (нажатия);
    - указание 1F (вкл. и установка скорости перемещения);
    - прокрутка 2F (вкл. и установка скорости прокрутки / вкл. верт. и гор.);
    - 1FT (левая кн.);
    - 2FT (правая кн.).

    Upd. ApplePS2SmartTouchPad.kext с "старыми" (~ до 2010г.) SynTP не работает, а VoodooPS2Trackpad.kext работает с любыми SynTP. Voodoo - предпочтительней.
    Например, в #1 из подписи (SynTP ~2012г.) с ApplePS2SmartTouchPad.kext работает отлично, но в #2 из подписи (SynTP ~2007г.) - только как 2кн. мышь.
     
    Последнее редактирование: 18 сен 2016
    Moorre нравится это.
  14. гык-sse2

    гык-sse2 Apple Life Dev Разработчик

    Симпатии:
    993
    Все перечисленные варианты относятся к VoodooPS2Trackpad.
     
    jazz_club нравится это.
  15. jazz_club

    jazz_club iГуру

    Симпатии:
    495
    :D:D:)
     
  16. гык-sse2

    гык-sse2 Apple Life Dev Разработчик

    Симпатии:
    993
    Тест! (Только Synaptics)
    Это тестовая версия VoodooPS2Controller, управляемая новой панелью Apple.
    Что работает:
    Настраивается в панели Трекпад:
    • Имитация правой кнопки (щелчок или касание двумя пальцами, щелчок в правом нижнем углу, щелчок в левом нижнем углу)
    • Касание для имитации нажатия мыши
    • Скорость перемещения
    • Направление прокрутки
    Настраивается в Универсальном доступе:
    • Скорость двойного нажатия
    • Прокрутка (с инерцией, без инерции) // включает как вертикальную, так и горизонтальную прокрутку
    • Скорость прокрутки
    • Включить перетягивание (без фиксации, с фиксацией, перетягивание тремя пальцами)

    Жирным шрифтом выделены новые жесты, которых раньше не было в VoodooPS2Controller.
    Известные недостатки:
    • перетягивание тремя пальцами всегда включено, независимо от настроек – ща исправлю исправлено
    • если начато перетягивание тремя пальцами, то, оторвав пальцы от трекпада, продолжить его можно только одним пальцем, а не тремя
    • OS X считает, что таппинг и перетягивание одним пальцем – несовместимые жесты, поэтому включение таппинга выключает перетягивание одним пальцем (а вот если включить сначала тап, а потом перетягивание, то они работают вместе)
    • некоторые настройки слетают после перезагрузки (снимаются галочки) – не протестировано (сегодня тестировал на версии с багом, поэтому результаты недостоверны)
    • некоторые настройки полуслетают после перезагрузки (галочки стоят, а драйвер об этом не знает, пока не переткнёшь заново) – см. пред. пункт
    • много отладочного вывода в логе – пока не обращайте внимания, это тестовая версия

    Сейчас сделаю ещё версию с настройкой через плист.

    Можно использовать только VoodooPS2Trackpad из этого архива совместно с последним VoodooPS2Controller от RehabMan.

    (Файл удалён, т.к. устарел)
     
    Последнее редактирование: 1 окт 2016
    slice, jazz_club, Moorre и 2 другим нравится это.
  17. гык-sse2

    гык-sse2 Apple Life Dev Разработчик

    Симпатии:
    993
    (Только Synaptics)
    Этот вариант теоретически должен настраиваться через плист и игнорировать то, что задано в префпанели:
    {"_TrackpadCornerSecondaryClick", &rightclick_corner}, // THIS
    {"_Dragging", &dragging}, // THIS
    {"_TrackpadRightClick", &rtap}, // THIS GUI
    {"_Clicking", &clicking}, // THIS GUI
    {"_DragLock", &draglock}, // THIS
    {"_TrackpadHorizScroll", &hscroll}, // THIS
    {"_TrackpadScroll", &scroll}, // THIS
    {"OutsidezoneNoAction When Typing", &outzone_wt},
    {"_TrackpadHandResting", &palm},
    {"PalmNoAction When Typing", &palm_wt},
    {"_USBMouseStopsTrackpad", &usb_mouse_stops_trackpad}, // THIS
    {"_TrackpadMomentumScroll", &momentumscroll}, // THIS
    Вот это можно прописывать в плист внутрь Platform Profile/Default.
    Теоретически – потому что я его не тестировал.

    (Файл удалён, т.к. не нужен)
     
    Последнее редактирование: 1 окт 2016
    jazz_club и Moorre нравится это.
  18. jazz_club

    jazz_club iГуру

    Симпатии:
    495
    @гык-sse2
    Thx! Потестим :D

    Upd.Версия системы: macOS 10.12 (16A320)
    На #2 Тычпад такой:
    Upd 2. Вер. 1: Появилось "обучающее кино", тапы - вкл./выкл., прокрутка 2п - верт. и гор. , вкл./выкл. направления работает :D Остальное не работает, но мне и не надо ;)
    Однако, после ребута тапы нужно опять включать. :(
    Днём Вер. 2 посмотрю.
     
    Последнее редактирование: 19 сен 2016
    Moorre нравится это.
  19. jazz_club

    jazz_club iГуру

    Симпатии:
    495
    Пытался овладеть вер.2, но так и не понял, как включить тапы.:(
     
  20. гык-sse2

    гык-sse2 Apple Life Dev Разработчик

    Симпатии:
    993
    Должно быть
    <key>_Clicking</key>
    <true/>
    <key>_TrackpadRightClick</key>
    <true/>
    Но вообще я уже, кажется, понял, что надо сделать, чтобы настройки сохранялись между перезагрузками, осталось отладить. Очень мешает новый тормозной log в macOS Sierra. Несколько минут приходится ждать, чтобы тупо посмотреть, что кекст писал в лог, да и потом ещё и по времени отделять текущую загрузку от предыдущих -- очень неудобно.
    Show Spoiler

    Для тех, кому интересно: система хранит настройки на самом деле здесь:
    Снимок экрана 2016-09-19 в 23.52.36.
    А то, что в самом AppleUSBMultitouchDriver находится -- это сам Synaptics драйвер выставляет в качестве отладочной информации, система с этим никак не взаимодействует. Типа можно посмотреть, какие сейчас выставлены настройки.
    При изменении настроек в префпанели настройки попадают в метод setParamPropertiesGated, который применяет их и переносит в свои свойства в иореге. При загрузке этого не происходит, поэтому их надо взять из IOHIDFamily, что я и добавил в код. (я проверил, что в IOHIDFamily действительно находятся правильные настройки, выставленные до перезагрузки).
    Пока не работает, постараюсь в течение этой недели отладить.


    Лол, в чём дело, почему Option+минус стало писать "ф"?)))
     
    Последнее редактирование: 19 сен 2016
    jazz_club нравится это.

Поделиться этой страницей