На глаза мне попался удивительный девайс, который был создан энтузиастами на платформе маленькой, но очень интересной платы LicheеRV, позволяющий то, что могут только сервера — это управлять удаленно многими устройствами, в данном случае компьютерами. И не только управлять, но и при необходимости перезагружать принудительно или выключать. Манна небесная за вменяемые деньги, чему я несказанно обрадовался. Есть несколько итераций этого девайса. Вставляемый в PCI Express компьютера, в виде маленького куба, или в виде совсем маленькой платы, которую можно спрятать внутрь какого нибудь корпуса, если с местом совсем беда. Устройства кроме последнего имеют полный набор всего необходимого для того, чтобы полноценно управлять удаленным рабочим местом включая подключение к пинам принудительной перезагрузки и включения, чего по умолчанию не реализовано в маленькой плате, про которую пойдет сегодня речь. А этот функционал мне как раз очень нужен, так как без этого, перезагрузить принудительно удаленное рабочее место не представляется возможным, если оно например зависло.
Первое, что нам необходимо сделать, это приобрести SD карту, достаточного объема. Например 32Gb, чтобы помимо самой операционной системы, мы имели возможность на нее скинуть необходимые нам образы, и с помощью эмуляции CD привода при необходимости переустановить например ОС.
Для этого, скачиваем образ IMG SiPeed и с помощью программы balenaEtcher разворачиваем на нашей SD карте.
Второе, это обязательно после того, как подключимся к Web интерфейсу нашего KVM (логин/пароль admin), обновляем прошивку до самой стабильной версии.
Если по каким то причинам у нас это на автомате не получается, то проверяем возможность соединения нашего устройства с сервером обновления
Если и это не помогает, то запускаем принудительное обновление с помощью скрипта который мы можем найти подключившись по SSH (предварительно его включив в настройках Web интерфейса)
python update-nanokvm.py
После этих действий мы получаем устройство, готовое для наших дальнейших манипуляций.
Как я выяснил копаясь на форуме wiki Sipeed, на нашем KVM уже есть выводы, которые отвечают за подключения кнопки Reset и Power Button, но подключать к ним напрямую материнскую плату нельзя, так как это приведет к нежелательным последствиям, например выходу из строя KVM, так как эмуляция нажатия кнопки в этой плате не заложены (для этого есть специальный отдельный девайс NanoKVM-B, который идет только в комплектах, которые есть в более расширенных версиях, о которых я упоминал выше). Поэтому придется его делать самостоятельно, о чем я расскажу чуть ниже.
Для это нам понадобится воспользоваться или оптопарой (что более предпочтительно, так как мы полностью развязываем связь платы KVM и материнской платы), которая будет эмулировать нажатие кнопки, или транзистором. Нам так же пригодится наличие нескольких проводков, и умение владения паяльником.
И так, мы можем решить данную задачу двумя наборами микросхем:
1.
Резистор - 330Ω
Схема:
GPIO ── 330Ω ──► PIN1 PC817
GND ─────────────► PIN2 PC817
PIN3 PC817 ─────► RESET_SW+
PIN4 PC817 ─────► RESET_SW−
# Там где на оптопаре стоит точка, там PIN1, соответственно ниже PIN2, напротив PIN1 -> PIN3, по остаточному принципу остается PIN4
Т.е. логика работы проста, наш KVM подает сигнал на GPIO, и при появлении напряжения замыкает контакты PIN3 и PIN4, тем самым эмулируя нажатия кнопки.
2.
Резистор 1 kΩ – 4.7 kΩ
Схема:
GPIO ── 1kΩ ──► Base (транзистор)
Emitter ───────► GND NanoKVM
Collector ─────► RESET_SW+ (материнка)
RESET_SW− ─────► GND
# Если не знаете где коллектор/эмиттер/база у транзистора, то забейте в поисковике ваш, там картинок с обозначениями куча.
! Обратите внимание, что есть разные ревизии платы LicheeRV, и GPIO отвечающие за Reset и Power тоже разные (если вы покупали девайс в 2026 году или позднее, то скорее всего у вас уже последняя ревизия). Так что смотрим картинку и внимательно подключаем. Не путаем GND и GPIO. Это важно, особенно если используем схему с транзистором.

Соответственно, если нам нужно иметь возможность принудительно перезагружать компьютер и выключать/включать, то мы должны сделать второе такое же подключение (т.е. нам нужно деталей x2), только используя GPIO относящийся к кнопке Power.
Во время сборки желательно пользоваться термоусадкой, для изоляции контактов, так вы избежите не нужного замыкания.
Если вы сделали все правильно, то при выборе в Web интерфейсе пункта меню управления питанием, получите необходимый результат — перезагрузку или включение/выключение компьютера.
Надеюсь объяснил все исчерпывающе.
Две оптопары и резисторы стоят 20-30 рублей, в любом магазине радиодеталей, так что игра стоит свеч.
Дерзайте.
Полезные ссылки:
PIN SiPeed