UHIDCTL是控制USB HID继电器的实用性。
该实用程序旨在为USB HID Power继电器工作,可以在eBay或Amazon上找到:
For Smart Home 5V USB Relay Programmable Computer Control
该实用程序用1、2、4、8端口支持此类设备(16个端口设备将需要修补才能工作)。经过测试的硬件具有以下特征(n是端口数):
| 财产 | 价值 |
|---|---|
| 制造商 | www.dcttech.com |
| 产品 | usbrelay {n} |
| 供应商ID | 0x16C0 |
| 产品ID | 0x05df |
测试了该实用程序以编译和工作,并在Linux(Ubuntu/Debian,Redhat/Fedora/Centos)和MacOS上工作。也应该为Windows编译它 - 如果您成功地这样做,请报告。
首先,您需要安装库Hidapi:
sudo apt-get install libhidapi-devsudo yum install hidapi-develbrew install hidapi获取uhidctl来源并编译:
git clone https://github.com/mvp/uhidctl
cd uhidctl
make
这应该产生uhidctl二进制。
您可以使用:
sudo make install
在Linux上,您应该配置udev USB权限(否则,您必须使用sudo uhidctl作为root运行它)。只需将以下行添加到file /etc/udev/rules.d/52-usb.rules :
SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", MODE="0666"
对于您的udev规则更改以生效,重新启动或运行:
sudo udevadm trigger --attr-match=subsystem=usb
要列出所有兼容继电器,请在没有参数的情况下运行Uhidctl:
uhidctl
控制继电器状态:
uhidctl -a 1 -p 2
这意味着在默认的USB继电器上操作,关闭端口2( -p 2 )上的电源( -a 0或-a off )。支持的动作为0 / 1 (或off / 2 / on / cycle )。 cycle意味着关闭电源,等待一些延迟(可配置为-d ),然后重新打开。
在Linux上,您可能必须使用sudo运行它,或配置udev USB权限。
如果连接了一个以上的USB继电器,则应选择特定的继电器以使用选项-l进行控制。
版权(C)2017-2020 Vadim Mikhailov
该文件可以根据GNU通用公共许可证版本2的条款和条件分配。