Cubietruckを動かしてみた

世間ではIntelGalileoボードが流行っているようです。秋月でも扱っています。
http://akizukidenshi.com/catalog/g/gM-07347/
x86アーキテクチャであること以外にメリットを感じなかったので千石電商の2FでCubietruck(Cubieboard3)を購入しました。
http://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=EEHD-4FBA
Cortex-A7 Dual-Core 1GHzで主記憶2GiBでそこそこのスペックです。

2.5inchのHDD or SSDを搭載できるようになっています。
f:id:ytakeuch:20140201200204j:plain

NAND FlashAndroid 4.4がプリインストールされていてすぐに動きます。

f:id:ytakeuch:20140201195418j:plain

f:id:ytakeuch:20140201195925j:plain

f:id:ytakeuch:20140201195842j:plain

とりあえずの動作確認だけ行いました。

Device Hackathonに参加しました。

NTTドコモベンチャーズ主催のDevice Hackathonに参加しました。

メガネ型デバイスだけじゃない!色々な面白デバイスを使ってアプリを作ろう!【Device Hackathon】 on everevo

とりあえずプレゼン資料貼っておきます。

BLE fortune from Yoji TAKEUCHI on Vimeo.

BLE Twister from Yoji TAKEUCHI on Vimeo.

poor man's nRF51822 development environment 2 of 2

Eclipseデバッグ

前回GNU Tools for ARM Embedded Processorsでビルド環境を立ち上げる方法を説明しましたが、今回はEclipseデバッグ環境を立ち上げる方法を説明します。

Eclipseのセットアップ

Eclipse IDE for C/C++ Developers

Eclipse IDE for C/C++ Developersをダウンロードしてインストールします。
私はeclipse-cpp-juno-SR2-macosx-cocoa-x86_64.tar.gzを使いました。

CDT Main featuresとGDB Hardware Debugging

Help→Install New Softwareを選択して、Work with:欄にhttp://download.eclipse.org/tools/cdt/releases/junoを入力します。

CDT Main featuresとCDT Optional Featuresの下の C/C++ GDB Hardware Debuggingをインストールします。

embsysregview

Help→Install New Softwareを選択して、Work with:欄にhttp://embsysregview.sourceforge.net/updateを入力します。

embsysregviewをインストールします。

register view file

nrf51.xmleclipse/plugins/org.eclipse.cdt.embsysregview_0.2.3/data/cortex-m0/Nordicディレクトリにコピーします。

J-Link softwareのインストール

J-Link software & documentation pack for MACをインストールします。
私はJLink_MacOSX_V478k.pkgを使いました。

/Applications/SEGGER/JLinkにパスを張ります。

デバッグを行うにはJLinkGDBServerを立ち上げておく必要があります。

インターフェースはSWDを用いるので、その指定を行います。

% JLinkGDBServer -if SWD

プロジェクトのインポート

File → Import からExisting Code as Makefile Projectを選択して、

f:id:ytakeuch:20131222163726p:plain

プロジェクト名を入力し、Makefileのある場所nrf51_sdk_v5_0_0_34603/nrf51822/Board/nrf6310/blinky_example/gccを選択します。

f:id:ytakeuch:20131222164015p:plain

デバッガの設定

Run → Debug Configurationを選択します。

GDB Hardware Debuggingで右ボタンを押してNewを選択します。

バイナリファイルのある場所を選択します。

f:id:ytakeuch:20131222164316p:plain

Debuggerタブを選択します。GDBコマンドをarm-none-eabi-gdbに変更します。また、Remote Target boxのポート番号を2331に変更します。

f:id:ytakeuch:20131222164454p:plain

Startupタブを選択します。Initialization Commandboxに

mon speed 10000
mon endian little
mon flash download=1
mon flash device=NRF51822
mon reset 0

を入力します。

次にSet breakpoint at欄にmainを入力し、Resumeをチェックします。

Debugをクリックするとデバッグ実行が開始されます。

f:id:ytakeuch:20131222164849p:plain

poor man's nRF51822 development environment 1 of 2

はじめに

Nordic SemiconductorのARM® Cortex™-M0 SoC nRF51822の開発環境ですが、標準だとKeilのMDK-ARM Liteが必要になります。この場合ROM容量が32KiBに制限されるのですが、他にもっと大きな問題があります。Windows版しか提供されていないのです。私は気軽に持ち運びできるPCがMBAしかないので不便に思っていました。

というわけで、Mac OSX上にnRF51822の開発環境をセットアップしてみまたので、その手順を説明します。

前提条件

Windows上でMDK-ARM Liteで開発環境のセットアップの経験があるという前提で説明します。Mac/Windows共通なファイルとかの説明はしません。

参考にするドキュメントはnRF51 Development with GCC and Eclipseです。

GCCのインストール

GNU Tools for ARM Embedded Processorsからインストールします。
私は、gcc-arm-none-eabi-4_7-2013q3-20130916-mac.tar.bz2を使いました。

Core Utility / Make utility

Windowsではインストールする必要はありますが、Macではインストール不要です。

Makefileの書き換え

Makefile.common

$(SDK_PATH)Source/templates/gcc/Makefile.common を書き換えます。

< include $(TEMPLATE_PATH)Makefile.windows
---
> include $(TEMPLATE_PATH)Makefile.osx

Makefile.osxの追加

Makefile.windowsを基にMakefile.osxを作成します.

7,8c7,8
< GNU_INSTALL_ROOT := $(PROGFILES)/GNU Tools ARM Embedded/4.7 2013q1
< GNU_VERSION := 4.7.3
---
> GNU_INSTALL_ROOT := /Users/ytakeuch/Nordic/gcc-arm-none-eabi-4_7-2013q3
> GNU_VERSION := 4.7.4

コンパイル

プロジェクトルート下のgccディレクトリでmakeを実行します。

(例) nrf51_sdk_v5_0_0_34603/nrf51822/Board/nrf6310/blinky_example/gcc

% make

実行すると_buildディレクトリ下にhexファイルが生成されます。

blinky_gcc_xxaa.hex

次回予告

Eclipseのセットアップの方法を説明します。

Marmalade 7がリリースされました

最近Marmalade 7がリリースされました。

Announcing Marmalade 7

/Applications の下に Marmalade.app と言うアプリがインストールされ、実行するとMarmalade Hubという開発を開始するためのGUIが立ち上がります。



f:id:ytakeuch:20131024015524p:plain

チュートリアルも刷新されて豊富になっています。

f:id:ytakeuch:20131024015605p:plain

Marmalade SDKでARMでコンパイラ出来ない時の対処方法

Marmalade SDKでARM版のコンパイルが出来ない?

Marmalade SDKをインストール後、Xcodex86のコンパイルはできるがARMのコンパイルが出来ない場合があります。

このようなメッセージが出ます。

Unsupported compiler 'com.apple.compilers.marmalade' selected for architecture 'i386'

原因と対処方法

原因はインストールされたプラグインが読み込まれていないためです。

対処方法はXcodeを立ち上げ直す、です。

参考URL