Automotive Grade LinuxをMacOS上で動かしてみた

Automotive Grade LinuxをMacOS上で動かしてみた

Clock Icon2025.05.13

大阪オフィスの小倉です。

AWS IoT FleetWiseに関連して調べていく中で、Automotive Grade Linuxというものを見つけました。

この記事ではMacOS上でAutomotive Grade Linuxのデモを動かしてみる方法を紹介します。

Automotive Grade Linuxとは

車載インフォテインメントやコネクテッドカー機能の開発を効率化する共通基盤、という理解をしています。

以下はウェブサイトからの抜粋(日本語訳)です

Automotive Grade Linuxは、自動車メーカー、サプライヤー、テクノロジー企業を結集し、
コネクテッドカー向けの完全にオープンなソフトウェアスタックの開発と導入を加速させる、共同オープンソースプロジェクトです。
AGLは、Linuxを中核として、新機能や技術の迅速な開発を可能にする、
事実上の業界標準となるオープンプラットフォームをゼロから開発しています。

Home - Automotive Grade Linux

参加企業を見ると、日本の企業が数多く参加しているようです。またAWSの名前も見えますね。

やってみる

言葉だとどんなものかピンとこないので動かしてみます。

環境 バージョン
ローカルMac M2 Pro 16GB MacOS 15.4.1
QEMU 10.0.0

以下のクイックスタートの手順を見ながら進めます。

Quickstart - Using Ready Made Images - AARCH64 - ARM 64bit

1.イメージのダウンロード

ドキュメントにリンクされている圧縮されたビルド済みイメージとカーネルイメージをダウンロードしておきます。

2.QEMUのインストール

homebrewを使ってQEMUをインストールします

brew install qemu

3.VNCビューアのインストール

リモート接続用ビューアについてはvinagreが紹介されていますが、任意のVNCクライアントで良さそうです。
私はRealVNC Viewerをインストールしました。

brew install --cask vnc-viewer

4.圧縮ファイルの解凍

ダウンロードした2つのファイルを作業用ディレクトリに配置し、圧縮イメージを展開します。

xz -v -d agl-ivi-demo-qt-qemuarm64.ext4.xz
ogura.koichi: agl-demo/ % tree
.
├── agl-ivi-demo-qt-qemuarm64.ext4
└── Image

1 directory, 2 files

5.QEMU起動

ドキュメントに記載されたコマンドは以下です。

( sleep 5 && vncviewer ) &
    qemu-system-aarch64 -cpu cortex-a57 -machine virt -nographic \
    -net nic,model=virtio,macaddr=52:54:00:12:34:58 \
    -net user -m 2048 -monitor none -smp 2 -soundhw hda -device usb-ehci \
    -device virtio-rng-pci -device VGA,vgamem_mb=64,edid=on \
    -device qemu-xhci -device usb-tablet -device usb-kbd -vnc :0 \
    -kernel Image -append "console=ttyAMA0,115200 root=/dev/vda verbose systemd.log_color=false " \
    -drive format=raw,file=agl-ivi-demo-qt-qemuarm64.ext4 \
    -snapshot

私の環境ではオプション指定でエラーになったため、修正し以下コマンドで起動しました。

qemu-system-aarch64 -cpu cortex-a57 -machine virt -nographic \
-net nic,model=virtio,macaddr=52:54:00:12:34:58 \
-net user -m 2048 -monitor none -smp 2 -device intel-hda -device hda-duplex -device usb-ehci \
-device virtio-rng-pci -device VGA,vgamem_mb=64,edid=on \
-device qemu-xhci -device usb-tablet -device usb-kbd -vnc :0 \
-kernel Image -append "console=ttyAMA0,115200 root=/dev/vda verbose systemd.log_color=false " \
-drive format=raw,file=agl-ivi-demo-qt-qemuarm64.ext4 \
-snapshot

変更点

  • 1行目の( sleep 5 && vncviewer ) & はVNCビューアに接続するためのコマンドなので、一旦除外し、後で接続します。
  • -soundhw: invalid option のエラーとなったため、-soundhw hda-device intel-hda -device hda-duplex に変更

起動したら、VNC Viewerでlocalhostに対して接続します。

vscode-drop-1747111434910-pmqmbh84lql.png

車のIVIに相当する画面が表示されました。なお、画面操作すると反応は遅いです。

VNC接続すると画面が横向き表示されますが、うまく縦向きに変更できなかったため、
以降は画面を90度回転させた画面で紹介していきます。

画面の紹介

スタート画面

スマートフォンのように、様々な機能のボタンがならんでいます。

vscode-drop-1747111477231-2cl1kbpjsvq.png

HVAC画面

社内のエアコンを操作する画面のようです。
以前車を購入したとき、メーカの純正ナビを付けているとタッチパネルから車の操作ができる話を聞いた記憶がありますが、
こういうことだったんだな、と今更理解しました。

vscode-drop-1747111693233-2fav2qtumbr.png

DASHBOARD画面

上部に走行スピード、下部に回転数とガソリン、タイヤについては空気圧を表示するようですね。かっこいい。

vscode-drop-1747111894238-2p2wq0y6srf.png

当然のようにナビ地図も搭載されています。

vscode-drop-1747111968613-lz9xf17e2s8.png

まとめ

Automotive Grade LinuxをMacOS上で起動してさわってみました。 実際に動かしてみると、ちょっと車の裏側を覗けた気分になれました。

今回挙げた内容はおそらく機能のほんの一部で、ドキュメントを見ると、音声エージェント/アシスタント統合HMIのような項もあります。
また、実行方法も、Raspberry Pi 4で実行する方法や、EC2で動かすためのドキュメントが書かれているので、機会があれば試してみたいと思います。

参考

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.