MCUXpresso概要と当面の開発方法

LPCXpressoとKinetis Design Studioが新しいMCUXpressoへ統合されました。Windows 10 Version 1703で動作確認したMCUXpressoの概要について示します。

MCUXpresso概要

MCUXpressoの概要は、コチラの4分程の英語Videoが良く解ります。ポイント抜粋すると以下になります。

MCUXpressoは、3つのツール:IDE、SDK、CFGから構成され、各機能が下記です。

  • IDE機能:ソースエディト、コンパイル、デバッグ。Eclipse 4.6ベース。ローカルPCで利用。
  • SDK機能:使用デバイスのAPI生成とサンプルソフト提供。クラウドで設定し、結果をIDEにダウンロードして利用。
  • CFG機能:使用ピン、動作周波数など設定。クラウドで設定し、結果をIDEにダウンロードして利用。
MCUXpresso Overview
MCUXpresso Overview

全てが1パッケージのローカルPCで機能した旧IDE(LPCXpressoやKinetis Design Studio)を、MCUXpressoで3ツール構成にしたのは、SDKとCFGをクラウド側で分離提供し、IDEを軽量化することと、CMSIS準拠の開発環境構築が目的だと思います。CMSISはコチラの記事を参照してください。

CMSIS準拠ならMCUハードとソフトの分離が容易になり、開発済みアプリケーション資産を少ない工数で別ハード移植や再利用が可能です。また、CMSIS仕様(CMSIS-COREや-DSPなど)が修正/更新されても、その内容は全てクラウド側のSDKとCFGツールに閉じ込めることができるので、常に最新CMSIS準拠のSDKとCFGを利用したソフト開発が可能です。
ARM Cortex M系のIDEは、今後この分離構成が流行するかもしれません。

注目点は、IDEではコードサイズ制限なし、SDKではFreeRTOS v9提供(LPCXpresso最終版はv8)、CFGでは電力評価やプロジェクトクローナーです。各ツールの概要を以下に示します。

MCUXpresso IDE

MCUXpresso IDE
MCUXpresso IDE

旧LPCXpressoとの差分は、FreeRTOSタブが新設されたこと位です。コードサイズ制限なしで、添付マニュアル類も判り易く、誰にでも使い勝手が良いIDEです。MCU開発は、従来のRTOSを使わないベアメタル開発から、RTOS利用ソフト開発へシフトしつつあり、このMCUXpresso IDEもこの流れに沿った機能が追加されました。

MCUXpresso SDK

MCUXpresso SDK Builder
MCUXpresso SDK Builder

SDK BuilderでBoard、Processor、Kitsなどの対象MCUパラメタを入力し、対応するSDKパッケージをクラウドで作成後、ローカルPCへダウンロードして使います。パッケージの中身は、APIとこのAPIの活用サンプル集です。但し、2017年4月現在は、FreescaleのMCUと2017年に発売されたNXPのLPC54000対応のものしか提供されていません。

その理由は、旧Kinetis Design Studio:KDSのProcessor Expert:PEの代替だからと推測します。MCUXpressoは、KDSのPE機能がSDKとCFGに分離してクラウドへ実装されました。PEをお気に入りだったユーザは、この点に困惑すると思います。

一方旧LPCXpressoのユーザのSDKはというと、これは従来のLPCXpressoに同胞されていたLPCOpenライブラリなどがそのままMCUXpressoにも実装されています。つまり、MCUXpressoは旧LPCOpenライブラリなどが従来同様使えます。

従って、LPC54000開発とKDSユーザ以外は、MCUXpresso SDKを使うことは、今のところありません。

MCUXpresso CFG

MCUXpresso CFG Settings
MCUXpresso CFG Settings

CFGも現状はSDKと同様、FreescaleのSDKとNXPのLPC54000対応のみが提供中です。

MCUXpressoのまとめと当面の開発方法

MCUXpressoは、旧LPCXpressoと旧Kinetis Design Studioを統合した新しいIDEで、現状「フレームワークは出来たものの、完全な移行完了とは言い難い」ものです。以下に特徴を示します。

  • IDEとSDK、CFGの3ツールに分離するフレームワークは、CMSIS準拠ソフト開発に適している。
  • KDSのPE代替機能をSDKとCFGに割振っている。2017年NXP発売のLPC54000開発にも使えるが、既存NXPのMCUはSDK、CFGともに未対応。
  • LPCXpressoとKDSの今後の更新は、期待できない。将来的には、NXP/FreescaleのMCU開発にMCUXpressoを使う必要あり。
  • LPCXpressoユーザは、当面SDKとCFGを使わずにMCUXpresso IDEを旧LPCXpressoと殆ど同じ使用法で使える。
  • KDSユーザは、MCUXpresso IDEとSDK、CFGを使い開発する方法と、当面はMCUXpressoにPEをプラグインし開発する方法の2通りの開発方法が取りえる。但し、PEの更新が期待できないので、将来はMCUXpresso SDK、CFGを使わざるをえない。

当面の目安としては、LPCXpressoユーザならば、既存MCUのSDK、CFGが提供されるまで、KDSユーザならば、PE更新が必要になるまで、でしょう。

もう1つの目安が以下です。Windows 10 1703更新に相当するIDEベースEclipse 4.6(Neon)の次版4.7(Oxygen)への更新は、2017年6月の予定です。IDEベース更新から約半年でこの4.7ベースの最新IDEが各社からリリースされるとすると、2017年末から2018年初め位にはMCUXpressoへの完全移行完了となる可能性があります。

MCUのIDEは開発スピードを左右する部分だけに、仕様変更や更新が定期的に発生する部分と、各社独自の部分を分離し、トータルでパッケージ化すると、以上で示したフレームワークが重要となります。開発者は、フレームワーク要素更新にも注意を払う必要があるでしょう。

速報:Windows10 1607のマイコンIDE動作確認

Windows 10 Anniversary Update、Red Stone 1(RS1)のリリースが8月2日実施されました。

弊社マイコンテンプレート使用中のマイコンIDEを、このWindows 10 RS1、1607で動作確認しましたのでお知らせします。

IDEは、全て8月3日時点最新版です。マイコンテンプレートソフトのコンパイルと評価ボードへのダウンロード動作を確認しました。

マイコンIDEの詳細はコチラ、評価ボードはコチラに一覧表を掲載しております。

※Windows10 1511で動作していたものは、今のところ1607でも問題なく動作します。
※Windows 7時代に購入した評価ボードは、一部Windows 10で動作しない場合があります。この場合は、ボードドライバ(USBドライバ)の更新で動作するようになります。

Windows 10 1607動作確認マイコンIDE
マイコンIDE(ベンダ名) Windows 10 1607動作確認バージョン
CS+ for CC(ルネサス) V4.00.00 [15 Mar 2016]
e2 studio(ルネサス) Version: 5.1.0.022
LPCXpresso(NXP v8.2.0 [Build 647] [2016-07-18]
Kinetis Design Studio(NXP Version: 3.2.0
PSoC Creator(Cypress PSoC Creator  3.3 CP3 (3.3.0.9604)
Arduino IDE(Intel 1.6.10 Hourly Build 2016/07/26

 

CS+ V4、e2 studio V5へ更新

ルネサスツールニュース2016年4月16日号でIDEのCS+がV4、e2 studioがV5の更新が発表されました。
更新は、通常手順で問題ありません。しかしCS+は、セキュリティソフトAvastとの相性問題か、脅威検出が発生しました。

更新方法

CS+は、アップデートマネジャの起動で更新されます。但し、ラピッドスタート有効時は、一旦CS+を終了しアップデートマネジャ単独での処理が必要です。

e2 studio V5(Eclipse 4.5:Marsベース)は、V5のインストーラをダウンロードし、新規インストールが必要です。前版からは、V5へ更新できません。

これはEclipseベースのIDEでは周知のことで他社、例えば旧FreescaleのKinetis Design Studioも同様でした。

更新結果

CS+は、Windows 8サポートが終了し、Windows 10または8.1利用が必須となりました。
また、CS+起動時にMy Runesasへのログインダイアログが表示されるようになりました。ログインすると、同意確認ダイアログが表示されます。Windows 10の情報収集と同じような機能だと思います。

MyRunesas Login and Confirmation
MyRunesasログインと同意確認

気持ちが悪い人は、CS+起動後にヘルプ>プライバシー設定(Y)…で同意の変更が可能です。

Privacy Setting
プライバシー設定変更

e2 studioは、V5インストーラ起動後、アップグレードか別フォルダへのインストかを選択し実行します。追加ソフトウエアで、CC-RLコンパイラやKPIT GNU RL78コンパイラが選択インスト可能です。

e2 studio v5 setup
e2 studio v5セットアップ

更新完了で下図となります。

e2 studio v5
e2 studio v5

AvastとCS+の相性

旧CS+では生じなかったセキュリティソフトAvastから脅威検出が発生しました。この現象は、過去のCS+更新時にも生じた経験があります。

Avast Block Report
Avastがブロックした脅威

今回は、「スキャンから除外するリストに追加」で対処しました。Avast以外のセキュリティソフトでも発生する可能性がありますので、参考にしてください。

e2 studio所感

e2 studioをCS+の代わりにRL78/G1xマイコン開発で使う必要性は、「今のところ無い」と思います。

「なれ」の問題もありますが、コード生成ツールや、デバッガの基本的な使い方などは、CS+と同じであることが理由です。敢えて差分を示すと、今回のツール更新方法やCコンパイラが選択できること、デバッガ接続方法などです。
また、他社と比べベースとなったEclipse IDE更新が数か月遅れなのも気になります。

最近のルネサスサンプルコードは、CS+とe2 studioの両プロジェクトが一緒に提供されます。狙いはe2 studioの普及だと思います。

汎用のIDEであるEclipseになれるという目的でe2 studioを使うのは良いかもしれませんが、ルネサスMCU専用のIDEであるCS+よりも使いやすいとは言えません。

いずれにせよ、e2 studioは、要観察を続ける予定です。

DragonBoard 410cが気になる

DragonBoard 410c

入手性が良く価格も手ごろなIoT向けPCは、Raspberry Pi 2 Model Bや先日発売のRaspberry Pi Zeroが有名です。これらボードの比較は、コチラが参考になります。ボードへWindows 10 IoT Coreをインストールする記事も多くあります。

これらIoT向けPCには、ネットワークへ接続するためのEthernetポートを持っています(Pi Zero除く)。IoTセンサマイコンの情報収集や管理を行い、クラウド側コンピュータへ接続するためです。但し、マイコン側への接続は、GPIO経由でした。

ここに少し違和感を覚えていたのですが、この違和感が無いIoT向けPCが「DragonBoard™410c」です。

マルチOS対応のDragonBoard™410c

  • Android 5.1
  • UbuntuベースLinux
  • Windows 10 IoT Core

DragonBoard™410cで動作するOSは3種類です。Windows 10 IoT Coreは当然でも、Android 5.1も動作すること、IoTマイコン無線接続に使えるBluetooth 4.1を実装済みであることが気に入っています。Raspberryとの比較は、コチラを参照してください。

日本では、アロー・ユーイーシー・ジャパン株式会社とチップワンストップが独占販売するそうです。

Windows 10 IoT CoreとAndroidメリット

どちらのOSもBluetoothをサポート済みです。ボード購入時にインストール済みのAndroidには、直ぐに使えるアプリが多くあります。開発環境もVisual Studioがあれば、UWP:ユニバーサルWindowsプラットフォーム開発がなんとかなりそうです。

まだ参考記事数は少ないですが、今後いろいろな情報が出てくればと期待しています。

Windows 10クリーンインストールとVisual Studio Express 2015インストールのTips

殆どの方が、Windows 7/8.1からアックグレートしてインストしたWindows 10、リリース1ヵ月が経過し慣れた頃なので、カスタマイズされる方も多いでしょう。今回は、このWindows 10のクリーンインストとVisual Studio Express 2015のインストに関する調査結果を示します。

Windows 10クリーンインストール方法

Windows 7/8.1からアックグレートしたWindows 10は、旧OSのカスタマイズ設定と新OSのデフォルト設定がダブることがあります。簡単に元に戻せる場合もありますが、OS更新を機にクリーンインストするのも対策の一方法です。

Windows 10のクリーンインスト方法は、Webや雑誌に多くの記事がありますが、USB2.0特定ポートでしか起動できないとか、DVD起動に失敗するなど、多くの隠されたトラブルが付き物です。

この対策にWindows 10標準の「PCのリセット」をお勧めします。この方法なら、USBやDVDでのブートは不要で、しかもプロダクトキー再入力なども不要です。また、旧OSから引継いだゴミファイルなども綺麗に削除されるので、OSストレージもWindows 10本来の容量となります。

手順を簡単に示します。

  1. アップグレートした現状Windows 10を、コントロールパネル>バックアップと復元(Windows 7)か、または、お好きなバックアップソフトで保存(万一、クリーンインストに失敗した場合は、ここから復元するためです)。
  2. 設定>更新とセキュリティ>回復>このPCを初期状態に戻すで「開始する」をクリック後、「すべて削除する」オプションを選択。この選択肢が、「PCのリセット」です。実行後は後戻りできません。

    PCのリセット
    「PCのリセット」選択
  3. タイムゾーン選択、かんたん設定、更新プログラム取得、PC所有者などの入力を途中求められますがMicrosoftアカウント入力をスキップし、ローカルアカウント入力でWindows 10クリーンインストが完了。

クリーンインスト後のOS容量は、Pro/Homeともに20GB程度です。後は、必要なアプリを再インストすれば、クリーンなWindows 10環境が構築できます。

※万一失敗した場合は、1で作成したバックアップファイルを使って復元してください。本手順は、2台のパソコンで動作確認しておりますが、弊社は責任をもてませんので、あくまでも処理する個人の責任で実行してください。

Visual Studio Express 2015インストール方法

Windows 10と同じく最新Windows IDEのVisual Studio 2015、こちらも多く記事があります。しかし、9月3日現在、無償で一番使いやすいVisual Studio Express 2015のダウンロードはありません。

私は、無償Visual Studio Community 2015の標準インストールが、このExpress版に相当すると思います。

Visual Studio Express 2015のインストール
Visual Studio Express 2015のインストール

Visual Studio標準インストール(Typical)時は6GB、Customで全選択したFullインストール時は、24GBの容量が必要になります。弊社の場合は、従来のWindowsデスクトップアプリ、Webアプリ、Windows 10向けのUWPアプリ開発を行う予定なのでこの標準インストールで良さそうです。

* * *

OSのクリーンインストは、アプリの再インストや設定カスタマイズなど、手間暇ばかりかかる処理です。アップグレードインストならは、この手間が省けますが、旧OSの消しきれないゴミやダブった設定など、新OSにあまり相応しくないものも引き継がれます。

本記事がWindows 10のクリーンインストやVisual Studioにトライされる方の参考になれば幸いです。

速報 Windows10 Homeで各社マイコンIDE起動確認

Windows10 Home
Windows10 Home
Wnidows10で動作中の各社マイコンIDE
Wnidows10で動作中の各社マイコンIDE

7月29日から配布開始されたWindows10 Homeで、ルネサスCS+、NXP LPCXpresso、フリースケールKDSの各社マイコンIDE起動を確認しました。

予約後、順次Windows10へのUpdateが開始されています。私のノートPC:Windows8.1無印64bit版が、無事Windows10 HomeへとUpdateされました。早速、各社のマイコンIDEを起動しましたが、問題なく動作しています。今のところ。

Windows8の時と比べると、問題が少ない感じがします。他の開発PC:Windows 7 UltimateとWindows8.1 Proは、Updateを遅らせ様子をみる予定でしたが、この感じだと全てUpdateしても良さそうです。

Windows10 HomeはUpdateをコントロールできない

Windows10 Homeは、Windows自身のUpdateタイミングをユーザがコントロールできません。コントロールパネルにWindows Updateが無いのです。意識しなくても自動的に常に最新Windowsが使える反面、更新による既存アプリの動作トラブルリスクもはらんでいます。

リスク回避には、Windows10 Pro以上の版に備わるUpdateタイミングコントロールが必要です。しかし、結局、最新OSで正常に動くことがWindowsアプリには要求されるでしょう。Windows10アプリ開発は、これまで以上に大変そうだと感じるのは私だけでしょうか? 各社のIDE開発担当者の負担は、増える一方です。

EclipseベースのIDEが増えつつあるのは、こうした背景があるのかもしれません。ルネサスのCS+は、独自開発の使い易いIDEですが、Eclipseベースのe2 Studioも視野に入れる必要があるかもしれません。