Armadilloフォーラム

USBシリアル接続の確認

inuneko

2021年7月12日 14時14分

お世話になっております。
Armadilloiot-A6でUSBシリアル通信をしようとしています。
armadillo側にUSBを接続したのですが、接続の確認はできましたがデバイス名が確認できないのでarmadillo側で使用できるデバイスが無いのか有効化がされてないなどの設定の問題なのでしょうか?
もし設定の問題でしたら設定方法を教えてください。またデバイス確認の方法も合っているか不安なので教えていただけてら幸いです。

コメント

at_keitaro.takahashi

2021年7月12日 14時34分

高橋です。

以下を教えていただけますでしょうか。
・具体的に、どのような通信を行おうとしていますか
・Armadilloとの通信相手はどのようなデバイスでしょうか(PC,何らかのセンサ、モジュールなど)
・実施したデバイス確認の方法はどういった方法でしょうか(Armadilloでlsusbなどのコマンドを実行している場合、実行結果をコピー&ペーストしていただけると助かります)

よろしくお願いいたします。

inuneko

2021年7月12日 15時26分

お世話になっております高橋様。
> 以下を教えていただけますでしょうか。
> ・具体的に、どのような通信を行おうとしていますか
> ・Armadilloとの通信相手はどのようなデバイスでしょうか(PC,何らかのセンサ、モジュールなど)
実際はポータブル型ニオイセンサXP-329ⅢRとRS232Cを使用してarmadilloのUSBとシリアル通信をしようとしています。
今は試しにwindow10とシリアル通信をしようとしています。

ニオイセンサ: https://www.new-cosmos.co.jp/product/972/
> ・実施したデバイス確認の方法はどういった方法でしょうか(Armadilloでlsusbなどのコマンドを実行している場合、実行結果をコピー&ペーストしていただけると助かります)
armdilloにUSBを差し込みdmesgコマンドでUSBの接続を確認しました。
その後ttyコマンドでttyUSBがあるか確認しました。
lsusbはcommand not found になっているので今回は使用しませんでした。

ファイル ファイルの説明
dmesg.txt
tty.txt

at_keitaro.takahashi

2021年7月12日 15時58分

高橋です。

ttyコマンドは標準入力を表示するコマンドです。
ttyUSBが存在するか確認したい場合は、以下のコマンドで確認できます。

ls /dev/ttyUSB*

USBシリアル変換ケーブルが正しく認識できていた場合、シリアル通信ソフトウェアでボーレート(スピード)を38400に設定することでセンサと通信できるかと思われます。
以上、よろしくお願いいたします。

inuneko

2021年7月12日 16時26分

お世話になっております高橋様。

> ttyUSBが存在するか確認したい場合は、以下のコマンドで確認できます。
>

> ls /dev/ttyUSB*
> 

コマンドを入力したところttyUSBは存在しないらしいのでArmadilloの設定で確認できる方法がありましたら教えてください。

ファイル ファイルの説明
ls_dev.txt

at_keitaro.takahashi

2021年7月12日 16時32分

高橋です。

接続されているUSBシリアル変換ケーブルの型番を教えていただけますか。

inuneko

2021年7月12日 16時57分

お世話になっております高橋様。
>
> 接続されているUSBシリアル変換ケーブルの型番を教えていただけますか。
>
エムサーブ USB typeA to RS-232C D-sub 9ピン 0.8m HL-340のUSBシリアル変換ケーブル使用しています。

at_keitaro.takahashi

2021年7月12日 17時29分

高橋です。
該当のUSBシリアル変換ケーブルを使用するには、カーネルコンフィギュレーションでUSB_SERIAL_CH341を有効にする必要があります。
製品マニュアルの以下を参考のうえ、USB_SERIAL_CH341を有効にし、カーネルのビルド及び書き換えを行ってください。

「22.2. イメージをカスタマイズする」
https://manual.atmark-techno.com/armadillo-iot-a6/armadillo-iota6_produ…

「12.2.2. Linuxカーネルイメージの書き換え」
https://manual.atmark-techno.com/armadillo-iot-a6/armadillo-iota6_produ…

なお、作業にはArmadilloシリーズの開発環境であるATDE8の使用を推奨いたします。

開発環境 ATDE8 (VMware仮想イメージファイル)
https://armadillo.atmark-techno.com/resources/software/atde/atde-v8

よろしくお願いいたします。

inuneko

2021年7月13日 17時20分

お世話になっております高橋様。
> 該当のUSBシリアル変換ケーブルを使用するには、カーネルコンフィギュレーションでUSB_SERIAL_CH341を有効にする必要があります。
> 製品マニュアルの以下を参考のうえ、USB_SERIAL_CH341を有効にし、カーネルのビルド及び書き換えを行ってください。
>
> 「22.2. イメージをカスタマイズする」
> https://manual.atmark-techno.com/armadillo-iot-a6/armadillo-iota6_produ…
>
> 「12.2.2. Linuxカーネルイメージの書き換え」
> https://manual.atmark-techno.com/armadillo-iot-a6/armadillo-iota6_produ…
>
> なお、作業にはArmadilloシリーズの開発環境であるATDE8の使用を推奨いたします。
>
> 開発環境 ATDE8 (VMware仮想イメージファイル)
> https://armadillo.atmark-techno.com/resources/software/atde/atde-v8
>
上記を参考にイメージファイルのカスタマイズと書き換えを行ったのですがイメージファイルのビルドは通ったのですが書き換えを行った際にLinuxカーネルイメージをコピーしたときファイルがないとエラーが出たのでコピーするときはSDカードにlinuxカーネルイメージを保存してからArmadilloにコピーしたりするのですか?
SDカードに保存するとしたらの元ファイルは生成したlinuxカーネルとdtbファイルでいいのでしょうか?

at_keitaro.takahashi

2021年7月13日 17時47分

高橋です。

> 上記を参考にイメージファイルのカスタマイズと書き換えを行ったのですがイメージファイルのビルドは通ったのですが書き換えを行った際にLinuxカーネルイメージをコピーしたときファイルがないとエラーが出たのでコピーするときはSDカードにlinuxカーネルイメージを保存してからArmadilloにコピーしたりするのですか?

仰るとおり、何らかの手段でArmadilloにファイルを配置する必要があります。
SDカードの他にも、USBメモリに保存する、SSHを使用して転送するなどの方法があります。

> SDカードに保存するとしたらの元ファイルは生成したlinuxカーネルとdtbファイルでいいのでしょうか?

今回については、デバイスツリーの変更は行っていないためlinuxカーネルだけ配置していただければ問題ありません。
以上、よろしくお願いいたします。

inuneko

2021年7月13日 18時46分

お世話になっております高橋様。

> 今回については、デバイスツリーの変更は行っていないためlinuxカーネルだけ配置していただければ問題ありません。
SDカードにlinuxカーネルを保存してarmadilloに挿入しましたがcan't get kernel image!のエラーが出て起動しませんがSDブートの設定が必要でしょうか?

ファイル ファイルの説明
エラー.txt

at_keitaro.takahashi

2021年7月14日 11時14分

高橋です。

> SDカードにlinuxカーネルを保存してarmadilloに挿入しましたがcan't get kernel image!のエラーが出て起動しませんがSDブートの設定が必要でしょうか?

eMMC(Armadillo本体)からブートしようとして、エラーが出ているという認識で合っていますでしょうか?

その場合、eMMCにLinuxカーネルが正しく配置できていないと思われるため、
SDブートを行っていただきeMMCのカーネルを書き換えていただくか、
SDカードまたはUSBメモリからインストールディスクを使用してソフトウェアを初期化する必要があります。

Armadilloを初期化して問題がなければ、ATDEでインストールディスクイメージ作成ツールを使用し、
ビルドしたカーネルを含んだインストールディスクイメージを作成していただくと楽かと思われます。

インストールディスクイメージ作成ツールは以下からダウンロードできます。

Armadillo-IoT ゲートウェイ A6 開発用ツール
https://armadillo.atmark-techno.com/resources/software/armadillo-iot-a6

使用方法については、ツールをダウンロードし

sudo ./build.sh

を実行していただくことで表示されます。

また、以下のページも参考になるかと思います。
https://manual.atmark-techno.com/armadillo-guide-std/armadillo-guide-st…

インストールディスクイメージを作成した後は、以下を参照してインストールディスクの実行を行ってください。

インストールディスクを使用する
https://manual.atmark-techno.com/armadillo-iot-a6/armadillo-iota6_produ…

inuneko

2021年7月14日 17時54分

お世話になっております高橋様。

> Armadillo-IoT ゲートウェイ A6 開発用ツール
> https://armadillo.atmark-techno.com/resources/software/armadillo-iot-a6

参考で頂いたArmadillo-IoT ゲートウェイ A6 開発用ツールがURLをクリックしたところ見つからなかったのでイメージファイルをサイトからダウンロードしarmadilloにインストールしましたがその場合ビルドしたカーネルはSDからコピーするのでしょうか?
ビルドしたカーネルのファイル名は「uImage」なのですが、製品マニュアルに記載されているカーネル名は「uImage-a600-v4.14-at[version]」なのでこれは名前を変更してSDカードに保存するということなのでしょうか?
SDカードに保存する場所はbootディレクトで良いのでしょうか?

inuneko

2021年7月16日 12時06分

お世話になっております高橋様。

参考にしてイメージファイルの作成、書き込み、SDブートを行ったのですがStarting kernel ... から進みません

https://armadillo.atmark-techno.com/resources/software/armadillo-iot-a6…
こちらからダウンロードしたイメージファイルは成功しました。
作成したイメージファイルで進まないのはイメージファイルの作成時に使用したファイルが原因なのでしょうか?

ファイル ファイルの説明
SDブート.txt
イメージディスク作成.txt
イメージディスク書き込み.txt

at_keitaro.takahashi

2021年7月16日 14時51分

高橋です。

> 参考にしてイメージファイルの作成、書き込み、SDブートを行ったのですがStarting kernel ... から進みません
>
> https://armadillo.atmark-techno.com/resources/software/armadillo-iot-a6…
> こちらからダウンロードしたイメージファイルは成功しました。
> 作成したイメージファイルで進まないのはイメージファイルの作成時に使用したファイルが原因なのでしょうか?

インストールディスクイメージ作成ツールのcoreディレクトリにある各種ファイルは、本来書き込みたいファイルを書き込むために一時的に使用するファイルのため、
基本的にツール内では指定しないでください。

今回の場合、カスタマイズを行ったのがカーネルだけでしたら、それ以外のファイルはArmadillo-IoT ゲートウェイ A6のダウンロードページからダウンロードしたものを使用してください。
(https://armadillo.atmark-techno.com/armadillo-iot-a6/resources/software)

coreディレクトリ内のファイルを書き換えてしまっている場合は、インストールディスクイメージ作成ツールについてもダウンロードしなおしてください。
以上、よろしくお願いいたします。

inuneko

2021年7月20日 9時25分

お世話になっております高橋様。

> 今回の場合、カスタマイズを行ったのがカーネルだけでしたら、それ以外のファイルはArmadillo-IoT ゲートウェイ A6のダウンロードページからダウンロードしたものを使用してください。
> (https://armadillo.atmark-techno.com/armadillo-iot-a6/resources/software)
>
> coreディレクトリ内のファイルを書き換えてしまっている場合は、インストールディスクイメージ作成ツールについてもダウンロードしなおしてください。
> 以上、よろしくお願いいたします。
Linuxカーネルだけを作成して他のイメージファイルをダウンロードすることでSDブートができてUSBデバイスを認識することができました。
ここまで丁寧に対応して下さりありがとうございました。