• При регистрации замечена проблемма с электронной почтой gmail.com . Если письма не приходят - используйте другие почтовые сервисы. все вопросы можите оставлять в телеграм канале https://t.me/ConsoleFiXru

Настройка Windows для ds4-tools

ConsoleFiX

Администратор
Регистрация
7 Июн 2021
Сообщения
412
Реакции
31
custom-mapping.png
Данная инструкция охватывает процесс установки и настройки необходимых программ для использования пакета утилит под названием ds4-tools.

Установка Python​

Я сознательно призываю использовать не самую свежую версию программы, а старую 3.8, так как она является последней с поддержкой Windows 7 (системой, до сих пор актуальной среди ремонтников и прочих энтузиастов).
* Загрузите и запустите установщик Python 3.8
* Поставьте отметку на "Add Python 3.8 to PATH"
* Нажмите на кнопку "Install Now" и затем завершите установку
a31bb9c274b68ee015519.png
Настройки установщика Python 3.8

Использование Zadig​

* Подключите контроллер к ПК
* Загрузите и запустите Zadig v2.8
* Включите пункт "Options -> List All Devices"
2.png
Настройка программы Zadig
* В списке устройств выберите "Wireless Controller (Interface 0)"
* Выберите в правом поле "Driver" пункт "libusb-win32 (v1.2.7.3)
3.png
Окно программы Zadig
У меня на руках вторая ревизия контроллера, так что в вашем случае значение "USB ID" может отличаться. Для первой ревизии это "0x054c|0x05c4|00", для второй (как у меня) "0x054c|0x09cc|00". Также, возможно подойдёт и другой драйвер, но мне лень проверять. Конкретно с этим всё работает. Информация передана автору утилит.
* Нажмите на кнопку "Replace Driver" и подождите завершения процесса
* Программу можно закрыть, но не стоит удалять!

Использование Python​

* Скачайте архив с утилитами ds4-tools и распакуйте папку из него
* Откройте папку "ds4-tools-master" и измените в ней два файла:
* Откройте при помощи текстового редактора файл "ds4-calibration-tool.py" (№1)
* Найдите в конце файла и удалите эти пять строк:
if dev.is_kernel_driver_active(0):
dev.detach_kernel_driver(0)
except usb.core.USBError as e:
sys.exit('Could not detatch kernel driver: %s' % str(e))
* Закройте файл №1 с сохранением изменений
* Откройте при помощи текстового редактора файл "ds4-tool.py" (№2)
* Найдите в начале файла и удалите эти пять строк:
if self.__dev.is_kernel_driver_active(0):
self.__dev.detach_kernel_driver(0)
except usb.core.USBError as e:
sys.exit('Could not detatch kernel driver: %s' % str(e))
* Закройте файл №2 с сохранением изменений
Я обнаружил, что эти строки "роняют" утилиты на системах Windows. Информация передана автору и, в скором (скорее всего) времени, проблема будет устранена. Как узнать? Можно открыть список правок кода на странице утилит и посмотреть, что там есть. Правки точно нужны для единственной (на данный момент) версии, которую можно опознать по тексту "Commits on Apr 22, 2023 / First commit / 7cd2cf4".
Использование ds4-tools
Использование утилит не рассматривается в данной инструкции!
Восстановление DS4
Чтобы вернуть всё как было, а именно удалить принудительно установленный драйвер на звуковую подсистему контроллера, необходимо проделать следующее:
* Откройте "Диспетчер устройств"
* Найдите раздел "libusb-win32", а в нём устройство "Wireless Contoller"
4.png
Диспетчер устройств
* Нажмите по нему правой кнопкой мыши
* Выберите пункт меню "Удалить устройство"
* Поставьте метку "Удалить драйвер" и нажмите кнопку "Удалить"
Оригинал статьи от Yoti
-запускаем cmd от имени администратора вводим pip install -r requirements.txt
-подключаем джойстик, запускаем zadig 2.8 - options - list all devices
лично у меня v1 работает только с дровами libusb-win32, а v2 работает только с winusb, у вас может быть наоборот.
устанавливаем подходящий драйвер.
-в скрипте ds4-tool ставим # перед ненужными id и убираем перед нужным
-в cmd под админом пишем ds4-tool.py get-flash-mirror-status если возвращает 1, то следующая команда ds4-tool.py set-flash-mirror-status 0
-в cmd под админом пишем ds4-calibration-tool.py
выбираем 1. если всё верно, получаем приглашение на ввод s.
далее s>enter, s>enter, s>enter, w>enter - лично я делаю 3 раза, но возможно хватит и одного.
при желании откалибровать крайние значения и окружности нажимаем 2.
далее медленно крутим оба аналога по кругу, потом жмём enter
-по рекомендации автора меняем обратно flash mirror status на 1, для этого ds4-tool.py set-flash-mirror-status 1
можно проверить результат командой ds4-tool.py get-flash-mirror-status

ps я делаю через cmd, мне так удобнее. python3.8. :download: Скачать
 
Последнее редактирование:
Назад
Сверху