Armadilloをシリアル・イーサネット・コンバーターに構成する

Armadilloをシリアル・イーサネットコンバーターとして構成する手順をまとめます。

ATDE3

まずはソースをwgetして展開します。

wget http://armadillo.atmark-techno.com/files/downloads/armadillo-420/source/dist/atmark-dist-20100603.tar.gz
wget http://armadillo.atmark-techno.com/files/downloads/armadillo-420/source/kernel/linux-2.6.26-at10.tar.gz
tar -zvxf atmark-dist-20100603.tar.gz 
tar -zvxf linux-2.6.26-at10.tar.gz 

次いで、シンボリックリンクを作成。

ln -s atmark-dist-20100603 atmark-dist
cd atmark-dist
ln -s ../linux-2.6.26-at10 ./linux-2.6.x

make configはマニュアル通り。

make config

menuconfigでseri2ethを選択します。

make menuconfig





最後にmake。かなり時間がかかります。

make

ttymxc1をコメントアウトしてシリアルインターフェースを解放します。

vi romfs/etc/inittab

::sysinit:/etc/init.d/rc
#::respawn:/sbin/getty -L 115200 ttymxc1 vt102
::shutdown:/etc/init.d/reboot
::ctrlaltdel:/sbin/reboot

イメージファイルに修正を反映させます。

make image

開発中はtftpbootが便利なので、完成したイメージファイルをtftpサーバーのディレクトリにコピー。

sudo cp images/*.gz /var/lib/tftpboot/

Armadillo(シリアル接続)

Armadilloを保守モードで起動して、tftpbootに設定変更

hermit> setbootdevice tftp [ArmadilloのIPアドレス] [ATDEのIPアドレス] --kernel=linux.bin.gz --userland=romfs.img.gz
hermit> l
bootdevice: tftp [ArmadilloのIPアドレス] [ATDEのIPアドレス]  --kernel=linux.bin.gz --userland=romfs.img.gz

そして、起動。

hermit> b

Armadillo(telnet接続)

まずは、seri2ethの設定ファイルを作成します。

su -
vi /etc/config/serial.conf

SOCKPROTO 0
BAUDRATE 19200
DATALEN 3
PARITY 2
STOPBIT 0
FLOWCTRL 0
PORTNO 21347

seri2ethが自動起動するよう、スタートアップスクリプトを作成し実行権限を与えます。

vi /etc/config/rc.local

#!/bin/sh
seri2eth -d /dev/ttymxc1

chmod 755 /etc/config/rc.local

このまま再起動すると今作成した設定ファイルが消えてしまうので、忘れずにコンフィグ領域に保存します。

flatfsd -s

さて、再起動

reboot

再度起動後、telnetで接続し、プロセスを確認。

ps ax|grep seri
 1278 root        488 S   seri2eth -d /dev/ttymxc1 
 1322 guest       692 S   grep seri              

Socket Debugger & TeraTerm

Socket Debuggerを起動して送信先にArmadilloを設定します。

TeraTermを起動して、シリアルポートの設定をArmadilloとあわせます。

Socket Debuggerからデータ送信

TeraTermに表示された。

TeraTermに文字を入力

Socket Debuggerに表示されて、テスト完了。