Авторизация
Регистрация

Напомнить пароль

Bluetooth-адаптер для Dendy

В этой статье я расскажу о способе подключения современных геймпадов к классическим игровым приставкам Famicom, Dendy и прочим фамиклонам при помощи самодельного адаптера, выполненного на основе наработок opensource-проекта BlueRetro, а также покажу готовую реализацию в виде bluetooth-адаптера для подключения в 15-контактный порт приставки.  

Люблю я, знаете ли, иногда поиграть в старую добрую Dendy, да только вот проблема — геймпады к ней (которые в дальнейшем по тексту я буду называть джойстиками, мне так привычнее ещё с детства) обычно маленькие и неудобные, и зачастую имеют низкое качество изготовления, пользоваться ими после их аналогов для современных игровых консолей та ещё мука. Я давненько посматривал на кучу проектов по ретро-тематике, где к старым игровым устройствам и компьютерам подключают что-то современное и размышлял, почему же нет проекта, который позволил бы подключить современные геймпады с USB-разъёмом к ретро-технике.  И вот, однажды я наткнулся на видео в YouTube, где вскользь упоминался проект BlueRetro, целью которого является подключение Bluetooth-джойстиков к огромному количеству всяческих старинных игровых консолей и компьютеров, включая NES и Famicom, а это именно то, что мне и нужно, лично мне проводное USB-подключение было бы удобнее, но Bluetooth тоже очень неплохо, тем более заявлена поддержка джойстиков Sony PS4 и XBox Series, а таковые у меня имеются.

Ниже приведу краткое описание проекта от ИИ Google: 

BlueRetro — это универсальный проект с открытым исходным кодом (на базе чипа ESP32), представляющий собой беспроводной Bluetooth-адаптер для подключения современных геймпадов к классическим ретро-консолям и компьютерам.
Официальную информацию и документацию можно найти на сайте BlueRetro, а исходный код и схемы — в репозитории GitHub — darthcloud/BlueRetro. 

Основные характеристики:

  • Совместимость с контроллерами: Поддерживаются геймпады от PS3, PS4, PS5, Xbox One, Xbox Series X|S, Nintendo Switch (Pro Controller / Joy-Con), Wii и любые стандартные Bluetooth HID устройства.
  • Поддерживаемые консоли: Существуют версии для Sega Mega Drive, Sega Saturn, PlayStation 1/2, Nintendo 64, GameCube, Dreamcast и других классических систем.
  • Низкая задержка: Время отклика беспроводного соединения составляет менее 6 миллисекунд (особенно для контроллеров PS4/PS5).
  • Многопользовательский режим: Один адаптер часто позволяет подключать сразу несколько беспроводных геймпадов (до 4 игроков на совместимых системах).
  • Настройка и обновление: Конфигурация кнопок, макросов и обновление прошивки (OTA) выполняются через веб-интерфейс в браузере Google Chrome с поддержкой Web Bluetooth API.

 

Чтож, сказано-сделано, начинаю изучать проект. Нам потребуется всего ничего: ESP32 (я использовал ESP32-WROOM-32 как и рекомендовал автор проекта), двунаправленный преобразователь сигналов 5 > 3,3 Вольт, межплатная гребёнка чтоб модуль с ESP32 не паять и он оставался съёмным (гнездо PBS-1x20 в моём случае), монтажная плата, немного проводов и кабель от джойстика Dendy.

Всё, что нам потребуется для сборки (ну, почти...)

А ну да, ещё какой-нибудь более-менее приличный пластмассовый корпус под всё это дело. 

Схема сборки адаптера реально очень простая, с минимумом пайки, приведу её ниже:

Так как все входы и выходы преобразователя уровней идентичны и равноценны, то можно использовать любые из них, какие будет удобно при разводке платы или монтаже на монтажную плату, главное соблюдать парность «вход-выход» каждого из сигналов, также можно использовать любой другой двунаправленный преобразователь уровней. Я взял тот, что уже был у меня в наличии. Чтобы не мучить глаза, рассматривая картинку выше, напишу прохождение сигналов текстом, может так кому-то будет даже удобнее:

8 пин дж. (D0, он же DATA) > пр. уровня > IO19 на ESP32
9 пин дж. (CUP, он же CLOCK) < пр. уровня < IO5 на ESP32
12 пин дж. (OUT0, он же LATCH) < пр. уровня < IO32 на ESP32

 

Прежде всего, нужно прошить модуль ESP32 прошивкой BlueRetro. Для этого нужно подключить ESP32 к USB-порту компьютера, и, если потребуется, установить драйвер виртуального COM-порта в зависимости от чипа UART, который будет установлен на вашем модуле ESP32. Если при установке драйвера что-то идёт не так, то вот хорошая статья на сайте Espressif, правда она на английском языке. 

Итак, возвращаемся к непосредственно прошивке ESP32. Скачиваем с GitHub проекта архив с файлами прошивки, распаковываем его. Сам процесс прошивки производится при помощи программы Flash Download Tool с сайта Espressif. По ссылке нужно скачать архивный файл и распаковать его куда-нибудь в папочку, перейти в неё, а затем найти и запустить файл flash_download_tool_x.y.z.exe

В открывшемся окошке выбрать ESP32 и нажать ОК

Далее нужно выбрать пути к файлам для прошивки (тем, которые мы скачали с GitHub) и указать адреса программных модулей как на картинке. Возможно, потребуется указать COM-порт ESP32 если он не определится программой автоматически.

Настройки Download Tool, будьте внимательны!

Затем, нажимаем кнопку Start и ждём завершения процесса прошивки. На этом с программной частью (почти) всё.

Я не упомянул ранее, однако всё же стоило бы пояснить, что, поскольку ESP32 оперирует логическими уровнями сигналов с размахом 3.3 Вольта, а джойстики приставки работают с логическими уровнями размахом 5 Вольт, напрямую выводы ESP-шки подключать к приставке нельзя, нужно преобразовать сигналы в нужный диапазон напряжений, для этого нам и потребуется двунаправленный преобразователь уровней. Я решил установить его на монтажной плате и там же сделать разводку сигналов, поскольку вытравливать плату под такую простую схему было уж очень лениво. Получилось в итоге как-то так:

Вид монтажной платы

Пришла пора собрать этот «бутерброд» воедино и припаять провод от геймпада

Бутерброд из 2-х плат

Однако, в процессе установки плат в корпус выяснилось, что в корпус 69x42 и высотой 23 мм монтажная плата размером 60х40 мм влезать отказывается, вот ведь удивительно, да? Тут я в прямом смысле доработал напильником, получилось так:

Доработал напильником

Теперь всё влезло и даже закрылось крышкой, на которой чудом сами по себе появилиcь отверстия над светодиодом D2 и кнопкой BOOT:

Окончательный вид

По сути на этом всё, можно идти тестить, всё должно работать корректно и со стандартными настройками, но хотелось бы ещё поковырять маленько и глянуть, то эта штука умеет. А умеет она немало.

Чтобы начать процесс тонкой настройки, потребуется Bluetooth-адаптер в вашем компьютере. Если он установлен, то переходим на сайт BlueRetro, нажимаем на ссылку BlueRetro Advance config, запитываем ESP32 от USB-порта и жмём кнопку Connect BlueRetro. Через некоторое время на экране появится запрос на подключение, где необходимо нажать кнопку «Подключить»:

Подключение адаптера для его настройки

После подключения вы увидите множество настроек:

Тонкая настройка адаптера BlueRetro

Да там одних только режимов Turbo 50 штук! Так что Wiki проекта вам в помощь разобраться, что же там творится...

Ну, теперь точно вроде бы всё, пора и поиграть в Dendy без проводов и на удобных джойстиках. Но и это еще не всё.

Игровой сетап

Нужно провести сопряжение геймпада и адаптера. Вставляем 15-контактный штекер в гнездо геймпада Dendy и включаем игру. Первоначально, когда контроллер не подключен, светодиод на ESP-шке будет мигать, это означает, что она находится в режиме сопряжения. Для подключения джойстика от PS4/5 в это время нужно одновременно зажать кнопки  Share и PS и дождаться прекращения мерцания светодиода, на джойстике от XBOX Series — включить его кнопкой XBOX, а затем нажать кнопку синхронизации с торца контроллера и дождаться окончания мерцания светодиода. При необходимости, режим сопряжения на адаптере можно включить, нажав и удерживая 3 секунды кнопку BOOT на модуле ESP32, именно для этого я заранее проделал в крышке корпуса отверстие для неё.

Дальше покажу видео проверки двух джойстиков от PS4 и XBOX Series, оба оригинальные. Как будет работать с поддельными — не знаю, таковыми не располагаю, как нет у меня и каких-либо других Bluetooth-контроллеров, чтобы проверить с ними работу адаптера. Список поддерживаемых джойстиков находится на Wiki проекта.

Видео с проверкой джойстиков на Dendy

Это же видео на Rutube находится по этой ссылке.

 

Это же видео на Rutube находится по этой ссылке.

На этом вроде всё, если что забыл рассказать — спрашивайте, постараюсь ответить.

Добавить в избранное
+16 +19
свернутьразвернуть
Комментарии (5)
RSS
+
avatar
0
  • fv86
  • 30 сентября 2026, 13:58
Интересный проект, а не встречалось похожего — для подключения USB-геймпада в качестве USB/PS/2 мыши/клавиатуры?
+
avatar
0
  • evilslon
  • 30 сентября 2026, 14:11
Неа, не видел такого, с USB-подключением геймпадов, насколько я понял, вообще всё сложно, единого стандарта, как такового, почти нет, у меня даже с android-боксом USB-шные пады работают чёрте как, какие-то нормально, какие-то криво, некоторые совсем не подключаются.
+
avatar
0
  • Skylab
  • 30 сентября 2026, 14:11
Обзор хороший. Плюс однозначно. Маленькая рекомендация — снимите с фотографий спойлеры. Так будет «читабельнее».
+
avatar
0
  • evilslon
  • 30 сентября 2026, 14:13
Мне показалось так текст будет «чище», в любом случае, при просмотре с компьютера можете щёлкнуть по любому спойлеру с зажатой клавишей Alt и все остальные спойлеры откроются автоматически.
+
avatar
0
  • DVANru
  • 30 сентября 2026, 14:35
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.