「GR-PEACH + NETMFで1行プログラミング」LT資料を公開しました (ルネサスナイト 9、2016年7月23日 (土) 開催)

30日(土) の勉強会資料の公開とは順番が逆になってしまいましたが、7月23日(土) 開催のルネサスナイト 9 に参加して LT登壇しました。

https://docs.com/d/embed/D25193197-9500-6085-1560-001018019056%7eBfe5a7bff-fc39-9c7d-d35f-86e930988702

皆さん、ガチで組込み開発をされている方ばかりで相当場違い、アウェイな感じでしたが、得るものも多く有意義な時間でした。

そういう方たちに向けて、GR-PEACH で動作する .NET Micro Framework の紹介をしました。

GR-PEACH の特徴の一つがマルチプラットフォームなのですが、NETMF on GR-PEACH は肩身が狭く、当日のイベントでも冒頭に「マルチプラットフォームで .NET Micro Framework も動く」という一言だけで片付けられる始末・・・orz
そういう場所で、.NET Micro Framework を認知してもらう程度にはお役に立てたと思っています。
裏にライブラリがあるから、C#だから、Visual Studio があるからという理由があるにしても、ボタンと LED 程度ならば本当に 1行で書けるわけで、これは他のプラットフォームや言語に対するメリットだと思います。(もちろんケースバイケースで向き不向きはあるはずですが)

LT は持ち時間 4分、そのうち 2分はライブコーディング(1行だけですが)の構成で作った資料なので、ツールやライブラリのダウンロードサイトの紹介、1行プログラミングの例を載せただけです。

これで NETMF に興味を持った方は、ぜひこのブログや MS 太田さんのブログハンズオン資料を見て、NETMF を楽しんでほしいと思います。

GR-SAKURAⅡで .NET Micro Framework を動かしてみる

先日、GR-SAKURA II が発売されました。(何故かひっそりと)
前バージョンの GR-SAKURA に対してメモリ容量が倍になっているとのこと。

38320002

ということで、.NET Micro Framework を動かしてみました。
世間ではすっかり Windows 10 IoT 一色な感じですが、

  • NETMF は軽い
  • 起動が速い
  • シャットダウンの面倒がない
  • APIセットが分かりやすい(個人的な好みも若干ありますが・・・)

と、メリットがたくさんあります。
特に今回、久しぶりに SAKURA で NETMF を動かしてみて、アプリ転送からリブート、起動までの時間の速さに驚きました。これならどんどんデバッグできます。
(あとは、GR-PEACHに比べてお手頃な価格もうれしい)

さて、GR-SAKURA II で NETMF を動かすためには、まずはファームの書き込みが必要です。これについてはマイクロソフトの太田さんのブログで詳しく解説されているので、そちらを参照してください。

まだボード上の LED とボタンしか確認できていませんが、Lチカも GrFamily ライブラリも問題なく動作しています。
「PEACH はちょっと高いんだよね」という方も、「ラズパイ以外も触ってみたい」という方も、SAKURA を試してみては。快適なマイコンボード開発、IoT が楽しめますよ。

WP_20160627_22_27_56_Pro

GR ファミリー用ライブラリを Visual Studio 2015 Update 2 対応しました

追記)4月27日に公開した API リファレンスの構成が壊れているという連絡をいただきました。29日未明に修正版をコミットしました。すでにダウンロード済みの方はお手数ですが、再度最新版をダウンロードしてください。
なおバージョン番号は変更していません。

.NET Micro Framework v4.3 QFE2 と Visual Studio 2015 Update 2 との微妙な問題が解決し、GR-Family ライブラリの既存分の動作確認を終え、(超手抜きながら・・・)API リファレンスもなんとか作りました。

ということで、昨年秋に公開して少しずつ手を加え続けている、GR-Family ライブラリを改めて宣伝します。

https://github.com/netmf-lib-grfamily/GrFamilyLibrary

中味は全然すごくなくて、いちいち GPIO 操作する面倒を隠蔽したり I2C の低レベルの操作をラッピングしているだけなんですが、よろしければご活用ください。
GR-PEACH や PinKit をお持ちの方には便利に使えると思います。

 

そろそろ Windows 10 IoT 用のライブラリにも着手しようかな。皆さんにとっては素のままでも十分簡単なのか、ライブラリ化する人が出てこないけど、やっぱりコーディングは少しでもラクできるほうがいいですよね。

Visual Studio 2015 Update 2 に .NET Micro Framework v4.3 QFE2 をインストールした場合の不具合解消方法

長いタイトルですみません。

今から .NET Micro Framework 開発環境を作ろうと思うと、

  1. Visual Studio 2015 Update 2 をインストール
  2. .NET Micro Framework v4.3 QFE2 をインストール

の順番でインストールすると思います。VSの最新版が 2015 Update 2 なので、当然ですね。

ところが、この順番でインストールすると、いくつかおかしな事象に遭遇します。

  • 必要な using 句なのに、VS エディタ上では “Using directive is not required by the code and can be safely removed” というメッセージが表示される
  • ちゃんと解決できるはずのメンバーなのに、”Cannot resolve symble ‘xxx’ ” というメッセージが表示される
  • NETMF なのに LINQ がエラーにならない(本当ならばうれしい動きなんですが)
  • NETMF なのに 自動プロパティ初期化子がエラーにならない(本当ならばうれしい動きなんですが)
  • ビルド失敗する、または一見ビルド成功したように見えてボードに配置すると動作が怪しい

2016-04-26 21-21-342016-04-26 21-22-07

 

悔しいことに、前から使っているマシンではこの事象は発生しません。
どうも VS 2015 Update 2 前に NETMF をインストールし、あとから Update 2 に上げると問題ないようです。
だからと言って、今から環境を作るのに、無印 VS2015 → NETMF → VS2015 Update 2 の順番でインストールするのもうれしくありません。

解決方法がありました。
GHI Electronics さんのサイトに行くと、4月上旬に

GHI Electronics NETMF 2016 SDK Pre-Release 2

がリリースされています。このニュースリリースの中で触れられている

VS2015 patch instructions

パッチを当てるといいようです。ただし GHI さんは not official, Unsupported と言っているので、ご利用は自己責任で。

具体的には、パッチを解凍した中身の3ファイル

C:\Program Files (x86)\MSBuild\Microsoft\.NET Micro Framework\v4.3

上書きコピーします。(念のため、元のファイルはバックアップしておくのが安全)

これだけで OK。ちゃんと NETMF 開発できるようになります。

2016-04-27 0-07-192016-04-27 0-07-43

なお、パッチのダウンロード元 では上書き対象のフォルダーが間違っています。上記のフォルダーが正解です。

これでまた NETMF 開発できます!(世間は Windows 10 IoT ばっかりで若干悔しいですが)

 

しばらく、マシン入れ替えの際に何か起こってしまったのかと、SDK アンインストールやら VSアンインストールやら OS リカバリーやらを何度か試してみましたが状況は変わらず、ちょっと無駄な時間を過ごしてしまいました・・・。

「IoT ALGYAN ハンズオンのソースコード解説します」セッション資料を公開しました(Techfair.jp 勉強会 2016年3月19日開催)

2016年3月19日(土) に、Techfair.jp 主催、IoT ALGYAN 協力の勉強会

「IoT ALGYAN ハンズオンのソースコード解説します」

を開催しました。

IoT ALGYAN のハンズオンのソースを起点に、.NET Micro Framework やマイコンボードのプログラミングについて解説するというものです。あわせて Windows 10 IoT ではどう書くのかも紹介しました。

セッション資料は docs.com で公開しています。参加した皆さんは復習のため、参加していない方はマイコンボードプログラミングの参考にお使いください。

マイコンボードプログラミングは決して難しくはないものの、未経験の方にはとっつきにくいかもしれません。
そのハードルを越えるために、資料を活用してください。

参加者は決して多くはなかったものの、今回は内容についての評価が高く、参加者の期待には答えることができたと思います。
今後の勉強会では、ハンズオン資料のクラウド側の部分の解説をしたいと思います。が、単にコード解説ではなくて知見のあるスピーカーを呼んでセッション形式のパートもあるといいかもしれませんね。役に立って楽しいイベントになるように少し企画を検討してみます。

 

PS. 今回残念だったのは、前日・当日のキャンセル、無断欠席が多かったこと。申込者の半数が会場に来てくれませんでした。・・・残念です。参加したくなる仕掛けも考えてみないといけないですね。

「GR Family 用ライブラリの紹介」LT資料を公開しました (IoT 祭 2016 / 2016年3月12日) #algyan

IoT 祭 2016」(IoT ALGYAN 1周年記念イベント、3月12日(土) 開催) で、

GR Family 用ライブラリの紹介

というテーマで LT 登壇しました。
今回から資料は docs.com で公開しています。これまでの資料は引き続き SlideShare で公開しています。

 

以前からブログでお知らせしていた内容ではあるんですが、改めて LT で紹介しました。
「GitHub で公開してます」だけでは面白くないので、ライブラリを作り始めた経緯とか、ライブラリ利用でどんな風に便利になるのかをお伝えしました。
ぜひ活用して IoT を楽しんでください!

幸い、面白かったと言ってくださる方がいらっしゃって、実は内心薄い内容だな~と思っていたのですが、時間をいただいてよかったです。

懇親会で「DLL ってどうやって使うの?」という質問をいただきました。
このあたりは説明なしでいいのかなと思っていたんですが、やはり使い方とかリファレンスはあるほうがよさそうですね。
用意していきますので、少しだけ長い目で見てください。

 

次の週末 19日(土) の勉強会に参加してくだされば、ライブラリの使い方も紹介できます。ぜひ参加を検討してください。
現在、キャンセル待ちが出ている状態ですが、どうも増席されるんじゃないかな~と。(決めるのは私ですが /笑)

「IoT ALGYAN ハンズオンのソースコード解説します」(Techfair 勉強会 / IoT ALGYAN 公認) は3月19日(土) の開催 #techfair

IoT ALGYAN ハンズオンのソースコード解説します」というタイトルの Techfair の勉強会を開催します。
2016年3月19日(土) の開催です。
Techfair の勉強会ですが、IoT ALGYAN の名前をがっつり使ってます。紛らわしくてすみません。

3連休の初日という日程ですが、多数の参加をお待ちしています。

http://techfair.connpass.com/event/27426/

 

今回はハンズオン形式ではないので、当日までに開発環境を用意できない方も安心して参加できます。
もちろん PC と開発環境とマイコンボードがあるとより楽しめますが、まずは説明を聞いてみてから始めるというのもアリです。

 


IoT ALGYAN のハンズオンを開催して(IoT ALGYANの中の人でもあるし、講師もやったし)、いただく意見の中に「コードの中味も知りたい」というものがあります。
ハンズオンは IoT の全体を体験していただくことを第一の目標としているため、どうしても手順や操作の説明が中心であり、ソースコードの説明は少なめ。というか、ほとんどありません。

今回の勉強会では、.NET Micro Framework、組込み開発のソースコードの書き方を説明します。
時間の都合で今回は、マイコンボードの I/O に絞ってお話しします。クラウド対応部分については次回以降のお楽しみ、ということにします。

比較のために、Windows 10 IoT ではどのように記述するかの説明もします。ラズパイ好きの方もご参加ください。

さらに作品自慢の時間も設けますので、自分が作ったガジェットを自慢したい方もぜひ遊びに来てください。
その際、工夫したポイントとかコードの説明なども紹介してもらえるとうれしいです。

 


当日は、以下の条件を満たす方には PinKit (= GR-PEACH + センサーボード) を抽選で無償で差し上げます。

数に限りがあるため、希望者が多い場合は抽選になってしまいますが、確率は多分高めです。
これを機に IoT を始めようという方は当日を楽しみにお待ちください。

これを書いている時点で、残席が少なくなっており、満席が予想されます。
ぜひお早めにお申し込みください。

http://techfair.connpass.com/event/27426/