Форум OlegON > Компьютеры и Программное обеспечение > Железо

PiKVM v4 mini отзывы : Железо

14.03.2025 10:42


06.11.2024 20:22
На данный момент я являюсь уже приблизительно недельным пользователем устройства под названием PiKVM v4 mini.
Покупалось устройство для нормального использования ноутбука крошечного размера (прощай глаза) в свете того, что отдельный монитор для этого ноутбука мне тупо некуда поставить, а при количестве переключений обычный классический KVM мне не подходил.

Я связался с автором устройства Maxim Devaev @mdevaev, который сейчас проживает в Канаде и уточнил, что в Россию устройство не поставляется. В итоге правдами и неправдами мне удалось на перекладных купить и доставить устройство в Москву. Выбирал модель mini, поскольку хотел пассивное охлаждение, очень не люблю жужжащие маленькие вентиляторы.

Приходит такая вот коробочка и устройство



Внутри само устройство, кучка переходников на розетки, два кабеля Ethernet, кабель OTG и питания... В качестве бонуса еще плата для управления питанием системника и кабели уже к ней. Сам девайс сообщает о себе надписью made in Canada.

Сразу после первого включения достаточно долго происходят всяческие генерации ключей, выключать устройство в этот момент нельзя. Зато потом сразу можно стукнуться в веб-интерфейс с паролем по умолчанию admin/admin и увидеть такие вот настройки. Настоятельно рекомендуется и рекомендую использовать Chromium.



У меня, в принципе, все настройки по умолчанию, но gop я закрутил в 0, чтобы снизить задержку. А сетевой поток, наоборот, открутил.

В моем случае сразу после открытия потока хром начал сыпать тонну ошибок в консоль на тему Wayland, что особо не напрягало, но подъедало ресурсы из-за большого объема для отрисовки, поэтому я запускаю его так: chromium-browser --ozone-platform-hint=auto 2>&1 &>/dev/null

Если что, для устройства есть саппорт-канал в дискорде. На английском, но отвечают компетентно и быстро, я писал в вечернее время.

Странным образом PiKVM не мог выполнить pikvm-update из-за отсутствия дефолтного рута, соответственно, пришлось сделать
Код:
ip route add default via 192.168.88.254 dev eth0
у вас адрес шлюза может быть другой. После ребута настройки сбрасываются, но мне и не надо в принципе, чтобы устройство знало дорогу в интернет или другие сети. Внутри Arch Linux и достаточно не зарезаный, так что разбираться просто. SD-карта замонтирована в ro, чтобы не повреждаться при внезапных отключениях, а при необходимости сделать что-то на запись надо ввести команду
Код:
rw
а после необходимых изменений вернуть все назад командой
Код:
ro
которая перемонтирует все обратно. Работать в rw долго категорически не рекомендуется.

Linux pikvm 6.6.45-8-rpi #1 SMP Wed Oct 2 19:56:38 UTC 2024 armv7l GNU/Linux

Общий отзыв - оно работает. Задержка, думаю, где-то в 100 мсек есть, но чтобы курсор не дергался, я не выключаю опцию синей точки и как-то уже привык к догоняющему курсору. Крайне редко, не каждый день, бывает, что отваливается сигнал. С чем связано - не знаю. То есть это выражается в том, что где-то 5 секунд происходит переподключение потока. Чаще это бывает в Firefox, потому я просто открываю Chrome на одном десктопе и пользуюсь PiKVM там. С учетом пассивного охлаждения, устройство греется до 43-47 градусов при нагрузке 5% на процессор и около 12% памяти. По крайней мере об этом сообщает мониторчик. Первые дни мониторчик развлекал, но потом я его отключил, чтобы не отвлекал шевелением (переключается информация о загрузке, температуре и текущий адрес)

Для выключения мониторчика достаточно выполнить команды:
Код:
systemctl disable --now kvmd-oled kvmd-oled-reboot kvmd-oled-shutdown
kvmd-oled --height=32 --interval=0 --clear-on-exit --text=x
первая выключает службы, обновляющие изображение, вторая непосредственно гасит мониторчик, команду взял из , и в целом устройство очень хорошо документировано.

Мне не нужно было, чтобы устройство, которым я управляю, видело, что это PiKVM (которым устройство представляется по умолчанию), поэтому я притворился, что монитор у меня Toshiba, делается это так:
Код:
kvmd-edidconf --set-monitor-name=TOSHIBA --set-mfc-id=TTP --set-product-id=34953 --set-serial=2190649089 --set-audio=0 --apply
эта команда полезна, как пример отключения звукового канала на монитор. Однако, в этом случае максимальное разрешение будет только 1920х1080, поэтому, чтобы получить 1920х1200, как умеет v4, я создал профиль монитора Asus, как это показано здесь
Сначала создаем файлик /root/edid.hex , куда пишем вот такое
Код:
00FFFFFFFFFFFF0006B3872401010101
021F010380342078EA6DB5A7564EA025
0D5054BF6F00714F8180814081C0A940
9500B300D1C0283C80A070B023403020
360006442100001A000000FD00314B1E
5F19000A202020202020000000FC0050
4132343851560A2020202020000000FF
004D314C4D51533035323135370A014D
02032AF14B900504030201111213141F
230907078301000065030C001000681A
00000101314BE6E2006A023A80187138
2D40582C450006442100001ECD5F80B0
72B0374088D0360006442100001C011D
007251D01E206E28550006442100001E
8C0AD08A20E02D10103E960006442100
001800000000000000000000000000DC
в системе установлен nano, так что я все правлю им. Для начала надо попробовать, что этот профиль вообще работает, проверяется это включением
Код:
kvmd-edidconf --edid=/root/edid.hex --apply
при необходимости перезагрузите управляемый компьютер, PiKVM ребутить не надо.
Если все хорошо, то надо запомнить изменения
Код:
kvmd-edidconf --import=/root/edid.hex
что сохранит профиль рядом с остальными в файлике /etc/kvmd/tc358743-edid.hex

Все дополнительные настройки, переопределяющие системные по умолчанию, хранятся в файлике /etc/kvmd/override.yaml
Я, например, для облегчения управления устройством отключил авторизацию, а, поскольку не хочу, чтобы управляемое устройство знало, кто им управляет, то притворился, что использую обычную клавиатуру. Просто дописал в конец файла:
Код:
kvmd:
    auth:
        enabled: false
otg:
    manufacturer: A4Tech
    product: KV300H
    vendor_id: 0x09DA
    product_id: 0x0328
    serial:
Самые внимательные заметили, что в устройстве есть запись макросов. То есть включили запись, помахали мышкой, понажимали клавиши, потом остановили запись - получился скрипт в XML-формате. Просто перечисление действий. Можете скачать, поправить, загрузить, воспроизвести все заново, или без правок сразу его запустить. Есть опция цикличного повтора.

Если не нравится тяжесть браузера - можно включить VNC-сервис (по умолчанию выключен)
Код:
systemctl enable --now kvmd-vnc
и подключаться к потоку через tiger-vnc (поддерживается не всеми клиентами)

Очень сочная особенность устройства - его API
Можно управлять происходящим в потоке, например, нажимать клавиши. Пример нажатия Enter на python ниже
Код:
import websocket
import ssl, time
uri = "wss://АДРЕС/api/ws?stream=0"
headers = {"X-KVMD-User": "admin", "X-KVMD-Passwd": "admin"}
ws = websocket.WebSocket(sslopt={"cert_reqs": ssl.CERT_NONE})
ws.connect(uri, header=headers)
# Key codes: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/code/code_values
ws.send('{"event_type": "key", "event": {"key": "Enter", "state": true}}')
time.sleep(0.05)
ws.send('{"event_type": "key", "event": {"key": "Enter", "state": false}}')
ws.close()
06.11.2024 20:23
Пока из текущих вопросов остался, собственно, один...
Интересно, как долго будет работать это устройство, с учетом того, что я не разово с ним ковыряюсь, а сижу целый рабочий день.
В чате саппорт заверил, что у людей малинки, на базе которого устройство работает, работают по несколько лет.

И добавлю строку для Chromium с учетом того, что у меня 4k

Код:
chromium-browser --ozone-platform-hint=auto --app="https://192.168.88.79" 2>&1 &>/dev/null
Часовой пояс GMT +3, время: 10:42.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.