LoginSignup
1
0

nRF9160を使ってPPP接続する実験

Posted at

備忘録

NCS v2.6.0 のサンプルアプリケーション ModemShell を使用して、
Ubuntu Desktop(LTS 22.04.1)から UART 経由で PPP 接続できるか実験してみた。

ModemShell

UARTが2ポート必要。

1つは ModemShell 用
1つは PPP 用

例えば、デフォルトで uart0 がコンソール用に設定されていて uart1 を ppp 用にするには、
zephyr,ppp-uart = &uart1;
を設定してあげる。
ボーレートは 1000000 にしてみた。
115200でも大丈夫だった。
ハードウエアフロー制御の指定は外しておいた。

/ {
	chosen {
		zephyr,ppp-uart = &uart1;
	};
};
&uart1 {
    status = "okay";
    current-speed = <1000000>;
    pinctrl-0 = <&uart1_default>;
    pinctrl-1 = <&uart1_sleep>;
    pinctrl-names = "default", "sleep";
};

&pinctrl {
	uart1_default: uart1_default {
		group1 {
			psels = <NRF_PSEL(UART_TX, 0, 7)>,
				<NRF_PSEL(UART_RX, 0, 5)>;
		};
	};
	uart1_sleep: uart1_sleep {
		group1 {
			psels = <NRF_PSEL(UART_TX, 0, 7)>,
				<NRF_PSEL(UART_RX, 0, 5)>;
			low-power-enable;
		};
	};
};

prj.confに。overlay-pppを追記する。
デフォルトで uart0が ppp ようになっているので。
uart1 に変更する場合は。

CONFIG_UART_1_INTERRUPT_DRIVEN=n
CONFIG_UART_1_ASYNC=y
CONFIG_UART_1_NRF_HW_ASYNC=y
CONFIG_UART_1_NRF_HW_ASYNC_TIMER=1

のように0を1に変える必要がある。

PPP接続

nRF9160 の PPP UART 入出力は PPPの通信フレームが生で流れるので、PPPD の Modem操作関連の設定は不要となる。

(pppのインストール&設定の過程は省略)

nRF9160をUART接続して Ubuntuのコマンドライン上にて、pppd を起動する。

(PPP関連の詳細は他のサイトを参照してください)

接続したら、ping で疎通を確認して実験を終了。

以上、ご参考まで。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0