有没有办法在BBB和仅通过USB线连接的PC之间使用TCP / IP通信?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有没有办法在BBB和仅通过USB线连接的PC之间使用TCP / IP通信?相关的知识,希望对你有一定的参考价值。

无论如何在Beaglebone Black和仅通过USB线连接的PC之间使用TCP / IP通信?

我尝试使用连接到计算机的Beaglebone Black ADC使用USB电缆创建示波器。

我知道当我连接我的BBB(Beaglebone Black)时,我可以通过它的IP 192.168.7.2访问它,如果我在cmd上使用ipconfig(我使用的是Windows 10),我在本地网络上看到这个设备,如果我ping在这个IP上我收到了数据。但是在Beaglebone方面,我无法在其网络上看到我的计算机或ping到我的计算机本地地址。

此外,我尝试在我的PC和BBB之间使用基本的python套接字连接教程,这里(PC作为服务器,BBB作为客户端):

https://pymotw.com/2/socket/tcp.html

我在BBB上收到连接被拒绝。

请记住,我不是假装使用以太网电缆或WiFi模块来解决它。

答案

您可以发送传出ping,以便您知道可以建立TCP / IP连接。但是,这是一个传出连接,您希望接受和传入连接。

检查开发计算机上的防火墙设置,如果传入连接被拒绝,那么您将无法连接。传出的ping可能会通过防火墙,但传入的连接仍然可以被拒绝。因为你知道你可以连接我建议检查防火墙规则允许进行传入连接。

如果你需要进一步调试去获取Wireshark,看看有什么流量通过线路。

另一答案

您需要设置静态IP地址,以便BBB使用USB以太网连接。

Derek Molloy在这里解释:http://derekmolloy.ie/set-ip-address-to-be-static-on-the-beaglebone-black/

另一答案

我仍然在Arch Linux上通过RNDIS和Gadget Ethernet进行DHCP工作,但在Ubuntu上它可以完美运行。您可能需要一些额外的命令,但一般的想法是在beaglebone上使用g_ether启用小工具以太网。

我假设你正在使用Angstrom。您可能需要修改/etc/network/interfaces并确保它已配置为DHCP。

[BeagleBone Black]
insmod g_ether
echo "g_ether" > /etc/modules-load.d/gadget_ethernet
iface usb0 inet dhcp (/etc/network/interfaces)

连接到Ubuntu上的USB端口。使用Ubuntu共享Internet连接(需要IPv4完成)。确保已启用BeagleBone SSH服务并在Ubuntu和BeagleBone上打开端口。

[Ubuntu]
nmap 10.42.0.0/24

ssh到Ubuntu通过USB给BeagleBone的IP地址。

我安装了Arch Linux Arm。对于您的应用程序,我推荐Arch Linux Arm,它安装时没有图形用户界面。

以上是关于有没有办法在BBB和仅通过USB线连接的PC之间使用TCP / IP通信?的主要内容,如果未能解决你的问题,请参考以下文章

BBB 通过USB虚拟的RNDIS与PC的vmware ubuntu 进行网络通信

adb通过wifi连接android设备

通过 RS485 连接两台 PC(USB 到 RS485 转换器)

笔记本使用console线(console-usb)连接交换机

adb 连接 Android 手机的两种方式

使用串口线真机调试Linux内核