CX-5/アテンザの国産ナビについて色々想像してみる

改めてちょっと考えてみたいと思います。

おさらい

モデルチェンジしたCX-5/アテンザに搭載されるマツダコネクトとナビシステム(以降、新マツダコネクト、新ナビシステムと記述)の詳細は以下の通りです。

  • マツダコネクトのOSはlinux
  • 今回のCX-5・アテンザのマイナーチェンジで搭載する国産ナビのメーカーはMicwareである
  • このナビもlinuxで動作している
  • ジャイロは非対応であるがCANから勾配角を求めている
  • 今回の変更にあたって追加のSoCなどは装備していない
  • パネルは静電容量式である
  • VICSはFM多重だがオプションで光ビーコンも対応可能
  • 車速パルスを読んでいるかどうかは後日回答

私は以前、「新マツダコネクトは追加のSoCを乗せてそこでナビを動作させているのでは」と予想したのですが、これは外れました。まずはこの背景について再度説明したいと思います。

私がマツダコネクト開発担当だったら

ここで、「私がマツダコネクト開発担当だったら」ということを考えてみたいと思います。

優れたHMIの実現という観点ではマツダコネクトは必要不可欠である。優れたHMIに優れたソフトウェアが載れば理想的だが、現在はソフトウェアの出来が悪い。当初リリースしたマツダコネクトに搭載されたNNGナビの評判は非常に悪かった。現場営業サイドからも厳しい声が上がっており早急な対処が必要だ。だからNNGの技術者を呼んで期間限定で改善に取り組んだがうまく行かなかった。もはやNNGのナビは切り捨てて抜本的な対策を打つしかない。

しかし開発にかける時間は無い。短期間での開発が必要であって、しかもLinux上でマツダコネクトのシステムと強調して動作する優れたナビを用意しなければならない。そのようなナビは無い。ならばどうするか。ナビをハードウェア的に切り離して既存の定評のあるナビシステムを接続するしかない。

ダイヤル操作、画面割り込み、オーディオのMix-in、車両情報通信あたりのインタフェースを整備してやり易い通信方法で実装する。ナビはずっと起動状態にしておき、AV出力をマツダコネクト側で適宜切り替えればよい。最も重い変更箇所となるのはダイヤル操作のためのUIをナビ画面側に実装することだが、そこは完璧にこだわらずタッチパネルをも装備させておいてタッチパネルによる操作も可能としておく。ダイヤル操作UIの製作が間に合わないと分かった時点でバッサリと切り捨ててその後のアップデート対処する。

ナビシステムを動作させるハードウェア部分はモジュール化する。ナビオプションを付けた車両にのみこのモジュールを取り付ける。「ナビ用SDカード」は不要。

…というようにすると思います。

マツダが取った方策

しかしマツダはそのようにはしませんでした。もちろん、私が思いつくようなことですからマツダの中の技術者が同じことを考え付かなかったということはありえないと思います。このようにしない理由があったのでしょう。それはおそらく、ハードウェアに大きな変更を加えることが不可能であったとか、私はナビ~マツダコネクト間の取り合いなどそれほど複雑で無く簡単に実装できると思っているのですが実際はそうではないとか、そういうあたりが理由なのでしょう。

気になるのは実装方法です。マツダコネクトはHTML5ベースで開発できるような基盤の上で動いているそうです。

image from carwatch

およそ1年前の話ですが、2014 International CESにてマツダコネクトの開発環境が展示されていたそうです。当初はHTML5による開発環境を公開しサードパーティ製アプリケーションをも動作させるようなことを言っていましたが、その話は立ち消えになったのか後追いの記事はありません。

上記写真をよーく見ると「InsideTrack」の文字とIDEらしきアプリケーションが見えます。InsideTrackとはOpenCarSDKで、おそらくはIntelliJ IDEAの上で動作するプラグインで提供されているのでしょう。小さくて良くわかりませんが、OSがMacですし画面のアイコンや配色もIntelliJ IDEAそのままのように思えます。(ちなみにIntetlliJ IDEA自体は評価の高い優れたIDEです)

OpenCarやInsideTrackのページを眺めてみると、センサ情報の読み取りなどを抽象化する層があり、かつ、HTML5ブラウザにもHMI入力や音声、タッチ入力をつかさどる層が備わっています。おそらくはHTML5のスーパーセットになるような構造になっているのでしょう。

image from opencar

登録するとドキュメントが読めるのでざっくり読んでみましたが、想像していた通りHTML5やJavascriptに機能追加したような感じになっています。内部にHTTPサーバを持っていて、いわゆるMVCフレームワークになっています。viewとcontrollerはJavaScriptで実装されています。たとえばテキストや2値ボタン(チェックボックス)などのコントロールがJSで実装されています。そのコントロールのハンドラもJavaScriptによって実装されます。で、その機能拡張されたJavaScriptを解釈できるブラウザが内部に備わっているのでしょう。JavaScriptにはAMD Loader(require.js)などが用いられていたりしてなかなか使いやすそうな印象を持ちました。

何言っているか良くわからない人のために簡単に要約すると、Webの世界での標準技術を使っていてわかり易い。クセが無くてつぶしが効くような技術を採用しているように思える。ということです。

新ナビの製造は簡単なことじゃない

新ナビゲーションシステムの製造元であるMicwareのサイトを色々見てみると、Android/iOS用ナビの製造や法人向けナビサービスの製作などを行っているようです。Android/iOSナビは使用している技術がまるで違うので流用はしにくいでしょう。法人向けナビサービスの製作と言っているので、なにかコアになるナビシステムのライブラリは持っているのだとは思いますが、それが新マツダコネクトにも流用できるかどうかはちょっと良くわからないところがあります。「REST APIやWebSocketでNative Host Layerと通信しろ」などと書いているのでもしかしたらHTTPを解釈できるようなインタフェースを作ってあげる必要があるのかもしれません。するとオーバーヘッドが増えるのでパフォーマンスは出にくくなります。

MicwareにOpenCarのフレームワークによる開発経験があるのかどうか不明ですが、仮にあったとしても上記のような製作工数は少なくないと思います。製作期間はどんなに長くても1年くらいではないかと思うのですが、ナビ製作のノウハウがあったとしてもちょっと不安になる工程な気がします(個人的意見)。しかも、今回はCANから勾配情報を読み取るとかいう事もしているわけです。CAN通信はOpenCarのレイヤーで抽象化されるので読み取りはそんなに難しくないにしろ、自車位置の計測というコア部分に手を入れることになります。マツコネ向けにUIをフルスクラッチで製作したうえでコア部分も変更するというのは中々大変な作業量ではないでしょうか。

マツダの開発担当者が「車速パルスを読み取っているかどうかは後日回答」などと言っていましたが、これもCANから読み取れる情報ではあるものの、うまいことナビシステムに落とし込めていないのではないでしょうか。リリースまで間に合えば万々歳、間に合わなかったらゴメン、アップデートで対応します。という感じなので回答できないのではないでしょうか。もしそうなのであれば、予約が始まっている今の時点でそんなことを言っているあたり、完成度はそう高くないように思えます。

どう考えても残念

私が思うに、車好き ∩ 家電(情報機器)好きという人間は多いのではないかと思います。車や家電、電子機器などは機械やテクノロジーという点で共通しています。ナビと車の両方にこだわるというユーザーは多いでしょう。DINスペースが無く、ナビの選択ができないという仕様であるからこそナビには高性能・高機能なものを採用してほしかったというのはほとんどの人に共通する思いではないでしょうか。

今回国産メーカーを採用したということで、マツダとしては「根本的な対処ができた」と思っているのかもしれませんが、少なくとも私からしたらまだまだ不足です。たとえばPNDであるGorillaがみちびき、グロナス、GPS対応に加えて車速パルスも読み取り(別途OBDコネクタが必要です)、ジャイロも搭載したうえでマツダコネクト用のナビSDカードPlusよりも低価格(実売価格で)を実現しているのです。しかもナビSDカードPlusは実体のないソフトですが、PNDはハードウェアまで含めた値段なのでますます納得がいきません。だったらPNDで良いじゃんと思います。しかしそのナビを搭載する方法はダッシュボードにテープや吸盤で張り付けるという方式なわけで、マツダの目指した安全安心なHMIとは真逆の方向に進むことになります。こういうところが一番残念。

せめて、せめて、せめて、当初のマツダコネクトの理念に合ったように開発環境を公開してもらえたら、まだ対処の余地があるのですが。それが実現したらたとえばスマホと連携してGoogle Mapのナビをマツダコネクトの画面に写す、なんてこともできると思います。でもそんなことをしたらマツダのナビが売れないか…。

せめてせめてせめてせめて、PNDを配置するスペースをどこかに用意してくれるようなデザインであれば嬉しいのですが…。