0

我有一个 BBB、一个来自 Adafruit 的 Fona 和一个 LycaMobile 3G Sim 卡,我想使用这个 3G sim 将 BBB 连接到互联网。我遵循:本教程来自 adafruit这样做。

但是要连接到我的 APN,我需要设置用户名和密码。所以我这样做了:

在我的/etc/ppp/peers/fona中:
而不是
noauth
我放:
auth user lmfr name lycamobile

在我的/etc/ppp/chap-secrets以及我的etc/ppp/pap-secrets中我输入:

"lmfr"    *    "plus"

但是当我这样做时出现以下错误:

sudo pon fona

/usr/sbin/pppd: The remote system is required to authenticate itself
/usr/sbin/pppd: but I couldn't find any suitable secret (password) for it to use to do so
/usr/sbin/pppd: (None of the available passwords would let it use an IP address)

有谁知道如何解决此问题或通过 APN 身份验证连接到 Fona 的其他方式?

4

2 回答 2

1

即使严格按照Adafruit FONA 设置说明在 Raspberry Pi 2 和 3 上使用 FONA 进行身份验证,以下步骤帮助我让它在两个 Pi 上工作 - 基于新安装的 raspbian/debian stretch 操作系统。为您的 BBB 采用以下内容:

  • 更新操作系统:

    sudo apt-get update
    sudo apt-get dist-upgrade
    
  • 安装必要的软件包:

    sudo apt-get install ppp screen 
    
  • 按照 Adafruit FONA 设置说明中的说明将 FONA 板连接到 Pi/BBB
  • 确保您禁用内核对硬件串行连接的使用!

    Pi2: follow Adafruit description
    Pi3: "sudo raspi-config" > "Interfacing Options" > "Serial"
    > "...login shell... over serial?" NO
    > "...serial port hardware enabled?" YES
    
  • 退出/完成 raspi 配置和
  • 查看

    sudo nano /boot/config.txt
    
  • 如果包含行enable_uart=1。如果没有,请将其添加为新行并保存

    [Ctrl]+[x], [y], [Enter] > reboot!
    
  • 为您的 Pi/BBB 找到正确的串行端口。此命令可能会有所帮助 - 它显示所有可用端口:

    ls /dev
    
  • 例子:

    Pi2: "/dev/ttyAMA0"
    Pi3: "/dev/serial0"
    BBB: "/dev/tty04" (as stated at Adafruit)
    
  • 确保 FONA 在相应的串行端口上进行应答 - 在此示例中为 Pi3:

    screen /dev/serial0 115200
    
  • 应该出现黑屏(终端窗口)。写

    AT [Enter]
    
  • 你应该得到好的回应。如果您没有得到“OK”,只需断开电池,然后重新连接,再试一次!您可以随时通过以下方式退出终端窗口

    [Ctrl]+[A]
    :quit [Enter]
    

一旦 FONA 板通过串行连接进行应答,蜂窝连接(尤其是身份验证)就是目标。在“fona”中将 noauth 更改为 auth 对我没有帮助,也没有编辑“chap-secrets”和/或“pap-secrets”。在“fona”文件中包含 3 个 APN 值:

    sudo -i
    cd /etc/ppp/peers
    nano fona
  • 在“连接”行中输入正确的 APN 名称,就像提到的 Adafruit 一样:

    connect "/usr/sbin/chat ... -T T-Mobile"
    
  • 并将“T-Mobile”替换为您的 APN 名称。确保在下一个块中仅取消注释一行,在成功测试串行连接时包含与上面完全相同的串行端口(在本例中再次为 Pi3 端口)

    /dev/serial0
    
  • 现在在文件末尾添加以下部分以进行 fona-file 身份验证:

    #Authentication
    user abcd@efgh.dom << here goes the providers APN user name
    password 1a2b3d4e << here goes the providers APN password 
    
  • 保存并退出文件并退出超级用户模式

    [Ctrl]+[x], [Y], [Enter]
    exit [Enter]
    
  • 至少试一试,如 Adafruit 所述

    sudo pon fona
    
  • 如果红色 LED 开始每秒闪烁两次,您就完成了!如果没有,请遵循 Adafruit 故障排除部分,这应该可以解决丢失的点点滴滴。

基本部分是适当的串行连接,并且 - 一旦工作 - “fona”文件中的身份验证

尤其是蜂窝连接和认证,一旦建立串行连接,BBB 应该可以采用。

于 2018-03-26T21:54:22.643 回答
0

这是我所做的:

  1. 我确保/dev/ttyO4添加capemgr.enable_partno=BB-UART4uEnv.txt后我可以看到
  2. 我安装了ppp、screen、elinks、jdk1.8-linux-arm 和 librxtx-java
  3. 我使用了angerionelectron 的 fona 库。所以我在我的电脑上下载了这个库并通过“ant jar”构建它,它生成了一些 jar 文件。
  4. 我创建了一个 Main.java 文件,我在其中放置了这个:

    公共类主要{ //确保您可以在 Beagle Bone Black 上看到 /dev/ttyO4 或在 raspberryPi 上看到 /dev/ttyAMA0 私有静态最终字符串 PORT = "/dev/ttyO4"; 私人静态最终整数波特= 115200;

    //Credentials for Lycamobile Wireless required for testing GPRS.
    private static final String APN = "data.lycamobile.fr";
    private static final String USER = "lmfr";
    private static final String PWD = "plus";
    private static final String SMTP = "smtp.lycamobile.fr";
    

    公共静态无效主要(字符串 [] 参数) { 尝试 { fona.open(端口,波特率); testGprsHttpGet(); fona.close(); } 捕获(异常 e) { System.out.println("异常" + e); } } 公共静态无效 testGprsHttpGet() 抛出 FonaException { System.out.println("gprsHttpGet"); fona.gprsEnable(APN,用户,密码);

        String response = fona.gprsHttpGet("http://httpbin.org/user-agent");
            if (!response.contains("SIMCOM_MODULE")) {
               System.out.println("Fails");
            }
            else{
               System.out.println(response);
            }
          }
        }
    

Also created a simple exec.sh file :

JAVA_OPT="-Djava.library.path=/usr/lib/jni -Dgnu.io.rxtx.SerialPorts=/dev/ttyO4" javac -cp .:fona-0.92.jar:fona.jar:RXTXcomm-2.2pre2.jar:fona-0.92-sources.jar Main.java java $JAVA_OPT -cp .:fona-0.92.jar:fona.jar:RXTXcomm-2.2pre2.jar:fona-0.92-sources.jar Main

我将所有这些文件放在一个文件夹中: fona-0.92.jar fona.jar RXTXcomm-2.2pre2.jar fona-0.92-sources.jar Main.java并将文件夹复制到 BBB

  1. 启动了我的脚本 exec.sh 就是这样。在输出中我可以看到:
    { "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36" }

NET 指示灯每秒闪烁两次。

希望这对其他人有帮助。

于 2015-11-07T22:22:54.937 回答