Сторожевой таймер USB WatchDog автоматически перезапускает сервер/ПК при зависании, опционально контроллирует температуру или дискретный вход.
Серверы/мини-серверы
Терминалы/киоски
PC майнинг-фермы
Быстрый старт
  • Подключение USB
    Установите сторожевой таймер в USB разъем. Проверьте еще раз. Провода Power/Reset пока не подключайте. Включите компьютер. Убедитесь, что ПК видит устройство и оно изредка мигает красным.
  • Монитрониг
    Запустите одну любую из доступных программ на выбор либо bat/bash-скрипт.
    Убедитесь, что программа видит усторйство, у нее достаточно прав, а само устройство начало мигать зеленым.
  • Подключение Reset/Power
    Выключайте компьютер. Подключите Reset/Power с материнской платы на каналы CH1/CH2 сторожевого таймера. Кнопки с системного блока можно подключить сюда же на второй набор контактов.
  • Проверка
    Включите компьютер и воспользуйтесь тестовыми командами для проверки перезапуска, чтобы убедиться, что все подключено правильно.
Детальное описание
Подробная инструкция с картинками
Установка USB WatchDog
1. Перед установкой необходимо выключить ПК.
2. Так как устройство бескорпусное, будьте с ним предельно острожны - не допускайте касания металлических поверхностей. Это может привести к порче устройства (пример)!
3. Провода Reset и Power необходимо подключить вместо кнопок от системного блока.
4. Как подключать PBD10

Для при установке устройства в материнскую плату убедитесь, что вы подключаете именно к разъему USB. Некоторые интерфейсы (например ieee1394 или COM-порт) имеют на плате такие же 10-выводные разъемы.

Подключение к интерфейсу, отличному от USB, приведет к порче устройства
(возможно, с дымом и запахом)!

  • На Pro2 c PBD10 разъемом на плате имеется точка. При подключении к материнской плате ПК она должна быть совмещена со стороной разъема где отсутствует 1 металлический контакт.
  • На Lite c PBD10 разъемом на плате имеется стрелка. При подключении к материнской плате ПК она должна быть совмещена со стороной разъема где отсутствует 1 металлический контакт.
5. Сами кнопки можно подключить к сторожевому таймеру, чтобы ими тоже можно было пользоваться.
WatchDog Pro2 PBD10
Осн.1 и Доп.1. - параллельно соединённые контакты канала 1. По-умолчанию, подключаются к контактам Reset: например, Осн.1 - на reset мат.платы и Доп.1 - на кнопку reset.
Осн.2 и Доп.2. - параллельно соединённые контакты канала 2. По-умолчанию, подключаются к контактам Power: например, Осн.2 - на power мат.платы и Доп.2-
на кнопку power.
WatchDog Lite
Для USB WatchDog Lite:
Кан. 1 - канал для подключения управляемого устройства. Например, RESET сигнал на материнской плате ПК или модема.
Кан. 2 - параллельный канал для подключения ручного управления. Например, кнопки RESET системного блока.
Пример подключения к материнской плате
USB WatchDog
6. При первом включении устройство находится в режиме ожидания, что сигнализируется поочерёдным миганием светодиодов.
Первая команда от управляющей команды или скрипта переведёт устройство в рабочий режим.
HiveOS, RaveOS, NiceHash
Eсли вы используете HiveOS, то устанавливать ПО не требуется.
Поддержка USB WatchDog уже реализована разработчиками Hive OS.
Более подробно с возможностями можно ознакомиться на сайте ОС.

RaveOS, NiceHash по нашим сведениям также имеют встроенное ПО для работы, но у нас нет подробной информации об этом. За подробностями, лучше обращаться в ТП данных дистрибутивов.
Установка ПО
WatchDog имеет сразу два USB интерфейса:
USB HID - для тех, кто хочет простой установки (драйвер не требуется, минималистичная программа).
USB CDC - для тех, кто хочет иметь больший контроль и гибкость работы или использовать скрипты.

Программа wdtmon3-mini работает с интерфейсом USB HID.
Программа wdtmon3 работает с интерфейсом USB CDC.
Программа wdtmon4 работает с интерфейсом USB CDC.

Устанавливать нужно только одну из этих программ.
wdtmon3-mini
Простая программа с широкими возможностями.
Работает с интерфейсом USB-HID.
Почитать подробнее
Скачать

wdtmon3
Программа, которая работает с USB WatchDog и позволяет:
1. Изменять настройки USB WatchDog;
2. Управлять каналами вручную;
3. Смотреть информацию об устройстве;
4. Следить за доступностью интернета;
5. Следить за процессом.

Страница подробной инструкции по программе доступна по ссылке.
Перед работой с wdtmon3, возможно, понадобится установить драйвер.
Драйвер
Работа в ОС ниже Windows7 не поддерживается.
В Windows7 понадобится установить драйвер CDC.
В Windows 8, Windows 10, Linux, macOS установка драйвера не требуется.
Если в Windows8 не заработал системный драйвер CDC, воспользуйтесь инструкцией.

Драйвер установлен, можно работать с программой
Основные элементы главного окна
1. Выбор порта.
2. Галочка для включения режима "контроль узла": программа будет "пинговать" адрес и, если, ответа нет - производить перезагрузку.
3. Галочка для включения режима контроля за процессом: если данный процесс в системе пропал или завис - перезагрузка. Процесс можно вписать вручную или выбрать из списка.
4. Ручной режим управления: для тех, кто знает, что делает - ручное изменение состояний USB WatchDog.
Страница изменения настроек нажатий и пауз - для экзотических мат. плат, у которых настройки по-умолчанию не срабатывают.
Тут же можно отключить один из каналов или перевести его в ручной режим.
Можно установить порог температуры (нужен доп. термодатчик), при котором сторожевой таймер будет выключать ПК.

Изменение настроек работы самой программы. Можно отсюда добавить программу в автозагрузку, перейти в режим программной отрисовки (если есть проблемы с видеодрайверами), включить ведение логов и включить режим совместимости с устройствами 2016 года выпуска.

wdtmon4
Новая программа, сочетающая в себе функционал программ wdtmon3,
wdtmon3-mini и UnitX Gateway
Работает с интерфейсом USB-CDC.
Почитать подробнее
Скрипты и примеры
Можно не устанавливать каких-либо программ, а просто добавить в автозагрузку BAT или BASH файл
Минимальный скрипт (bat) для Windows
Скрипт подает раз в секунду команду на порт COM12 - сообщает устройству, что пк не завис.
@echo off
SET portname=COM12
:loop
set /p x="~U" <nul >\\.\%portname%
ping -n 2 127.0.0.1 > nul
goto loop
Минимальный скрипт (bash) для Linux
Скрипт подает раз в секунду команду на порт /dev/ttyACM0- сообщает устройству, что пк не завис.
#!/bin/bash
PORT=/dev/ttyACM0
while true
do
 echo -n "~U" > $PORT
 sleep 1
done
Скрипт (bat) для проверки сети в Windows
Проверяет доступность узла, заданного параметром hostname.
Переменная portname задает порт устройства.
Командой ping -n 2 127.0.0.1 создается пауза, равная n-1 секунд.
@echo off
SET hostname=ya.ru
SET portname=COM12
:loop
  ping -n 1 -l 4 -w 1000 %hostname% >nul
  if %errorlevel%==0 set /p x="~U" <nul >\\.\%portname%
  ping -n 2 127.0.0.1 > nul
goto loop
Скрипт (bash) для проверки сети в Linux
Проверяет доступность узла, заданного параметром hostname.
Переменная portname задает порт устройства.
Командой ping -n 2 127.0.0.1 создается пауза, равная n-1 секунд.
#!/usr/bin/env bash
HOST="ya.ru"
PORT=/dev/ttyACM0
while true
do
    if ping -c 1 $HOST; then
    echo -n "~U" > $PORT
    fi
sleep 3
done
Скрипт (bash) для отслеживания процесса в Linux
По-умолчанию мониторит процесс, заданный переменной PROCESS,
можно запустить с параметром "имя процесса".
#!/usr/bin/env bash

PORT=/dev/ttyACM0
PROCESS=crond

if [ ! -z "$1" ];then
	PROCESS="$1"
	echo "Monitor $PROCESS"
fi

while true; do
	if pgrep "$PROCESS" > /dev/null; then
		echo -n "~U" > $PORT
	fi
	sleep 3
done
Скрипт (bash) для отслеживания процесса и сетевого соединения в Linux
По-умолчанию мониторит процесс, заданный переменной PROCESS и сетевой адрес, заданный параметром HOST.
Можно запустить с параметрами: -a <url> для смены ya.ru на <url>, -p <proc> для смены crond на <proc>
#!/usr/bin/env bash

PORT=/dev/ttyACM0
URL=ya.ru
PROCESS=crond

while getopts ":ha:p:" opt; do
	case ${opt} in
		a)
			URL=$OPTARG
			;;
		p)
			PROCESS=$OPTARG
			;;
		h)
			echo "Usage: $0 -a <url> -p <process>" 1>&2
			exit 1
			;;
		\?)
			echo "Invalid option: -$OPTARG" 1>&2
			exit 1
			;;
	esac
done

echo "Ping $URL"
echo "Monitor $PROCESS"

while true; do
	ping -n -c 1 -w 1 "$URL" 2>/dev/null 1>&2 && pgrep "$PROCESS" 2>/dev/null 1>&2 && echo -n "~U" > $PORT
	sleep 3
done
Скрипт-шаблон (bash) для реализации своего функционала отправки команд и анализа ответа в Linux
В примере можно легко поменять время ожидания, выполняемое действие и т.п.
#!/bin/bash

# Путь к последовательному порту (измените при необходимости)
SERIAL_PORT="/dev/ttyACM0"

BAUD_RATE="9600"

# Время ожидания ответа в секундах, после которого будет выполнено "действие"
N=30

# Команды для отправки и ожидаемого ответа
COMMAND="~U"
EXPECTED_RESPONSE="~A"

# ----------------------------
# Обработка сигналов для корректного завершения
# ----------------------------
cleanup() {
    echo "$(date +"%Y-%m-%d %H:%M:%S") - Завершение работы скрипта."
    exec 3<&-
    exit 0
}

# Установка ловушек на сигналы
trap cleanup SIGINT SIGTERM EXIT

# ----------------------------
# Функция инициализации последовательного порта
# ----------------------------
init_serial_port() {
    echo "$(date +"%Y-%m-%d %H:%M:%S") - Настройка последовательного порта $SERIAL_PORT с скоростью $BAUD_RATE."
    stty -F "$SERIAL_PORT" "$BAUD_RATE" cs8 -cstopb -parenb -ixon -ixoff -icanon -echo
    if [[ $? -ne 0 ]]; then
        echo "$(date +"%Y-%m-%d %H:%M:%S") - Не удалось настроить последовательный порт $SERIAL_PORT."
        exit 1
    fi
    # Открытие последовательного порта на FD 3
    exec 3< "$SERIAL_PORT"
}

# ----------------------------
# Функция действия при отсутствии ответа
# ----------------------------
action() {
    echo "$(date +"%Y-%m-%d %H:%M:%S") - Ответ не получен в течение $N секунд. Выполнение действия."
    # Здесь можно определить необходимое действие.
    # sudo shutdown -h now
}


# ----------------------------
# Функция основной логики
# ----------------------------
main() {
    # Инициализация времени последнего успешного ответа
    last_response_time=$(date +%s)

    while true; do
        # Отправка команды в последовательный порт
        echo -ne "$COMMAND" > "$SERIAL_PORT"
        echo "$(date +"%Y-%m-%d %H:%M:%S") - Отправлена команда: $COMMAND"

        # Переменная для хранения полученного ответа
        RESPONSE=""

        # Запуск таймера для ожидания ответа до 1 секунды
        RESPONSE_START_TIME=$(date +%s%N) # Текущее время в наносекундах

        while true; do
            # Текущее время
            CURRENT_TIME_NS=$(date +%s%N)
            ELAPSED_NS=$(( CURRENT_TIME_NS - RESPONSE_START_TIME ))

            # Проверка, прошло ли 1 секунда (1,000,000,000 наносекунд)
            if (( ELAPSED_NS >= 1000000000 )); then
                break
            fi

            # Чтение одного символа из последовательного порта с небольшим таймаутом через FD 3
            if read -r -n1 -t 0.1 CHAR <&3; then
                RESPONSE+="$CHAR"                
                # Проверка, содержит ли накопленный буфер ожидаемый ответ
                if [[ "$RESPONSE" == *"$EXPECTED_RESPONSE"* ]]; then
                    echo "$(date +"%Y-%m-%d %H:%M:%S") - Получен ожидаемый ответ: $EXPECTED_RESPONSE"
                    last_response_time=$(date +%s)
                    break
                fi

                # Ограничение размера буфера для предотвращения переполнения
                if (( ${#RESPONSE} > 10 )); then
                    RESPONSE="${RESPONSE: -10}"
                fi
            fi
        done

        # Проверка, прошло ли N секунд с последнего успешного ответа
        CURRENT_TIME=$(date +%s)
        ELAPSED=$(( CURRENT_TIME - last_response_time ))

        if (( ELAPSED >= N )); then
            action
            # После выполнения действия (например, выключение), скрипт завершится
            # Если действие не завершает скрипт, можно сбросить last_response_time здесь
            last_response_time=$(date +%s)
        else
            echo "$(date +"%Y-%m-%d %H:%M:%S") - Последний успешный ответ был $ELAPSED секунд назад."
        fi

        # Ожидание 1 секунды перед следующей отправкой команды
        sleep 1
    done
}

# ----------------------------
# Главная логика скрипта
# ----------------------------

# Проверка наличия прав на доступ к последовательному порту
if [[ ! -r "$SERIAL_PORT" || ! -w "$SERIAL_PORT" ]]; then
    echo "$(date +"%Y-%m-%d %H:%M:%S") - Нет прав на доступ к последовательному порту $SERIAL_PORT."
    exit 1
fi

# Инициализация последовательного порта
init_serial_port

echo "$(date +"%Y-%m-%d %H:%M:%S") - Скрипт запущен. Отправка команды '$COMMAND' каждые 1 секунду с ожиданием ответа '$EXPECTED_RESPONSE' в течение $N секунд."

# Запуск основной функции
main
Пример считывания температуры на Python3
Пример получения данных с термодатчика. Данный код демонстрационный и не предусматривает нештатных режимов работы.
from time import sleep
import serial

port = '/dev/tty.usbmodem14201'
ser = serial.Serial(port)
while True:
    ser.write(b'~G')
    ser_data = ser.readline()
    if ser_data:
        data = ser_data.decode("utf-8")
        if data.startswith('~G'):
            try:
                print('Temperature is {0}'.format(int(data[2:])/10))
            except ValueError: 
                print("Error")
    sleep(1)
Демо-программа работы с HID-интерфейсом на Python3
Требуется установка библиотеки python hid (hidapi).
Запуск python3 wdt_hid.py. Можно запускать с параметрами (см.код и --help)
#!/usr/bin/env python3
import hid
from time import sleep
from argparse import ArgumentParser

# Определение команд для отправки на устройство
COMMANDS = {
    'reload':       1,  # HID_RELOAD
    'reboot':       2,  # HID_REBOOT
    'hreboot':      3,  # HID_HREBOOT
    'shut':         4,  # HID_SHUT
    'test':         5,  # HID_TEST
    'mreboot':      6,  # HID_MREBOOT
    'mhreboot':     7,  # HID_MHREBOOT
    'ch1_hi':       8,  # HID_CH1_HI
    'ch1_low':      9,  # HID_CH1_LOW
    'ch2_hi':       10, # HID_CH2_HI
    'ch2_low':      11, # HID_CH2_LOW
    'cht_hi':       12, # HID_CHT_HI
    'cht_low':      13, # HID_CHT_LOW

    'led_g_off':    14, # HID_LED_G_OFF
    'led_g_on':     15, # HID_LED_G_ON

    'tim_off':      16, # HID_TIM_OFF
    'tim_on':       17, # HID_TIM_ON

    'boot_sdfu':    18, # HID_BOOT_SDFU
    'boot_udfu':    19, # HID_BOOT_UDFU
}

def run(period=3):
    """
    Функция, реализующая бесконечную отправку пингов (команда HID_RELOAD)
    с заданным интервалом.
    """
    hd = hid.Device(0x0483, 0xa26d)
    print('Opened HID')
    try:
        # По умолчанию отправляется команда HID_RELOAD (код 1)
        report = b'\x01\x01'
        while True:
            if hd.write(report) != 2:
                raise RuntimeError('IO error')
            print('Pinged')
            sleep(period)
    except Exception as e:
        print(f'HID exception {e} ({type(e)})')
    finally:
        try:
            hd.close()
        except Exception:
            pass

def send_command(command_name):
    """
    Отправка одиночной команды на устройство.
    Аргумент command_name – строка (например, 'reboot', 'shut', 'test' и т.д.),
    которая преобразуется в числовой код по словарю COMMANDS.
    """
    cmd_code = COMMANDS.get(command_name.lower())
    if not cmd_code:
        raise ValueError(f'Неизвестная команда: {command_name}')
    report = bytes([0x01, cmd_code])
    hd = hid.Device(0x0483, 0xa26d)
    print('Opened HID')
    try:
        if hd.write(report) != 2:
            raise RuntimeError('IO error')
        print(f"Команда '{command_name}' (код {cmd_code}) успешно отправлена")
    except Exception as e:
        print(f'HID exception {e} ({type(e)})')
    finally:
        try:
            hd.close()
        except Exception:
            pass

def read_channel():
    """
    Считывает значения каналов с устройства HID, включая канал 3.
    Предполагается, что устройство возвращает отчёт из 17 байт, где:
      - байт 0 – идентификатор отчёта (ожидается 4, HID_ID_DATA),
      - байт 1 – значение канала 1,
      - байт 2 – значение канала 2.
    
    Для устройств Pro (у которых значение байта 2 не равно 0xFF)
    байт 3 содержит тип канала 3, а байты 4–6 – данные канала 3.
    """
    hd = hid.Device(0x0483, 0xa26d)
    print("Opened HID для чтения данных")
    try:
        # Получаем отчёт с report_id = 4 и длиной 17 байт
        report = hd.get_feature_report(4, 17)
        if len(report) != 17:
            print(f"Ошибка: получен отчёт неверной длины: {len(report)} байт")
            return

        # Разбор полученного отчёта
        # report[0] – report_id (ожидается 4)
        ch1 = report[1]
        ch2 = report[2]
        print(f"Канал 1: {ch1}")
        print(f"Канал 2: {ch2}")

        if ch2 == 0xFF:
            print("Lite устройство. Канал 3 недоступен.")
        else:
            ch3_type = report[3]
            # Определяем тип канала 3.
            ODC_WDGPRO2_CHANNELSETTINGS_TEMP_OFF    = 0   # канал выключен
            ODC_WDGPRO2_CHANNELSETTINGS_TEMP_INPUT  = 1   # входной режим
            ODC_WDGPRO2_CHANNELSETTINGS_TEMP_OUTPUT = 2   # выходной режим
            ODC_WDGPRO2_CHANNELSETTINGS_TEMP_TEMP   = 3   # температурный режим

            if ch3_type == ODC_WDGPRO2_CHANNELSETTINGS_TEMP_INPUT:
                ch3_val = report[4]
                print(f"Канал 3 (INPUT): {ch3_val}")
            elif ch3_type == ODC_WDGPRO2_CHANNELSETTINGS_TEMP_OUTPUT:
                ch3_val = report[4]
                print(f"Канал 3 (OUTPUT): {ch3_val}")
            elif ch3_type == ODC_WDGPRO2_CHANNELSETTINGS_TEMP_TEMP:
                if report[4] == 0xFF:
                    print("Канал 3 (TEMPERATURE): n/a")
                else:
                    temp_int = int.from_bytes(report[4:5], byteorder='little', signed=True)
                    temp_frac = (report[6] << 8) | report[5]
                    temperature = temp_int + (temp_frac / 10000.0)
                    print(f"Канал 3 (TEMPERATURE): {temperature:.2f}°C")
            else:
                print("Канал 3: не используется или неизвестный режим.")
    except Exception as e:
        print(f"HID exception при чтении канала: {e} ({type(e)})")
    finally:
        try:
            hd.close()
        except Exception:
            pass

if __name__ == '__main__':
    parser = ArgumentParser()
    parser.add_argument('-s', '--sleep',
                        default=3, type=float,
                        help='Интервал пинга (секунды)')
    parser.add_argument('-c', '--command',
                        default=None,
                        help='Отправить одиночную команду (например, reboot, shut, test и т.д.)')
    parser.add_argument('-r', '--read', action='store_true',
                        help='Считать и вывести значения каналов, включая канал 3')
    args = parser.parse_args()

    if args.command:
        send_command(args.command)
    elif args.read:
        read_channel()
    else:
        run(period=(args.sleep or 3))
После установки ПО
Как проверить, что всё работает как положено
1. После установки и настройки программного обеспечения на устройстве должен начать мигать зелёный светодиод - это означает, что устройство видит свою управляющую программу и находится в штатном режиме. Если устройство мигает красным - программа не запущена или не настроена.

2. В wdtmon3-mini и wdtmon3 есть кнопки для тестовой проверки работы перезагрузки пк.
Необходимо в ручном режиме убедиться, что провода reset и power подключены правильно. Для этого можно нажать кнопку "Reset"/"Перезагрузка" для тестирования канала "Reset" и (в серии Pro) "Power"/"Жёсткая перезагрузка" для тестирования канала "Power". Если после нажатия перезагрузки не произошло, нужно проверить, что подключение сделано верно или поменять полярность подключения проводов на каналах "Reset" и "Power" .
Подключение термодатчика
Контроль над температурой с помощью
USB WatchDog Pro2
Ко входу Вх/In USB WatchDog Pro2 можно подключить внешний термодатчик на базе DS18B20. Для этого к «-» входа подключаются объединённые контакты GND и VDD датчика DS18B20, а к «+» DQ датчика.

Входу в программе wdtmon3 (параметр IN channel) необходимо установить значение «Temperature».

При подключенном термодатчике можно периодически считывать данные о температуре командой ~G (см. таблицу 1 раздела «Продвинутое управление устройством»). Данные о температуре следует считывать не чаще, чем 1 раз в 3 секунды.

Автоматическая перезагрузка при превышении температуры

Если значение Temperature treshold (критический порог температуры) установить больше 0, то включается режим автоматического контроля за температурой.
В этом режиме USB WatchDog анализирует значение температуры каждые 3 секунды.

При превышении температуры выполняются те же действия, что и при переполнении таймера, которые определяются конфигурацией каналов. Например, возможна настройка автоматического перезапуска или выключения устройства при перегреве.
Подключение входного дискретного сигнала
Контроль открытия двери
К сторожевому таймеру можно подключить какой-либо дискретный сигнал: кнопку, геркон и т.п.

Для активации режима следует настроить вход на режим работы с внешним сигналом в программе wdtmon3.
Ко входу Вх/In USB WatchDog возможно подключение нормальнозамкнутого/нормальноразомкнутого концевого датчика согласно рисунку.
Значение данного входа можно программно считывать с помощью текстового протокола.

Следует помнить, что вход идет напрямую на процессор. Подача на этот вход сигналов напряжением выше 3.6В и ниже -0.6В приведет к порче процессора.

Протокол
Для удобства встраивания в другие системы устройство имеет лаконичный текстовый протокол
управления: каждая команда начинается с сигнала «~», следом идет команда, далее опциональный параметр.
*значения параметров 1-5 могут быть в диапазоне 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A(10), B(11), C(12), D(13),
E(14), F(15).
Технические характеристики
Автозапуск материнской платы после подачи питания

После настройки сторожевого таймера необходимо зайти в настройки БИОСа материнской платы и включить там две опции:
1. "Включение компьютера после подачи питания" (доступна ли эта опция и как она называется зависит от конкретной модели мат. платы - эта информация должна быть в инструкции к мат. плате).

2. Подача питания на порты USB при выключенном компьютере (опять же - обратитесь к инструкции к мат. плате). Например, для мат. платы Asus Z370-P необходимо включить в BIOS опцию "USB Charger in state S5". Возможно питание будет подаваться не на все USB порты - необходимо подключить WatchDog к тому порту, на который подается питание. Проверить это можно подключив вачдог (или например мышь со световой индикацией питания) к порту на выключенном компьютере. WatchDog Pro2 должен через какое-то время замигать красным.

Тогда после потери электропитания компьютер включится сам (если настроена опция 1.). Если опция 1 по какой-то причине не сработала, вачдог через определенное время (два раза по T1 - см. инструкцию к устройству) запустит систему (при условии что настроена опция 2).

Обратите внимание, что WatchDog Pro2 запустит систему не сразу, а через время 2*T1.

Если на вашей материнской плате питание на USB не включается, то вам поможет "источник бесперебойного питания для WatchDog Pro2" USB PS.

Самые частые вопросы по использованию
USB WatchDog Pro2 и USB WatchDog Lite
У нашей техподдержки накопилась статистика по частым вопросам
Частые поломки и как проверить
Устройство подключено правильно, питание на USB есть, но устройство не работает.
  • Причина
    Наиболее частая причина - касание задней части устройства металлическим предметом, либо поверхностью. В результате происходит замыкание и порча устройства.
  • Как проверить
    Все самостоятельные измерения Вы проводите на свой страх и риск: если у вас нет подходящих навыков или инструментов - обратитесь в наш СЦ.

    Подключите устройство к USB-разъему и измерьте мультиметром напряжение - на прикладываемых рисунках показано правильное расположение положительного (красный) и отрицательного (черный) щупов мультиметра. Также под увеличением показано, куда прислонять положительный щуп (контакт обозначенный знаком "+").
    В процессе измерения будьте аккуратны, чтобы не замкнуть щупом какие-либо контакты, поскольку это также может привети к замыканию и порче устройства.

    Если мультиметр покажет меньше 4 вольт, значит произошло замыкание и устройство испорчено. Если около 5 вольт, питание устройства исправно и проблема может быть в другом.
  • Что делать
    Эта поломка исправляется в сервисном центре.
Устройство греется, светодиоды горят всё время.
  • Причина
    Наиболее частая причина - подключение устройства к интерфейсу, отличному от USB, например, к ieee1394 или COM-порту. В результате происходит подача напряжения выше допустимого и разрушение контроллера.
  • Как проверить
    Все самостоятельные измерения Вы проводите на свой страх и риск: если у вас нет подходящих навыков или инструментов - обратитесь в наш СЦ.

    Подключенное к USB-разъему устройство греется, возможно, постоянно горят светодиоды.
    На контроллере визуально определяются следы термического повреждения кристалла.
  • Что делать
    Это негарантийная поломка в результате неправильного использования (подключения) - исправляется в сервисном центре.
Дополнительные ресурсы
  1. wdtmon3-mini инструкция,
  2. wdtmon3 инструкция,
  3. wdtmon4 инструкция,
  4. Поддержка USB Watchdog в HiveOs,
  5. Техподдержка.