May 04, 2013

Seeed Grove RTC 改造

最近よくお世話になっている電子部品販売のSeed Studioですが、そこでGroveという一連の製品が展開されています。センサや表示器、LEDなどが搭載された様々なモジュールが100種類近くあるのが魅力です。特に最近はI2CでつながるGroveモジュールを中心に遊んでいます。今回はその中からReal time clock(RTC)モジュールとその改造を紹介したいと思います。

Seesd_Grove_RTC.jpg

このモジュールは、I2C接続のRTCのIC、およびそのバックアップバッテリが搭載可能なモジュールとなっています。搭載されているICはMaxim DS1307です。僕はこのモジュールを電源/ロジックが+3V3のTiny Featherの拡張部品としても使いたいと思ったのですが、残念ながらDS1307の制約から+5V電源でしか使うことができません。しかし、ピンコンパチブルで+1V8から+5Vの幅広い電源に対応したMaxim DS1338-18というICを見つけたので、ICを載せ替えることでTiny Featherでも使えるように改造してみました。

Seeed_Grove_RTC_rework.jpg

DS1307の除去はSanhayato 表面実装部品取り外しキット(SMD-21)を使い、上記の写真のように綺麗にDS1307を除去(U1のシルクがある部分についていました)できました。その後、DS1338を半田付けし改造が完了しています。

23:59 fenrir が投稿 : 固定リンク | | このエントリーを含むはてなブックマーク | コメント (0) | トラックバック
このエントリーのトラックバックURL: https://fenrir.naruoka.org/mt/mt-tb.cgi/881

May 11, 2013

Super Sylphide 進捗状況(63) -- OLED Display

オートパイロットシステムTiny Featherですが、表示器をつけてみました。

TinyFeather_OLED.jpg

表示器はi2cで繋がる有機LED(OLED)ディスプレイで、SeeedStudio Grove OLED Display 128x64です。明るいので、日中、外での使用でも問題なく視認できました。表示内容は以下の項目です。

*nn有効GPS衛星数
TGPS週番号:GPS時刻[s]
N北緯[deg](S=南緯にもなる)
E東経[deg](W=西経にもなる)
AWGS84高度[m]
V北方向、東方向、下方向速度[m/s]
Hヘディング[deg]
Pピッチ[deg]
Rロール[deg]

i2c接続としいうことで、以前の記事で書いたCPLD上のi2c MUXを利用しています。i2cに必要なDSPのSCLピンやSDAピンをCPLDを介してTiny Feather外に出し、OLEDを接続しました。表示をするためのコードはSeeed Wiki上で公開されているArduinoのコードを元に、それをさらに効率化したseeedOLED.hseeedOLED.cppを使って表示をさせています。オリジナルのコードに比べてi2cの送信バイト数を少なく済むようにしました。

※次の進捗記事として、Tiny Featherの安価な開発環境について書きました。

23:59 fenrir が投稿 : 固定リンク | | このエントリーを含むはてなブックマーク | コメント (0) | トラックバック
このエントリーのトラックバックURL: https://fenrir.naruoka.org/mt/mt-tb.cgi/882

May 18, 2013

Super Sylphide 進捗状況(64) -- Tiny Featherの最安価開発環境

オートパイロットシステムTiny Featherですが、開発をはじめた数年前と比較して、開発に必要となる環境を構築する費用が安くなったようです。そこで、最も安く環境を構築するのに必要となる物品をリストアップしてみることにしました。

まず大物として、Tiny Featherに搭載されているDSPであるTexas Instruments TMS320C6745の開発環境です。ソフトウェアとしてコンパイラ等をまとめた統合開発環境、ハードウェアとしてJTAGデバッカが必要です。

統合開発環境は、純正のCode Composer Studio (CCS) v5で一択なのですが、ライセンス形態がいくつかあり、90日間の評価版として使う分には無料で使えるようです。公式のWikiにCCSのダウンロード先が紹介されています。なお購入するとインストールできるコンピュータを固定したNode lockedで445ドルです。僕は普段有償のNode Lockedを使っており無償の評価版を使ったことはないのですが、無償版は期限が切られているだけで機能に有償版と差はないようです。

JTAGデバッカは、デバッカの性能に応じて、また純正品以外にもセカンドパーティ製品があったり、と選択肢があります。機能は最低となりますが、XDS100クラスと呼ばれているデバッカ群がC6745を開発できる最も安いデバッガとなります。僕はそのクラスのデバッカとして100ドル程度のBlackhawk社製XDS100v2Dを所有していますが、問題なく使えています。他に所有しているJTAGデバッカのSEED社製XDS560PLUSと比べると、バイナリのDSPへのダウンロード速度が遅いというのがありますが、その他の点は満足しています。

他に小物として、ハードウェアとしてのTiny Featherとの結線があります。僕は前作Super Sylphideでも使用した自作デバックアダプタ基板(Eagleの回路図アートワーク)を接続用に使っていますが、これは気合で直結でも大丈夫だと思います。またソフトウェア側にもライブラリとしてC674x-MathlibC674x-DSPLibPSP(互換性があるTMS320C6747を使う)の導入が必要ですが、これらは無償で入手できます。

DSPに続いて、Tiny Featherに搭載されているCPLDであるAltera MAXIIの開発環境も必要となります。まずソフトウェアとして、純正の開発環境であるQuartus IIが必要ですが、無償のweb editionで問題ありません。またハードウェアとしてJTAGケーブルが必要となりますが、純正ケーブルのUSB Blasterの互換品が安く手に入りますので、それで十分です。僕はway engineerという電子部品屋の10ドル程度のケーブルを使っています。JTAGケーブルとTiny Featherの接続は僕はDSPのところででてきたデバックアダプタを使ってしまっていますが、こちらも直結でなんとかなると思います。

以上、購入する製品は、DSP用JTAGデバッカのXDS100、およびCPLD用JTAG用ケーブルの2つで、合計して100ドルを少し超える程度の価格となります。なおTiny Featherのご先祖であるSuper Sylphideを開発した当時は、CCS、およびDSP用JTAGデバッカがとても高く、4000ドル以上投入したと思います。とてもいい時代になったものですね。

※次の進捗記事は拡張データロガーについてです。

23:59 fenrir が投稿 : 固定リンク | | このエントリーを含むはてなブックマーク | コメント (6) | トラックバック
このエントリーのトラックバックURL: https://fenrir.naruoka.org/mt/mt-tb.cgi/883