Armadilloフォーラム

Armadillo-610のCAN通信の設定

kawasan_mt

2023年9月20日 15時30分

Armadillo-610開発セットにてCAN通信がしたいのですがcan0を認識させる事ができません。
at-dtweb.swuの作り方が悪そうな感じなのですが、
助言をお願いします。

★やった事-1 (標準手順)
・baseos-600-installer-3.17.4-at.7.zipを使って基板をABOS標準イメージにする。
https://manual.atmark-techno.com/armadillo-610/armadillo-610_product_ma…
 の「10.2.4.4. CAN を扱う」を例にCAN通信を試す。
 以下のプロンプト表記は(#→ABOS c#→コンテナ)です。

# cat /etc/atmark/containers/can_example.conf
set_image docker.io/alpine
set_command sleep infinity
set_network host
add_args --cap-add=NET_ADMIN
 
# podman pull docker.io/alpine
# podman_start can_example
# podman exec -it can_example sh
c# apk update
c# apk upgrade
c# apk add iproute2
c# ip link set can0 type can bitrate 500000
Cannot find device "can0"

デバイス認識がされていない。

https://manual.atmark-techno.com/armadillo-610/armadillo-610_product_ma…
 の「10.9. Device Treeをカスタマイズする」を参考に
 CAN1 TX CON2-26pin, CAN1 RX CON2-27pin
 に割り振りしてat-dtweb.swuを作成。
・swupdateコマンドで適用すると「Starting kernel ...」でHANG

★やった事-2 (カスタムKernel)
・baseos-600-installer-3.17.4-at.7.zipを使って基板をABOS標準イメージにする。
・swupdateコマンドでinitial_setup.swuを適用
・swupdateコマンドでkernel.swuを適用 (linux-5.10-5.10.188-r0)
・swupdateコマンドでat-dtweb.swuを適用すると「Starting kernel ...」でHANG

ファイル ファイルの説明
dot.config.txt Kernel設定ファイル(.config)
コメント

佐藤です。

> ・swupdateコマンドで適用すると「Starting kernel ...」でHANG
おそらくHANGしているわけではなく、コンソール出力用のUART1を設定していないため、
ログが出力されていないだけだと思われます。
開発セット同梱の拡張ボードを使用しているようであれば、UART1を83,85ピンに設定して試してみてください。

関連するフォーラムは以下です。
https://armadillo.atmark-techno.com/forum/armadillo/10267

佐藤様
ありがとうございます。
CAN1とUART1をピン設定する事で、HANG状態にならずにコンソール出力が継続しました。