Howto

Armadilloでシリアル接続のFOMA通信モジュールを使う

Armadilloでシリアル接続のFOMA通信モジュールを使用する方法について説明します。

おおまかな手順は下記のようになります。

  1. LinuxカーネルにPPPの機能を組み込む
  2. atmark-distにpppdを組み込む
  3. PPP関連の設定を行なう
  4. イメージの書き込み
  5. pppdを使用してPPP通信をおこなう

なお、本 Howto では、以下の環境を想定しています。ご利用の環境に合わせて適宜読みかえてください。

また、atmark-distについての詳しい情報は製品マニュアルの「Atmark-dist 開発ガイド」をごらんください。

1. LinuxカーネルにPPPの機能を組み込む

以下のコマンドを入力してコンフィギュレーションを開始します。

[ATDE ~/atmark-dist]$ make menuconfig

各設定を以下のように行なってください。

Vendor/Product Selection  ---> 
--- Select the Vendor you wish to target
(AtmarkTechno) Vendor
--- Select the Product you wish to target
(Armadillo-220.Base) AtmarkTechno Products 

Kernel/Library/Defaults Selection  --->
--- Kernel is linux-2.6.x
(default) Cross-dev
(None) Libc Version
[*] Customize Kernel Settings (NEW)
[*] Customize Vendor/User Settings (NEW)

Linuxカーネルのコンフィギュレーションで以下のデバイスドライバを組み込みます。

  • PPP (point-to-point protocol) support
  • PPP support for async serial ports
Device Drivers  --->
  Networking support  --->
    <*> PPP (point-to-point protocol) support
    <*>   PPP support for async serial ports

2. atmark-distにpppdを組み込む

atmark-distのコンフィギュレーションでpppdを組み込みます。

Network Applications  --->
  [*] pppd

3. PPP関連の設定を行なう

PPP関連の設定を行ないます。ここでのおおまかな手順は下記のようになります。

3-1. PPPのデバイスノードを作成
3-2. romfsディレクトリの作成
3-3. ロックファイル用ディレクトリの作成
3-4. PPPの設定ファイルを編集
3-5. イメージファイルの作成

3-1. PPPのデバイスノードを作成

PPPのデバイスノードを作成します。atmark-dist内の以下のファイルに追記してください。

vendors/AtmarkTechno/Armadillo-220.Base/ext2_devtable.txt

/dev/ppp           c      660    0     0     108     0       0       0     -

3-2. romfsディレクトリの作成

romfsディレクトリを生成するためにatmark-distをビルドします。以下のコマンドを入力してください。

[ATDE ~/atmark-dist]$ make all

3-3. ロックファイル用ディレクトリの作成

pppdは/var/lock/ディレクトリにロックファイルを作成します。Armadilloにはデフォルトでこのディレクトリが作成されないため追加します。

[ATDE ~/atmark-dist]$ mkdir romfs/var/lock

3-4. PPPの設定ファイルを編集

romfsディレクトリ内にあるPPPの設定ファイルを編集します。以下はプロバイダにはmoperaを指定た場合の設定例です。

romfs/etc/ppp/options

lock
defaultroute
name mopera@mopera.ne.jp

romfs/etc/ppp/pap-secrets

# Secrets for authentication using PAP
# client        server  secret                  IP addresses
mopera@mopera.ne.jp * mopera

romfs/etc/ppp/ppp-on-dialer

#!/bin/sh
#
# This is part 2 of the ppp-on script. It will perform the connection
# protocol for the desired connection.
#
exec chat -s -v -t 60                                   \
        TIMEOUT         3                               \
        ABORT           '\nBUSY\r'                      \
        ABORT           '\nNO DIALTONE\r'               \
        ABORT           '\nNO ANSWER\r'                 \
        ABORT           '\nRINGING\r\n\r\nRINGING\r'    \
        ''              AT                              \
        OK              ATZ                             \
        TIMEOUT         30                              \
        OK              ATD*99\#                        \
        CONNECT         '\d\c'                          \

3-5. イメージファイルの作成

修正したPPPの設定ファイルなどが含まれたイメージを作成します。以下のコマンドを入力してください。

[ATDE ~/atmark-dist]$ make image

4. イメージの書き込み

作成したカーネル、ユーザランドそれぞれのイメージファイルをフラッシュメモリに書き込みます。

ここまでの手順で作成したカーネルとユーザランドのイメージファイルを以下からダウンロードすることができます。

イメージファイルの書き替え方法についてはお使いのArmadilloのソフトウェアマニュアルを参照してください。

5. pppdを使用してPPP通信をおこなう

FOMAデバイスとArmadilloをシリアルケーブルで接続して、FOMAデバイスにACアダプタを接続します。以下はシリアルのボーレートを19200bpsに設定した場合のコマンド例です。

[a220]# pppd /dev/ttyAM0 19200 connect /etc/ppp/ppp-on-dialer

FOMA UM02-KO専用アダプタセットは、DIPスイッチによってシリアルのボーレートを変更することができます。19200bpsに設定する場合はDIPスイッチを以下の表のように設定します。DIPスイッチの設定を変更した場合は、FOMA UM02-KO専用アダプタセットを再起動しなければ設定が有効にならないので注意してください。

DIPスイッチ番号 DIPスイッチ設定
1 ON
2 ON
3 ON