More
referral
Increase your income with Hive. Invite your friends and earn real cryptocurrency!

OpenDev Watchdog

Cкрипт проверки интернета для Open Dev

#!/bin/bash
DEVICEPORT=/dev/ttyACM0
PINGIP=8.8.8.8
NEEDREBOOT=0
sleep 10;
while true
do
if ping -c 1 $PINGIP > /dev/null
then.
<–>NEEDREBOOT=0;.
<–>echo -n “~U” > $DEVICEPORT;
<–>sleep 5;
else
<–>if [ “$NEEDREBOOT” == “1” ].
<–>then
<–> echo -n “~T2” > $DEVICEPORT;
<–> sleep 2;
<–> break;
<–>fi
<–>NEEDREBOOT=1;
<–>sleep 3;
fi
done

Может кто допишет, чтобы было несколько попыток проверки узла и только потом жестка перезагрузка? И осталось понять как его в автозагрузку Hive OS поставить правильно.

1 Like

Может кто допишет, чтобы было несколько попыток проверки узла и только потом жестка перезагрузка? И осталось понять как его в автозагрузку Hive OS поставить правильно.

#!/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 -p " 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

Взято из http://blog.open-dev.ru/wdt-manual

1 Like

кто знает как посмотреть лог в котором будет понятно скользк раз именно вотчдог сработал ?

1 Like

Что-то не могу прикрутить скрипт к HiveOS. Риг “вешается” при переходе на другой майнер, а watchdog не реагирует на это зависание. Админка показывает что риг в “отвале”. По SHH не пускает.

1 Like

Присоединяюсь к grafvadim, у меня точно такие же симптомы, только у меня ферма может зависнуть сама по себе, причем странно то, что Вотчдог после зависания начинает мигать красным индикатором - но ничего не происходит. Вотчдоги подключены правильно, проверял командами из первого поста Дмитрия, по команде power отключает машину, по reset перезагружает, а вот в самостоятельной работе при зависаниях такая вот картина.

Is there somewhere to get these in the US?

[quote=“fjl;699”]А подскажите как настроить вот такую штуку https://ru.aliexpress.com/item/Best-USB-Watchdog-Computer-Crash-Blue-Screen-Timeout-Automatic-Reboot-ASIC-Bitcoin-Miner-Mining-Antminer-s7/32830159935.html

It’s USB HID device, and free driver, free software for work. Apply to Windows (XP~Win10, 32 bit & 64 bit) system, and Linux system. Compact directly into the USB and RESET pins on the motherboard, Hardware reset to ensure effective restart of computer. Multiple applications for different user needs. Can also be used as ‘dongle’, Can be customized with the dongle functions.

через HID драйвер

linux толи видит толи нет так и не понял

вот такие параметры на windows имеет
[spoiler]
=========================== USB Port13 ===========================

Connection Status : 0x01 (Device is connected)
Port Chain : 1-13
Properties : 0x01
IsUserConnectable : yes
PortIsDebugCapable : no
PortHasMultiCompanions : no
PortConnectorIsTypeC : no

  ======================== USB Device ========================

    +++++++++++++++++ Device Information ++++++++++++++++++

Device Description : USB-устройство ввода
Device Path : \?\usb#vid_0471&pid_2379#5&1e7d8db7&0&13#{a5dcbf10-6530-11d2-901f-00c04fb951ed}
Device ID : USB\VID_0471&PID_2379\5&1E7D8DB7&0&13
Hardware IDs : USB\VID_0471&PID_2379&REV_0100 USB\VID_0471&PID_2379
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0025 (GUID_DEVCLASS_HIDCLASS)
Driver : \SystemRoot\System32\drivers\hidusb.sys (Version: 10.0.15063.0 Date: 2017-03-18)
Driver Inf : C:\Windows\inf\input.inf
Legacy BusType : PNPBus
Class : HIDClass
Class GUID : {745a17a0-74d3-11d0-b6fe-00a0c90f57da} (GUID_DEVCLASS_HIDCLASS)
Interface GUID : {a5dcbf10-6530-11d2-901f-00c04fb951ed} (GUID_DEVINTERFACE_USB_DEVICE)
Service : HidUsb
Enumerator : USB
Location Info : Port_#0013.Hub_#0001
Location IDs : PCIROOT(0)#PCI(1400)#USBROOT(0)#USB(13), ACPI(SB)#ACPI(PCI0)#ACPI(XHC_)#ACPI(RHUB)#ACPI(HS13)
Container ID : {b250e07f-be7c-11e7-a51d-806e6f6e6963}
Manufacturer Info : (Стандартные системные устройства)
Capabilities : 0x84 (Removable, SurpriseRemovalOK)
Status : 0x0180600A (DN_DRIVER_LOADED, DN_STARTED, DN_DISABLEABLE, DN_REMOVABLE, DN_NT_ENUMERATOR, DN_NT_DRIVER)
Problem Code : 0
Upper Filters : libusb0
Power State : D3 (supported: D0, D3, wake from D0)
Child Device 1 : HID-совместимое устройство
Device ID : HID\VID_0471&PID_2379\6&F769861&0&0000
Class : HIDClass

    ---------------- Connection Information ---------------

Connection Index : 0x0D (13)
Connection Status : 0x01 (DeviceConnected)
Current Config Value : 0x01
Device Address : 0x03 (3)
Is Hub : 0x00 (no)
Number Of Open Pipes : 0x02 (2)
Device Bus Speed : 0x01 (Full-Speed)
Pipe0ScheduleOffset : 0x00 (0)
Pipe1ScheduleOffset : 0x00 (0)

    --------------- Connection Information V2 -------------

Connection Index : 0x0D (13)
Length : 0x10 (16 bytes)
SupportedUsbProtocols : 0x03
Usb110 : 1 (yes)
Usb200 : 1 (yes)
Usb300 : 0 (no)
ReservedMBZ : 0x00
Flags : 0x00
DevIsOpAtSsOrHigher : 0 (Is not operating at SuperSpeed or higher)
DevIsSsCapOrHigher : 0 (Is not SuperSpeed capable or higher)
DevIsOpAtSsPlusOrHigher : 0 (Is not operating at SuperSpeedPlus or higher)
DevIsSsPlusCapOrHigher : 0 (Is not SuperSpeedPlus capable or higher)
ReservedMBZ : 0x00

---------------------- Device Descriptor ----------------------

bLength : 0x12 (18 bytes)
bDescriptorType : 0x01 (Device Descriptor)
bcdUSB : 0x200 (USB Version 2.00)
bDeviceClass : 0x00 (defined by the interface descriptors)
bDeviceSubClass : 0x00
bDeviceProtocol : 0x00
bMaxPacketSize0 : 0x40 (64 bytes)
idVendor : 0x0471
idProduct : 0x2379
bcdDevice : 0x0100
iManufacturer : 0x00 (No String Descriptor)
iProduct : 0x00 (No String Descriptor)
iSerialNumber : 0x00 (No String Descriptor)
bNumConfigurations : 0x01 (1 Configuration)

------------------ Configuration Descriptor -------------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x02 (Configuration Descriptor)
wTotalLength : 0x0029 (41 bytes)
bNumInterfaces : 0x01 (1 Interface)
bConfigurationValue : 0x01 (Configuration 1)
iConfiguration : 0x00 (No String Descriptor)
bmAttributes : 0x80
D7: Reserved, set 1 : 0x01
D6: Self Powered : 0x00 (no)
D5: Remote Wakeup : 0x00 (no)
D4…0: Reserved, set 0 : 0x00
MaxPower : 0x32 (100 mA)

    ---------------- Interface Descriptor -----------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x04 (Interface Descriptor)
bInterfaceNumber : 0x00
bAlternateSetting : 0x00
bNumEndpoints : 0x02 (2 Endpoints)
bInterfaceClass : 0x03 (HID - Human Interface Device)
bInterfaceSubClass : 0x00 (None)
bInterfaceProtocol : 0x00 (None)
iInterface : 0x00 (No String Descriptor)

    ------------------- HID Descriptor --------------------

bLength : 0x09 (9 bytes)
bDescriptorType : 0x21 (HID Descriptor)
bcdHID : 0x0110 (HID Version 1.10)
bCountryCode : 0x00 (00 = not localized)
bNumDescriptors : 0x01
Descriptor 1:
bDescriptorType : 0x22 (Class=Report)
wDescriptorLength : 0x0027 (39 bytes)
Error reading descriptor : ERROR_GEN_FAILURE

    ----------------- Endpoint Descriptor -----------------

bLength : 0x07 (7 bytes)
bDescriptorType : 0x05 (Endpoint Descriptor)
bEndpointAddress : 0x81 (Direction=IN EndpointID=1)
bmAttributes : 0x03 (TransferType=Interrupt)
wMaxPacketSize : 0x0010 (16 bytes)
bInterval : 0x0A (10 ms)

    ----------------- Endpoint Descriptor -----------------

bLength : 0x07 (7 bytes)
bDescriptorType : 0x05 (Endpoint Descriptor)
bEndpointAddress : 0x01 (Direction=OUT EndpointID=1)
bmAttributes : 0x03 (TransferType=Interrupt)
wMaxPacketSize : 0x0010 (16 bytes)
bInterval : 0x0A (10 ms)

  -------------------- String Descriptors -------------------

String descriptors are not available (because the device is in low power state)
[/spoiler]

[/quote]

http://www.my-arduino.ru/kitajskij-watchdog-storozhevoj-tajmer-dlya-majning-fermy-nastraivaem-v-linux-na-primere-hiveos/

у меня просто система виснет, SSH и все остальное не работает, на команды не отвечает. но вачдог моргает зеленым и не перезагружает систему. когда фермы в 20 км от меня, это очень начинает бесить

1 Like

У меня забавная ситуация. Есть ферма на 13 картах RX580 и материнке Asus B250 MINING EXPERT и трёх БП. В принципе ферма работает достаточно стабильно, но при каком-либо сбое после перезагрузки бОльшая часть карт не поднимается. Показывает хешрейт 2-4 мегахеша. Опытным путём было выявлено, что гарантированно поднимаются карты, запитанные от основного БП, а от ведомых как повезёт, да и те со временем вылетают на те же самые 2-4 Мх. Спасает только отключение питания на несколько секунд. Подключение ведомых через обычные синхронизаторы результата не дало.
Покурив мануал к ватчдогу, я нашёл решение - команда /hive/opt/opendev/watchdog-opendev power прекрасно отрабатывается, нескольких секунд оффа вполне хватает для перезагрузки карт, и ферма поднимается абсолютно корректно.
К сожалению, автоматизировать этот процесс не получается. Хотя…

Такой вопрос к Дмитрию - а нельзя ли в хайвовский ватчдог добавить функцию командной строки? Ибо, как я догадываюсь, подобные проблемы с перезагрузкой по питанию далеко не у меня одного (хотя из порядка 50 ферм в нашем ДЦ такой глюк только на одной, грешу на связку материнка/карты), плюс подобная фича может помочь владельцам серверых или асиковых БП, которые тоже надо перезагружать вместе с АТХ (например с выхода “reset” ватчдога перезагружать серверный БП с помощью реле, а выходом “power” - материнку).
Подобный тюнинг добавил бы +100 левелов к автоматизации майнинга при небольших умственных затратах :wink:

И да, хотелось бы поблагодарить за хайвось, чувак, это реально круто и удобно!

1 Like

Вот скриптец на перле, который ребутит систему без всяких ватчдогов, если не может пропинговать роутер 192.168.1.1 (у кого то будет 192.168.0.1).
Записываем его в /etc/init.d/имя файла.
Например /etc/init.d/Reboot.pl
Не забываем chmod +x Reboot.pl
Добавляем его в автозагрузку выполнив команду
update-rc.d Reboot.pl defaults
И ребутим ферму, что бы он подхватился, в терминале пишем reboot

#!/usr/bin/perl
### BEGIN INIT INFO
# Provides: MyScript
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 2 3 4 5
#Default-Stop: 0 1 6
# Short-Description: …
# Description: …
### END INIT INFO

use Net::Ping;

while(1){
sleep 600

my $p = Net::Ping->new();

unless ($p->ping('192.168.1.1')) {

print `reboot`;

}

$p->close();
}
1 Like

Добрый день
как из командной строки линукса изменить параметр “время ожидания перед перезагрузкой”, который по умолчанию равен 5 минутам например на 1 минуту.

вот ответ техсаппорта
"Отправка строки в последовательный порт в о.с. Линукс может быть выполнена, например, посредством команды echo:
echo “Hello World” > /dev/ttyACM0

В документации к устройству (https://open-dev.ru/doc/usb-watchdog-pro2-2018.pdf) описан формат команды для настройки устройства (~W). Вам необходимо составить корректную конфигурационную строку согласно описанию (в частности, задав параметр №1 равным 1) и отправить ее в устройство, например, командой echo как указано выше.
Параметры по-умолчанию: 52532120300"
то есть как я понимаю мои параметры будут 52532120300
а как в hive это реализовать.
спасибо

updated -
ответ
Если Вы хотите оставить значения всех параметров по-умолчанию, изменив только время T1 с 5 минут до 1 минуты, то команда будет следующей:
echo “~W12532120300” > /dev/ttyACM0

(при условии что вачдог - единственный подключенный к системе вирутальный последовательный порт. Если таких устройств несколько - номер может быть другим - /dev/ttyACM1, /dev/ttyACM2 и.т.д.)

Обрататите внимание, что 1 минута - очень малое время ожидания. Убедитесь, что в течении минуты система с запасом успевает перезагрузиться и запустить управляющую программу. В противном случае получится вечный цикл перезагрузки.

2 Likes

подскажите , как исправить команду на перезагрузку в скрипте Hashrate watchdog?
Дело в том , что обычная перезагрузка рига не помогает на материнской плате Asus B250 Mining Expert . Требуется выключение и включение рига. для этого был куплен OpenDev watcdog pro2. И команда /hive/opt/opendev/watchdog-opendev power с этим справляется, но в ручном режиме. Хотелось бы чтобы при падении hashrate подавалась эта команда, и процесс бы автоматизировлся. Я Исправил в файле /hive/bin/wd cтроку перезагрузки, но почему то не помогло. Подскажите что не так?!

во первых, попробуйте просто
/hive/opt/opendev/watchdog-opendev power

во, вторых можно попробовать sreboot wakealarm
только уберите в начале sreboot
miner stop

во первых, попробуйте просто
/hive/opt/opendev/watchdog-opendev power
Тоесть убрать nuhup bash -c ?

да, именно

I made a video to help people accomplish this. I think it’s a great idea to use the watchdog instead of a command to reboot in the wd script.

3 Likes

Thanks. It helped me a lot. Usually the rig hangs, but WD is still “green”. Now I think it will solve that problem

1 Like

Отличная работа!
Работает как положено!
Спасибо!

Помогите разобраться! Система не видит вачдог WatchDog Pro2 хотя он установлен и мигает поочередно зеленым и красным. При вводе команды $ journalctl -u hive -b0 выдаёт Watchdogs OpenDev found: 0. что делать?? Соответственно все остальные команды не работают.