
GRIZZLY — проект на базе Raspberry Pi для энтузиастов, которые захотят самостоятельно собрать игровую консоль. Дизайн — собственное представление того, как должны выглядеть подобные гаджеты.
Ключевая особенность этого руководства — структура. Процесс сборки организован так, что полностью функциональная консоль работает уже на самом раннем этапе. Играть получится с первого дня, постепенно добавляя улучшения и новые компоненты по мере возможности.
Начать можно, скажем, с простого подключения Raspberry Pi к монитору и старой клавиатуре. Источник питания — зарядка от телефона. Это уже потом добавятся портативный экран, кнопки и подходящий аккумулятор. На каждом шаге — устройство остается работоспособным.
Проект распространяется совершенно бесплатно по лицензии Creative Commons BY-NC-SA 4.0.
Используйте навигацию, если не хотите читать весь текст

Необходимые материалы и компоненты

Перед покупкой чего либо настоятельно рекомендуется полностью прочитать руководство и посмотреть сопроводительное видео. Появится ясное представление о процессе сборки и возможных альтернативах.
Ниже приведен список компонентов, необходимых для сборки точной копии финальной версии консоли. К элементам перечня следует отнестись крайне внимательно. Дело в том, что 3D-печатный корпус и внутренняя рама рассчитаны именно на модели и размеры указанных комплектующих. Замена, скажем, экрана или модуля питания потребует корректировки и 3D-модели.
-
Модуль питания PiSugar 2 Pro.
-
Мягкие тактильные кнопки 8 мм — 10 штук.
-
Угловые тактильные кнопки — 4 штуки.
-
SD-карта подойдет любая из официального списка совместимости.
-
Макетная плата для прототипирования геймпада с кнопками пригодится и для будущих проектов.
-
Соединительные провода с разъемами «папа-мама». Иногда они поставляются в комплекте с макетной платой.
-
Разъем GPIO «мама» 40-pin (2x20) для преобразования PiSugar в плату расширения HAT, устанавливаемую сверху — 1 шт. Для минимизации пайки можно поискать беспаечные разъемы.
-
Металлический радиатор или любая другая система охлаждения для Raspberry Pi, совместимая с платами расширения HAT.

Selectel Tech Day — 8 октября
Разберем реальный опыт IT-команд, технический бэкстейдж и ML без спецэффектов. 15 стендов и интерактивных зон, доклады, мастер-классы, вечерняя программа и нетворкинг. Участие бесплатное: нужна только регистрация.
Шаг 1. Установка RetroPie на Raspberry Pi

-
Определяем модель Raspberry Pi.
-
Подключаем совместимую SD-карту к компьютеру.
-
Скачиваем и устанавливаем официальную утилиту Raspberry Pi Imager.
-
В Raspberry Pi Imager нажимаем Choose device и выбираем нужную модель Raspberry Pi.
-
Далее Choose OS, Emulation and game OS, а затем RetroPie.
-
Указываем версию RetroPie, соответствующую плате.
-
Нажимаем Choose storage и кликаем на SD-карту из списка для установки RetroPie.
-
Наконец, щелкаем Next — запустится запись RetroPie на SD-карту.
-
Теперь можно устанавливать игры. Подробные инструкции — в официальной документации RetroPie.
Есть детальное руководство по установке игр на RetroPie, а также официальная документация.
Шаг 2. Подключение к монитору и клавиатуре

-
С помощью кабеля HDMI подключаем плату к любому телевизору, монитору компьютера или дисплею, о котором говорилось выше.
-
Теперь очередь клавиатуры.
-
Запитываем Raspberry Pi от подходящего источника.
-
Включаем.
-
При первом запуске RetroPie предложит назначить все кнопки. Мы используем клавиатуру, при этом — важно! — не забываем записывать настройки. Информация о том, какая клавиша какую функцию задействует, еще пригодится.
Назначенные клавиши также будут использоваться для навигации по интерфейсу RetroPie. К примеру, D‑PAD — для перемещения по меню, а BUTTON A / EAST — для подтверждения.
Шаг 3. Добавление собственных кнопок

1 . Монтируем все тактильные кнопки на макетную плату, при этом один из контактов заземляем на минус платы.
2 . Другие, управляющие контакты кнопок соединяем проводами с любыми свободными GPIO‑пинами на Raspberry Pi. Также не забываем где‑то конспектировать созданные связи «кнопка — пин».
3 . Подключаемся к Wi-Fi, как описано в официальной документации: RetroPie > WIFI > Connect to WiFi network.
4 . Пришло время поработать в командной строке Raspberry Pi. Это можно сделать как локально, нажав F4 в RetroPie, либо удаленно по SSH, назначив статический IP‑адрес и выполнив:
ssh pi@<нужный IP>
5 . Понадобится утилита Adafruit-Retrogame, которая позволяет сопоставить GPIO-пины с виртуальной клавиатурой. В командной строке Raspberry Pi скачиваем и запускаем установочный скрипт:
curl https://raw.githubusercontent.com/adafruit/Raspberry-Pi-Installer-Scripts/master/retrogame.sh > retrogame.sh
sudo bash retrogame.sh
В какой‑то момент будет предложено выбрать конфигурацию. Выбрать можно любой вариант и дальше просто следовать инструкциям до самой перезагрузки.
6 . После перезапуска возвращаемся в командную строку. Надо отредактировать файл retrogame.cfg, чтобы сопоставить GPIO-пины с клавишами, которые были настроены на втором шаге:
sudo nano /boot/retrogame.cfg
Все возможные идентификаторы клавиш можно подсмотреть в файле keyTable.hв файле keyTable.h.
7 . Ctrl+X — сохраняем изменения, закрываем Nano.
8 . Перезагружаем консоль:
sudo reboot
Проверяем, что все работает как надо. Теперь у нас появилась возможность управлять интерфейсом, запускать игры и нажимать кнопки.
Шаг 4. Установка ИБП и аккумулятора

Прежде всего, необходимо убедиться в работоспособности PiSugar, подключив его к Raspberry Pi согласно инструкции. На этом этапе у нас уже будет беспроводная игровая консоль.
Теперь переделаем PiSugar из модуля с креплением под платой (HUB, Hardware Under Board) в вариант с креплением сверху (HAT, Hardware Attached on Top), чтобы он поместился в корпус. Рекомендуется выполнять это только тем, у кого есть опыт работы с электроникой.
Предупреждение
Модификация PiSugar аннулирует гарантию. Вся ответственность за любые повреждения компонентов — на вас. Продолжайте, только если готовы рискнуть модифицировать плату. Если нет, рассмотрите возможность поиска других ИБП и аккумуляторов.
Итак.
-
Аккуратно удаляем с платы PiSugar пого-пины — золотистые цилиндрические контакты. Вытягивайте ту сторону, которая не подпружинена, то есть жесткую. Возможно, потребуется слегка провернуть пин, чтобы он вышел.
-
Припаиваем 40‑пиновый (2x20) разъем GPIO «мама» на плату PiSugar. Чтобы PiSugar мог функционировать, хорошо пропаиваем контакты, где раньше были пого-пины. Не забывайте добавлять флюс — так все пройдет легче.
-
Подпаиваем провода к пинам GPIO, которые будут использоваться для кнопок. Мы занимались ими на на шаге 3.
-
Подключаем аккумулятор к PiSugar и устанавливаем тот на Raspberry Pi для проверки.
-
Не беспокойтесь, если провода покажутся прижатыми.
-
Включаем Raspberry Pi, отсоединив его от внешнего питания. Так мы убедимся, что он работает автономно.
Шаг 5. Проводка и сборка

-
Необходимо скачать STL‑файлы, но перед этим ознакомиться с лицензией Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International, которая требует указания авторства и разрешает только некоммерческое использование. Для адаптаций действуют те же условия. Есть дополнительная информация.
-
Печатаем на 3D‑принтере прототип PCB и шесть кронштейнов для аккумулятора из пластика PETG с высотой слоя 0,15 мм и заполнением 15%. Кронштейны следует печатать на боку с поддержками.
-
С помощью суперклея крепим кронштейны к основной детали.
-
Тактильные кнопки вставляем в раму: четыре угловые кнопки на «плечи» и «триггеры», и десять обычных на остальные места. Кнопки должны сидеть довольно плотно. Если это не так, придется перепечатать деталь, поэкспериментировав с толщиной слоя в слайсере.
-
Припаиваем минусовой контакт каждой кнопки последовательно, соединяя их все вместе.
-
Противоположный контакт кнопок припаивается к соответствующему GPIO-пину на разъеме PiSugar. Подключаться они должны к тем же пинам, которые выбрались на шаге 3.
-
Закрепляем Raspberry Pi на PCB, используя два винта со стороны пинов и две 10-мм стойки с другой стороны.
-
Подключаем PiSugar к Raspberry Pi и фиксируем на стойках двумя винтами. Обязательно сначала подсоединяем аккумулятор к PiSugar — вести для него провода места не будет.
-
Подключаем Raspberry Pi к дисплею. Экран требует питания по USB и передачи видео‑аудио сигналов по HDMI. Могут пригодиться печатные платы-переходники, которые идут в комплекте с дисплеем. Второй вариант получше — плоские ленточные кабели.
Шаг 6. Сборка корпуса

-
Снова скачиваем STL‑файлы и также не забываем о лицензии Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International, которая требует указания авторства и разрешает только некоммерческое использование. Те же условия для адаптаций и также дополнительная информация.
-
На 3D‑принтере печатаем переднюю и заднюю крышки из пластика PLA. Для наилучшего сочетания прочности и скорости рекомендуется расположить их под углом 45 градусов, вручную где надо расставив подпорки. Ничего не должно висеть в воздухе.
-
Печатаем все кнопки из PLA с высотой слоя не более 0,10 мм. Крестовину (d-pad) рекомендуется печатать на боку с подпорками.
-
Вставляем кнопки в крышку.
-
Помещаем внутрь собранные компоненты.
-
Заднюю крышку прикручиваем винтами M2.5. В идеале, должны подойти винты 16 мм для верхней части и 20 мм для нижней.
Готово! Все подробности принятых решений и процесс создания — на страничке «Как собрать портативную игровую консоль». Также есть видео на YouTube.
Автор: oneastok
