我想请你帮忙。这是我在堆栈溢出中的第一篇文章,所以我希望社区能帮助我:)
对该问题的说明:
我有太阳能充电控制器Epever,它能够通过RS485进行通信。接下来,我有Raspberry Pi,我想用它来读取SCC的统计数据。这两个设备通过USB连接到串行电缆(总线001设备005: ID 04e2:1411 Exar Corp. . XR21B1411 )。
我在Pi中安装了Node-Red服务器,并根据这个项目有一个准备好的仪表板:https://github.com/AdamWelchUK/NodeRedEPEverDashboard。
这个节点-红色流使用Modbus (节点-红色-connected扩展)节点,这些节点被设置为正确的串行端口,但是它没有接收任何数据(尽管节点上写着“已连接”)。
在问这个问题之前,我做了一些广泛的研究,我发现问题实际上是在Raspberry的串行驱动程序中。目前,它被设置为:
ls -l /dev/tty*
crw-rw---- 1 root dialout 166, 0 Jun 8 12:54 /dev/ttyACM0
显然,要想发挥作用,就必须这样:
crw-rw---- 1 root dialout 166, 0 Jun 8 12:54 /dev/ttyUSB0
因此,我在这里找到了如何切换COM驱动程序的说明:https://github.com/kasbert/epsolar-tracer
编译并安装通用usb串行驱动程序模块。
# make
# insmod ./xr_usb_serial_common.ko确保acm acm模块没有加载(假设不需要它)。
# echo blacklist cdc-acm > /etc/modprobe.d/blacklist-cdc-acm.conf
# update-initramfs -u我知道我应该首先使用make命令编译驱动程序,但我不知道如何编译。Insmod给了我拒绝错误的许可。此刻我完全迷失了方向
我试过的是:
-bash: /etc/modprobe.d/blacklist-cdc-acm.conf: Permission denied
我对Linux非常陌生,所以任何帮助都是非常感谢的。我试着把这篇文章写得尽可能简短,所以如果你需要更多的信息,我很乐意提供……
提前谢谢你的帮助:-)
编辑:我也尝试使用"sudo“的所有命令。还是没有运气。
发布于 2022-06-08 23:44:43
使用sudo执行以下命令:
sudo insmod ./xr_usb_serial_common.kohttps://stackoverflow.com/questions/72545344
复制相似问题