FreeBSD & APC Smart-UPS SC 1500 via USB to Serial Cable

Итак, имеем:

  • FreeBSD 8.0-Stable (amd64);
  • APC Smart-UPS SC 1500;
  • USB to Serial Cable — кабель, у которого с одной стороны COM-разъём для втыкания в UPS, а с другой — USB для втыкания в компьютер; идёт в комплекте с вышеуказанным UPS.

Задача: подружить его с apcupsd.

Решение

Вроде бы в компьютер втыкаем USB и думается, что надо выставить в apcupsd.conf:

UPSCABLE usb
UPSTYPE usb
DEVICE

и всё должно завестись... Но не заводится. ((

После долгих мучений и попыток найти решение в документации, пришёл к решению методом научного тыка при поддержке логики. Всё-таки изначально из UPS'а идёт COM, стало быть ставим так:

UPSCABLE smart
UPSTYPE apcsmart
DEVICE /dev/ttyU0

Собственно, в этом /dev/ttyU0 собака и порылась — при втыкании в компьютер USB-шного конца он определяется как

kernel: ugen1.2: Prolific Technology Inc. at usbus1
kernel: uplcom0: Prolific Technology Inc. USB-Serial Controller, class 0/0, rev 1.10/3.00, addr 2 on usbus1

номер ugen и usbus меняются в зависимости от порта USB, но мой пытливый глаз углядел в /dev свежепоявившийся девайс /dev/ttyU0, который и оказался UPS'ом.