互換性その他気がついたところ
さて、一応Lチカが動いたところで、昔のArduino用の自作ShieldやSketchを動かしてみたところ、割といい感じで全滅した。というのは筆者の場合、PCと連携して何かの表示を行うようなSketchを自作するのがメインで、この際にPCとArduinoの間を仮想COMポート経由で通信する仕組みにしているのだが、Galileoだとこれがうまく動かなかった。おそらくはPhoto13に出てくるDCSG Validation Toolsの仕様が、Arduino Unoとかその前のArduino Duemilanoveで搭載されていたUSB-UART用ドライバと異なっているのだろう。プログラム的に見ると、COMポート(筆者の環境で言えばCOM18)をCreateFile()で開く事は出来るのだが、その後でGetCommState()で状態の取得をしようとしてコケている感じである。なので厳密に言えばGalileoの問題というよりはWindows用ドライバの問題なのであるが、そんな訳で手持ちのShieldの確認は今のところ出来ずじまいである。
あともう一つ気がついたのは、恐ろしくGalileoの発熱が多い事。普通、この手のマイコン開発ボードが熱くなる事は無い(というか、ありえない)のだが、Galileoはカイロの代わりになりそうな程度に熱い。まぁACアダプタが5V2A供給で10Wだから、これがフルに消費されているとすれば熱いのも当然ではある。発熱箇所は基板表と裏にある電源レギュレータ周りの部品(Photo06で、Quark X1000のすぐ左にあるやつ。中身はインダクタンス)で、これが表に2つ、裏に1つ搭載されているから熱いのも無理はない。ついでに言えばQuark X1000自体も触れないほど熱くなる。理由はなんとなくわかる、というかGalileoの場合、I/OデバイスをSoC内部で完結させきれず、I2Cなど経由でボード上に実装しているし、他にFlashだDDR3だと部品が色々乗っているから、こうしたもののために電源レギュレータが必要で、これによる発熱が馬鹿にならないのだろう。なるほどUSB Bus Powerでは動作しないのも無理ないし、仮にACアダプタを使わずにUSBを接続すると破壊されても不思議ではない。
なんというか、作りなれていない構造だなぁ、というのが率直な感想である。
ということで
まずは簡単にファーストインプレッションをお届けした。ちなみに今回はBSPを使ってLinuxをブートする方は一切試していない。また電源Onからの自動Sketch実行も、もしかするとSD Cardを使えば可能かもしれない(マニュアルにそれらしき記述はある)が、これもまだ未テストである。
なんというか、いわゆるMCUベンダーの評価ボードのつもりで使うとあっという間に壊れそうな脆弱さを感じる部分はあるが、とりあえずちゃんと動く事が確認されたのは喜ばしい。USB周りについては、もう一つUARTが実装されているのでこちらを使っての接続とかも今後試してみたいと思う。