12

我有一个运行未连接到互联网(离线系统)的自定义服务器的 Raspberry Pi。

我想通过 USB 线将 Android 设备连接到 rPi 并与之通信。

由于 Raspberry Pi 未连接到 Internet,因此它没有 IP 地址(通过 DHCP 提供)。

如何使用通过 USB 连接的 Android 设备与 rPi 通信?

也许是本地 DHCP 服务器?

谢谢

4

2 回答 2

6

按照这个链接。您只需为其配置一次 RPi,就可以开始使用了。

这是做什么的:

  1. 允许您将 Android 设备用作 Raspberry Pi 的键盘输入和终端显示器

  2. 允许您将 Raspberry PI 连接到 Android 设备的 WiFi(3G 未经测试,但应该可以工作)。

背景:

我喜欢真正便携的 Raspberry Pi 盒子的想法。我想做一个,但我没有兼容的 WiFi 加密狗,也没有无线键盘和鼠标。即使我做了所有这些事情,我想通过让我的网络和输入都通过同一个端口来为自己节省额外的 USB 端口。我想接下来要做的就是设置某种 VNC 服务器并通过 Droid 连接到 Pi 的 GUI。

我的构建:

  • 树莓派 v2 (Linux raspberrypi 3.1.9+ #125 PREEMPT)
  • Asus Transformer Prime (Android 4.1.1. Jelly Bean)
  • Yoobao“长征”-11200mA 1A / 2A电池(好用10+小时!)
  • VX ConnectBot 终端模拟器(Google Play 商店免费)
  • 黑客键盘 - 因为我喜欢完整的标签(Google Play 商店免费)

假设:

  • 您的 PI 配置为在启动时运行 SSHd
  • 您正在使用默认的 Pi 用户名/密码
  • 您的 Android 设备通过 WiFi/3G 连接互联网并且已启用

怎么做:

  1. 将以下内容添加到 /etc/network/interfaces

    iface usb0 inet static
    address 192.168.42.42
    netmask 255.255.255.0
    network 192.168.42.0
    broadcast 192.168.42.255
    
  2. 关闭你的 Pi

  3. 通过 USB 数据线将您的 Android 设备连接到您的 Pi

  4. 给你的 Pi 加电……等一下。

  5. 在您的 Android 设备上,转到设置/无线和网络/更多/网络共享和便携式热点...单击“USB 网络共享”

  6. 启动 VX ConnectBot 和 SSH "pi@192.168.42.42"

  7. 继续按回车键,直到它要求您输入密码。输入它。

    恭喜-您现在应该可以使用软件键盘对 Pi 进行终端访问……有点。我的似乎每分钟左右都会断开会话 - 非常烦人。

    现在设置路由,以便您的 Pi 可以通过您的 Android 设备看到世界。

  8. 扎根自己

    sudo su -
    
  9. 检查您的 Android 设备正在使用哪个 IP 地址

    arp -a
    

    我的是 192.168.42.129

  10. 添加一条默认路由,将您的 Pi 中的所有流量指向您的 Android 设备。值得注意的是,这个静态路由是临时的,重启你的 Pi 后将无法生存。我把它留成这样是因为我不知道 Android 是否喜欢经常更改它的系绳网关地址。如果您已经走到了这一步,我假设您可以弄清楚如何在需要时使静态路由永久化:)

    route add default gw 192.168.42.129 usb0
    
  11. 测试它!

    ping http://www.google.com
    
于 2014-04-01T11:19:55.460 回答
1

设置静态 ip 不起作用(总是设置一个的 dhcp)。在手机上,您可以在此处查看如何检索 IP 地址:Android 手机 USB 共享后如何获取系统 IP 地址?

于 2018-03-26T17:58:45.343 回答