koudenpaのブログ

趣味のブログです。株式会社はてなでWebアプリケーションエンジニアをやっています。職業柄IT関連の記事が多いと思います。

Windows 10 IoT Core で I2C

IoT Core で Raspberry Pi 3 と I2C 接続したセンサーデータを読んでみた。

とりあえず I2C してみたかったのだけれど、I2Cというより、接続したセンサーの仕様と、UWPアプリ向けのGUIに手間取ってしまった。

C# のコードを書くだけで I2C できるのはなかなか良い。

github.com

続きを読む

MediaTypeHeaderValue のコンストラクタにパラメータ付きの値を渡すと死ぬ

MediaTypeHeaderValue.Parse すると良さそうだった。

.NET の System.Net.Http の話です。

// NG
request.Content.Headers.ContentType 
  = new MediaTypeHeaderValue(string.Format("audio/wav; samplerate={0}", samplerate));

// OK
request.Content.Headers.ContentType 
  = MediaTypeHeaderValue.Parse(string.Format("audio/wav; samplerate={0}", samplerate));

// または
var mediaType = new MediaTypeHeaderValue(string.Format("audio/wav"));
mediaType.Parameters.Add(new NameValueHeaderValue("samplerate", samplerate.ToString()));
request.Content.Headers.ContentType = mediaType;

mono/MediaTypeHeaderValue.cs at master · mono/mono · GitHub

Windows と Raspberry Pi の PWM制御 事情

Raspberry Pi シリーズはGPIO18番がハードウェアPWM制御対応しているらしい。

では、Windows 10 IoT Core でそれを使えるのだろうか?

Hardware PWM on Windows 10 IoT (Pi2)

こんなやり取りが見つかった。

ソフトウェアでのPWM制御ライブラリはあるけれど、ハードウェア制御には未対応なようだ。

何だかんだで汎用OSなので、特化したハードへの対応は弱いのだろう。

どの道1端子しかないので、無いものと思っておけばよいかな。

例えば、ソフトウェアPWM制御や他のリアルタイム性が必要とされる処理に専用のスレッドを立てる、ようなことは出来るのだろうか?

リアルタイムではない普通のOSは、ある処理がいつ動くのかは分からん訳だけれども、それにしたってなるべく頑張りたい場面はあるはずだ。

オシロスコープ欲しくなってくるなぁ。

続きを読む

Windows IoT Remote Display と Raspberry Pi 3 のビルトインWi-Fi

以前 Windows 10 IoT Core は、まだ Raspberry Pi 3 の組み込み無線LANアダプタに未対応であるようなことを書いたが、現段階では未対応なのはBluetoothのみで、Wi-Fiは対応済であるようなので、その設定がてら Remote Display を試してみた。

リモート表示もWi-Fiも特に問題なく、いい感じだった。

対応状況は Release Notes - Windows IoT 見たら書いてある。

Build Number 14322. April 2016

What’s new this build:

  • Onboard WiFi drivers are now enabled for the Raspberry Pi 3
続きを読む

Lチカ しました

色々回り道したけれど、Raspberry Pi 3 と Windows 10 IoT Core でLチカしました。

ただそれだけのことなのだけれど、なんかうれしい。

先日(Lチカ できませんでした - koudenpaのブログ)は IoT Dashboard から展開できるサンプルで、ビルトインのLEDが光る、と思って試したらだめだった。

今回は、GitHubに公開されているLチカサンプルコードでGPIOの先のLEDをチカらせようと試みた。

続きを読む

Lチカ できませんでした

Windows 10 IoT Core では、Raspberry Pi の組み込みLEDをLチカさせるサンプルプログラム( Blinky WebServer Sample - Windows IoT )が提供されているので、試してみた。

タイトル通り、Lチカしなかったのだけれど、Raspberry Pi 2 と 3 とでは組み込みLEDの扱いがちょっと違うのだろうか?

一応、プログラム自体は動いたのでメモしておく。

追記:

なんか、ドキュメントとかコード( samples/MainPage.xaml.cs at develop · ms-iot/samples · GitHub UI違うけどたぶんこの辺、、、)見ていると、ビルトイン的な空気を感じず、GPIOの先に出力しているようにしか見えなかった。

Lチカしなくて当たり前じゃん!

続きを読む

Raspberry Pi 3 に Windows 10 IoT Core をインストールできなかった

Raspberry Pi 3 に Windows 10 IoT Core をインストールできなかった悲しみの備忘録です。

概要

この記事を書いた後、最終的にはインストールできた。

流れは大体こんな感じ。

  1. Insider Program 未参加の MSアカウントで NOOBS を使ってインストール
    • インストールできなかった
    • そのアカウントでは Insider Program へ正常に参加できていない状態になってしまった
  2. 他のMSアカウントでPCから Insider Program に参加した後、そのアカウントで NOOBS を使ってインストール
    • インストールできた

どこで Insider Program への参加がダメになったのかはわからないけれど、NOOBS を使う前に参加しておいた方が良いかも知れない。

なお 2016/5/01 現在 Insider Program への参加が必要なのは、Raspberry Pi 3 だからで 2 なら要らないはずです。

続きを読む