Armadilloフォーラム

Armadillo 640 USBシリアル変換ケーブルについて

eagle-ss

2018年5月16日 11時22分

いつもお世話になります、伊藤と申します。

Armadillo-640にてUSBシリアル変換ケーブル(SRC06USB)を
使用する方法を模索しております。

/dev/ttyUSB0(sdN?)

のようにUSBシリアル変換ケーブルのデバイスを表示させたいのですが
現状、反応いたしません。

調べた結果、カーネルコンフィギュレーション等を変更する必要があると出てきたのですが
make等色々試したみた結果カーネルコンフィギュレーションを変更する手順が見つからず
困っております。

環境としましてはatde7-i386からminicomでArmadillo-640を操作しております。

よろしければご助言よろしくお願い致します。

コメント

> 調べた結果、カーネルコンフィギュレーション等を変更する必要があると出てきたのですが
> make等色々試したみた結果カーネルコンフィギュレーションを変更する手順が見つからず
> 困っております。

Armadillo-640製品マニュアル 「17.2. イメージをカスタマイズする」 にmenuconfigで変更する
方法を記載しています。

https://manual.atmark-techno.com/armadillo-640/armadillo-640_product_ma…

SRC06USBはFTDIのチップを使っているので有効にするコンフィグは下記階層の
メニューから有効にすることができます。

このメニューの設定で有効になるconfigの定義は次の2つです。
CONFIG_USB_SERIAL_FTDI_SIO
CONFIG_USB_SERIAL

   -> Device Drivers                                                                                                                                                                                                                 │   
       -> USB support
          -> [*] USB Serial Converter support  <-Spaceで有効にして、Enterで選択
             ->  [*]   USB FTDI Single Port Serial Driver <-Spaceで有効にする

返信ありがとうございます。

マニュアルに記載されているのは見逃しておりました。
現状、linux-v4.14-at2.tar.gzをインストールし、atde7上でイメージをカスタマイズはできましたので、
後はマニュアルのイメージファイルの書き換え方法を見て
arumadiloに変更を加える予定です。

素早い対応、ありがとうございました。

追加で1点確認させて頂きたいのですが。

イメージファイルの書き換えの流れとしましては、
①atde7上で作成したLinuxカーネルイメージのuImageファイルをarumadiloに書き込み。

[armadillo ~]# mount /dev/mmcblk0p2 /mnt
[armadillo ~]# cp uImage-a600-v4.14-at[version] /mnt/boot/uImage
[armadillo ~]# umount /mnt

②保守モードからLinuxのカーネルイメージを指定

=> setenv image uImage
=> saveenv

で問題ないでしょうか?

現状、この方法でUSBの認識が上手くいかないのでどこか手順を間違えているのではと
考えております。

お手数掛けますが、ご教授よろしくお願い致します。

USBシリアル変換ケーブルを接続した時に、minicomで接続したArmadilloのコンソールに
何かメッセージは出ないでしょうか。
出ているものがあれば、そのままコピペして頂けるとヒントになります。

> 追加で1点確認させて頂きたいのですが。
>
> イメージファイルの書き換えの流れとしましては、
> ①atde7上で作成したLinuxカーネルイメージのuImageファイルをarumadiloに書き込み。
>
> [armadillo ~]# mount /dev/mmcblk0p2 /mnt
> [armadillo ~]# cp uImage-a600-v4.14-at[version] /mnt/boot/uImage
> [armadillo ~]# umount /mnt

microSDからではなく、eMMCから起動しているでしょうか。

もし、SDブートではなくeMMCから起動しているのであれば、
この3ステップは不要で

[armadillo ~]# cp uImage-a600-v4.14-at[version] /boot/uImage
[armadillo ~]# shutdown -Ph now

だけです。

> ②保守モードからLinuxのカーネルイメージを指定
>
> => setenv image uImage
> => saveenv

不要です。/boot/uImageという名前であれば、自動的に起動に使われます。

> 現状、この方法でUSBの認識が上手くいかないのでどこか手順を間違えているのではと
> 考えております。

uImage が自分でビルドしたものになっているか確認してみてください。
上の手順でuImageを書き込んだ後に起動した状態で、
unameの結果を確認するとカーネルをビルドした時間がわかります。

例)

[armadillo]# uname  -a
Linux armadillo 4.14-at2-dirty #44 Thu May 10 10:28:40 JST 2018 armv7l GNU/Linux

もし、ビルドした時間が正しかった場合は、更に確認のため期待したconfigの値が
設定されているか確認することができます。

例)

[armadillo]# zcat /proc/config.gz  | grep USB_SERIAL

これで、下記2つが "=y" となっているか確認してみてください。
されていなければmenuconfigから、実施した操作を教えてください。

CONFIG_USB_SERIAL
CONFIG_USB_SERIAL_FTDI_SIO

> お手数掛けますが、ご教授よろしくお願い致します。

返信ありがとうございます。

指摘事項を確認させて頂いたところ
USB_SERIALの設定がされておらず、イメージファイルの作成が失敗していたようです。

再度、イメージファイルを作成した所、無事USB変換ケーブルを認識致しました。

対応ありがとうございました。