最近Amazon Alexa界隈で起きたこと(〜10/16)

海外ではAmazon Echoを中心としたAlexa Skills KitやAlexa Voice Services関連の情報が色々出回っているけど、日本語対応されていないことからまだ国内での情報があまりないと思ったので、普段チェックしたことをブログにまとめていこうと思いました。

目次


現時点のSkill数

カテゴリ 個数
Business & Finance 59
Connected Car 8
Education & Reference 884
Food & Drink 130
Games, Trivia & Accessories 1088
Health & Fitness 119
Lifestyle 357
Local 91
Movies & TV 77
Music & Audio 44
News 341
Novelty & Humor 287
Productivity 121
Shopping 11
Smart Home 110
Social 49
Sports 112
Travel & Transportation 89
Utilities 71
Weather 23
合計 4071

いつの間に4000を超えている。


9月

New Alexa Skills Kit Template for Developers: GameHelper

New Alexa Skills Kit Template for Developers: GameHelper - Amazon Mobile App Distribution Blog

Amazon Echo向けに作られているゲームは意外と多い。 このブログではゲームを作る際のゲームガイド(ゲームの遊び方)を作るためのテンプレートについて解説してくれています。 チェスのコマについて聞くとその画像をEcho Appのカードに表示させる方法などにも触れている。


New Video: Using Speech Synthesis Markup Language (SSML) in Alexa Skills

New Video: Using Speech Synthesis Markup Language (SSML) in Alexa Skills - Amazon Mobile App Distribution Blog

SSMLの使い方のビデオが公開されました。 SSMLは通常のテキストだけでは足りない発話を可能にする構文のことです。 例えば、123ワンハンドレッド・トゥエンティースリーと発話されるが、ワン・ツー・スリーと発話させたい時は<say-as interpret-as="digits">123</say-as>とSSML返してあげる必要がある。


JAWS-UG IoT専門支部 IoTサロン 2016-09 Alexa meetup! を開催した

jawsug-iot.connpass.com

JAWS-UG IoT専門支部でAlexaの勉強会を開催しました。 すでにJAWS-UG 神戸支部でAlexa meetup #01を開催した伊東さんも駆けつけてくれて、Alexa Voice Servicesについて詳しい発表してくれました。


Alexa and Amazon Echo Now Available in the UK and Germany

Alexa and Amazon Echo Now Available in the UK and Germany - Amazon Mobile App Distribution Blog

ついにAlexaとEchoがUS以外の国でも販売&利用できるようになりました。 昨年参加したre:Inventでイギリス英語、ドイツ語に対応を始めたって聞いたけど、それから1年ぐらいしてついに出てきました。

Amazon EchoとAmazon Alexaに感じる可能性 - sparkgene’s blog


Amazon Dot 第2世代が公開

発売日は10/20だが、Amazon Dotが新しく&安くなって登場。 6個(1個無料)、12個(2個無料)入りパックも用意され、家の各部屋において使うイメージ。


How to Build a Multi-Language Alexa Skill

How to Build a Multi-Language Alexa Skill - Amazon Mobile App Distribution Blog

リリースされたイギリス、ドイツ向けにSkillを作る際のやり方についての解説。 詳しくはQiitaに書いたのでそちらを見てみてください。

qiita.com


Announcing the Winners of the Internet of Voice Challenge

Announcing the Winners of the Internet of Voice Challenge - Amazon Mobile App Distribution Blog

Alexaを使ったコンテストがいろいろな方面で開催されているが、hackstr.ioで開催されたAlexa Skills KitもしくはAlexa Voice ServicesとRaspberry Piを使った何かを作れというもの。

www.hackster.io

私もエントリしてみたけど、残念ながら入選できなかった。

www.hackster.io


New Video Course by A Cloud Guru: Alexa Development for Absolute Beginners

New Video Course by A Cloud Guru: Alexa Development for Absolute Beginners - Amazon Mobile App Distribution Blog

Serverlessの教育では先駆的なサービスであるA CLOUD GUREが、Alexa Skills Kitを使ったSkillの開発を勉強できる講座を公開しました。


Alexa Fund Adds New Company to Portfolio by Taking Lead Investor Role in Nucleus

Alexa Fund Adds New Company to Portfolio by Taking Lead Investor Role in Nucleus - Amazon Mobile App Distribution Blog

Alexa Voice Servicesを使った初のスマートホームインターフォンを発売したNucleusが、シリーズAの投資が行われました。その額は$5.6 million(6億ぐらい)。 AlexaやAmazon Echoが登場した時に、Amazonは100億ぐらいのファンドも立ち上げました。 何か面白いものを作ってAmazonの目に止まれば大型の投資をもらえるかもしれないですね。


Alexa Smart Home SkillのHow To記事

Managing Device Discovery for Your Alexa Smart Home Skill - Amazon Mobile App Distribution Blog

Fundamentals of Smart Home Device Control, Including On/Off State - Amazon Mobile App Distribution Blog

Announcing Scenes for Smart Home Skills - Amazon Mobile App Distribution Blog

Amazon Echoがスマートホームデバイスを利用する方法として、現状はPhilipsとWeMoのデバイスは同じネットワーク上に存在すれば、検出して利用することが可能です。 しかし、それ以外のスマートホームデバイスの場合はクラウドに繋がっている必要があり、Smart Home Skillを介して操作されます。 その為、クラウドで管理されている自分のスマートホームデバイスを利用する際にユーザー認証が必須となっており、Custom Skillを作るときと違ってOAuth 2.0を使ったユーザー認証を組み込む必要があります。 この記事では、デバイスの検出とSmart Home Skillの使い方について学べます。


New Alexa Technical Tutorial: Debugging AWS Lambda Code Locally

New Alexa Technical Tutorial: Debugging AWS Lambda Code Locally - Amazon Mobile App Distribution Blog

Alexa Skillのでバッグは実際にAmazon Echoなどから実行したり、テスト画面から実行してLambda側でデバッグする必要がありますが、この記事ではローカルにあるSkillをダミーのリクエストで実行する方法について解説しています。サンプルはNode.jsだけですので、Python版も出てきて欲しいな〜と。


10月

Amazon Enables Developers to Extend Alexa’s Flash Briefing - a New Addition to the Alexa Skills Kit

Amazon Enables Developers to Extend Alexa’s Flash Briefing - a New Addition to the Alexa Skills Kit - Amazon Mobile App Distribution Blog

AlexaにはAlexa Flash Briefingという機能が備わっており、Alexa Appに事前に登録されている配信元(BBC Newsとか)を有効にしてAlexa, What's new?と話しかけると、ニュースを喋ってくれます。 今回の発表で、デベロッパーがFlash Briefing Skill APIタイプのSkillを作ることで、Alexa Flash Briefingに自分のRSSフィードなどを簡単に追加することができるようになりました。 通常のSkillを同様に審査をクリアして公開されると、Alexa Appにカードが表示され有効にすることで自分のフィードがAlexa, What's new?で聞けるようになります。


Alexa Voice Service Introduces API Update that Makes It Easier to Build Hands-Free Products

Alexa Voice Service Introduces API Update that Makes It Easier to Build Hands-Free Products - Amazon Mobile App Distribution Blog

今までAmazon Echo以外のAlexa Voice Servicesを利用したデバイスはWakeワード方式ではなくボタンを押して間音声認識させる方法が多かったのですが、今回のAPIのアップデートにより、サードパーティー製の音声認識技術を使ってAmazon EchoのようにWakeワードで対話できるようになりました。

github.com

サンプルプロジェクトがGithubにあるので、コレをRaspberry Piで動かすとオリジナルのAmazon Echoを作ることが出来ます。


Amazon Music Unlimitedの登場

Amazon.com: Amazon Music Unlimited

Amazon Echo系を持っている人は$3.99/月で使える音楽ストリーミングサービス 支払い情報さえ登録されてれば、Alexaに有効にしてって話しかけるだけで使えてしまう。

少し過去にさかのぼって書いたので結構な量になりましたが、結構活発に動きがありますね。

AWS 認定ソリューションアーキテクト – プロフェッショナル

AWS 認定ソリューションアーキテクト – プロフェッショナルの認定試験を受けてきてきました。

f:id:sparkgene:20160923152513p:plain

関連記事:AWS 認定ソリューションアーキテクト – アソシエイト - sparkgene’s blog

結果は無事合格。

総合スコア: 66%

(65%で合格らしいので、ギリッギリ)

内訳

1.0 High Availability and Business Continuity: 75%

2.0 Costing: 75%

3.0 Deployment Management: 87%

4.0 Network Design: 75%

5.0 Data Storage: 41%

6.0 Security: 62%

7.0 Scalability & Elasticity: 69%

8.0 Cloud Migration & Hybrid Architecture: 57%

感想

試験中もストレージ周りでなんだコレとか悩んだので、Data Storageの41%は納得。試験中の感触としても6〜7割な印象だったので、合格の文字を見たときは嬉しかった。

20分残して全部解いたので、見直すとした問題を10問ほど見直して終了。

それにしても170分はほんとに長い。3時間集中力を持たすのはしんどい。気合を入れるためにRedbull飲んだら、トイレも行きたくなるし。。

さすがに3万超えの試験料なので模擬試験(4000円)も事前に受けたけど、その結果はこちら。

総合スコア: 62%(落ちてるじゃないかw)

トピックレベルのスコア:

1.0 High Availability and Business Continuity: 66%

2.0 Costing: 100%

3.0 Deployment Management: 50%

4.0 Network Design: 50%

5.0 Data Storage: 33%

6.0 Security: 62%

7.0 Scalability & Elasticity: 83%

8.0 Cloud Migration & Hybrid Architecture: 75%

模擬試験は落ちたけど、弱そうな部分を復習し直して本番に挑んだ。点数上がっている部分もあれば、下がっている部分があるので、問題によっては本番も落ちてもおかしくない状況。

ま〜、とりあえず受かったので来年のAWS Summitではお弁当もらえるかなw

畑の監視その後

前にIoTで畑を監視するという内容の記事を別のブログで書いたのですが、バージョンアップしたのでその辺りを個人ブログで紹介しようかと。 tech.recruit-mp.co.jp

全体像

f:id:sparkgene:20160506165256p:plain

新しくやったこと

  • 無停電キットの導入
  • カメラによる監視の追加
  • アプリのオートアップデート
  • 静止画からタイムプラス動画を生成する

最新版のソースはこちら

https://github.com/sparkgene/iot_farm_monitoring

無停電キットの導入

tokyodevices.jp

東京デバイセズが出しているソーラーUSB電源システムキット がソーラーで発電しながら蓄電でき、USBで5vを簡単に取り出せるすぐれものです。 これを使えば、日中に発電して夜間も動作させることが可能です。

f:id:sparkgene:20160506154025j:plain

カメラによる監視の追加

センサーだけの監視ではなく、肉眼で畑の様子を見れたほうが便利だなと思ったので、カメラをセットアップしました。 ライブ配信だとsoracomの利用料がとんでもないことになりそうなので、静止画を撮ってアップロードする方式にしました。 使ったカメラモジュールはこれ。

akizukidenshi.com

公式のカメラモジュールで、静止画、動画の撮影が出来、専用のコマンドも用意されているのでものすごく簡単に使うことが出来ます。

raspistill -o image.jpg

たったこれだけで、静止画が撮れます。 さすがに、標準の解像度だとファイルサイズが大きくなりすぎるので、-w 1280 -h 720 とオプションを指定してサイズを抑えます。

撮影した静止画は、S3にアップロードして保存するようにしています。 AWS IoTを使って画像ファイルをbase64化して送ることも考えたのですが、あまりメリットが無さそうなので、aws cliで普通にアップするようにしています。 この場合は、awsのクレデンシャル情報が必要となるので、最低限の権限を付与したACCESS KEYを使っています。

アプリのオートアップデート

実際に畑を監視するときは遠隔地にデバイスを置くことも考えられるので、バグを修正したい時とか、新しい機能を追加したい時に気軽に触ることが出来ません。 また電源節約のため、Raspberry Piは常時ネットに接続していないので、sshで入ったり直接操作することが出来ません。 そこで、非同期でRaspberry Pi側からソースのアップデートができるようにする必要があります。

AWS IoTのDevice Shadowを利用することで、Raspberry Piがオフラインであっても次にオンラインとなった時に、設定した値を読み取ることができ、それをトリガーとしてgithubから最新のソースを取得して反映させることができるようになります。

https://github.com/sparkgene/iot_farm_monitoring/blob/master/iot_shadow.js#L31-L38

Device Shadowのソースはこんな感じでチェックしており、ローカルにあるソースのバージョンとDevice Shadowに設定されているバージョンを比較して、違う場合はgit cloneしてソースを入れ替える様になっています。

静止画からタイムプラス動画を生成する

静止画で畑の様子を見れるようにしたのですが、動画で一日の様子を見れるようにしたほうが面白いなと思い、S3にアップロードされてくる画像を元に動画を生成するようにしました。

qiita.com タイムプラス動画を作る方法はQiitaの方に上げてあるので、詳しいことはそちらを参考にしてもらえればと。

畑に置いた

さすがに畑の土真ん中に置くのは邪魔になるので道具小屋の所に置きました。 f:id:sparkgene:20160506160937j:plain

収集されるデータ

f:id:sparkgene:20160506170820p:plain

soracom → AWS IoT → Lambda → CloudWatchと流れてくるセンサーのデータ あれ、、水分の値が全然拾えてない(と言うか、小屋の脇だとカラッカラに乾燥してるのが原因)

タイムプラス動画

youtu.be

Raspberry Piからアップロードされてくる画像を元に、Lambdaが動画を生成してくれました。 設置した時はカメラが逆さまだったので、最初の方は逆さまですw しかも設置中の自分も写ってしまってる。。

今回の反省

24時間稼働してくれない

無停電キットで24時間運用できるようになったはずでしたが、想定よりも消費電力が大きすぎて発電が追いつかず、バッテリーが空になって2日目には動かなくなった。。。 もっと大きなソーラーパネルに置き換えれば解決しそう。

カメラモジュールの防水対策

オフィシャルなカメラはフラットケーブルでRaspberry Piと繋げるのですが、カメラ基盤がむき出しだったりと、屋外での利用に向いていない。仮で、基盤自体をバスボンドで防水加工してみたけど、ちゃんとしたケースが欲しい。あと、カメラの向きを簡単に調整できるようなマウントも欲しい。 リモートから角度調整とかもできると最高。

AWSの進化の速さ

AWS IoTも日々進化しており、当初これを作った時にはなかったのですが、現在はAWS IoTのRuleのActionとしてCloudWatchのメトリックスが追加されたので、このブログのサンプルのようにLambdaを経由する必要がなくなりました。 ただし、現状csvで送っている形式を見なおす必要はありそうです。

さいごに

家で実験している時に気になってたことが、そのまま実際の畑に持って行ったら、やっぱりダメだった。 そのまま置いてくるつもりでいたけど、見なおして出直す必要がありますね。

JAWS DAYS 2016

f:id:sparkgene:20160315215156p:plain

今年も開催されました! jawsdays2016.jaws-ug.jp

前回の参加記事はこちら sparkgene.hatenablog.com

昨年と同様、今年もHackDayのスタッフとしてお手伝いしました。 ただし、今年は当日スタッフとしてではなく、事前準備からHackDayの開催に向けた準備をお手伝いしました。 事前申し込みが1500名、当日参加が1100名を超えるような、巨大なイベントが出来上がっていくのを見れたのは非常に楽しかったです。 f:id:sparkgene:20160315223627j:plain 大きく7トラックのセッションがあり、それ以外にもスポンサーのブースが有ったり、SAに相談できたり、カルタ、麻雀など、盛りだくさんのコンテンツでした。 今年はイアホンの貸出もあり、スピーカーの声がよく聞こえて評判はかなり良かったようです。 中には、参加中のセッション以外のチャンネルを聞くという2度美味しい楽しみ方をしている人もいたようです。

f:id:sparkgene:20160315223634j:plain キーノートの様子。 アンケートを取ったら初参加の人が6〜7割と、幅広いユーザーが参加したのも今年の特徴なのかなと。

それにしても、これほどのイベントとなると、殆どシステムの開発と同じような感じですね。 しかも、100%リモートワーク。

さまざまな会話がSlack上で行われ、やらなければならないことはチケットで管理され、たまにオフラインで集まって調整といった形は、普段の業務と変わらないです。 そして当日は、参加者が快適にイベントに参加できるように、スタッフそれぞれがその場で判断したり、相談したりして運営していくのは、リリースしたサービスの障害対応や、エンハンスに近いとも思います。

HackDay

初級編

f:id:sparkgene:20160315223642j:plain HackDayは初級編と中級編の2つのコンテンツを用意しました。

f:id:sparkgene:20160315223638j:plain 初級編は満席で、OpenBlocks Iot + SORACOM + AWS IoT + Elasticsearch Serviceを使った、センサー情報の収集〜ビジュアライズまでを体験できるセッションでした。 ビジュアライズまでやってるのに、全部マネージドサービス使っているので、サーバレスという最強の環境です。

中級編

f:id:sparkgene:20160315223646j:plain 中級編ではMaBeeeをAWS IoT〜OpenBlocks経由で操作するというセッションでした。 ネットワークの調子が悪く、結局完走出来たのは一人だけと非常に申し訳ない結果となりましたが、一人でも完走者が出て良かったです。 MaBeeeは6月頃に発売されるようですが、すごく面白そうなので手にれたいと思います。

恒例のLT大会

f:id:sparkgene:20160315223651j:plain

一通りセッションが終わると、LT大会が始まります。とてもLTとは思えないような凝ったものもあり、ビールを飲みながら聞くのが楽しいです。 一日中チューターとして立っていたので、このタイミングでやっと椅子に座れましたw 案の定、翌日は筋肉痛です。。。

打ち上げ

f:id:sparkgene:20160315223655j:plain 去年とちがって公式な打ち上げはなかったので、有志でふらふらっと飲みに行きました。 ギネスビールとか飲みまくって、楽しく飲みました。(さすがにHubへいく元気はなかった)

11時月頃から手伝い始めてあっという間の4ヶ月でした。 次回のJAWS DAYSはどんなイベントになるか楽しみです!

sphero + leap motion + gobot = フォースの覚醒

f:id:sparkgene:20151216202926p:plain

BB-8欲しいですね!ただ、結構高い…

けど、これってspheroがベースなんですよね。 mashable.com

色々ググってると。すでに先人がいました makezine.com

そんなわけで、たまたま手元にあったspheroを改造して、手の届かないBB-8を自作してみることにしました。

f:id:sparkgene:20151216203922j:plain

まずは、つなぎ目があるのでそれに沿って切ります。 そして、外殻のギリギリにネオジム磁石が来るように、ガチャポンの入れ物を切って基盤の上に載せます。 ガチャポンを基盤に固定する必要があるので、グルーガンで固定しちゃいました。

f:id:sparkgene:20151216204002j:plain

磁石が固定できたら、半分に割ったspheroの殻を内側に段差ができないように組み合わせて、接着剤でくっつけます。

f:id:sparkgene:20151216203939j:plain

頭の部分はユザワヤで買ってきた、発泡スチロール球を半分に切って使います。

f:id:sparkgene:20151216203953j:plain

頭の底の部分には、磁石にくっつけるために金属製のクリップをノリ付けします。

f:id:sparkgene:20151217224517j:plain

色は白のままですが、とりあえず組みあがりました。BB-8の色は難しいから、 うーむ、実物と比べるとちょっと頭でっかちになってしまった… しかも、目玉の部分とか、アンテナが無いとただの雪だるまみたいだな。

Gobotでleap motionspheroBB-8を制御

gobot.io

Gobotを使ってleapmotionでBB-8を操作してみようと思います。

package main

import (
    "fmt"

    "github.com/hybridgroup/gobot"
    "github.com/hybridgroup/gobot/platforms/leap"
    "github.com/hybridgroup/gobot/platforms/sphero"
)

func main() {
    gbot := gobot.NewGobot()

    leapAdaptor := leap.NewLeapMotionAdaptor("leap", "127.0.0.1:6437")
    spheroAdaptor := sphero.NewSpheroAdaptor("Sphero", "/dev/tty.Sphero-OBG-AMP-SPP")

    leapDriver := leap.NewLeapMotionDriver(leapAdaptor, "leap")
    spheroDriver := sphero.NewSpheroDriver(spheroAdaptor, "sphero")

    work := func() {
        cnt := 0
        gobot.On(leapDriver.Event("message"), func(data interface{}) {
            hands := data.(leap.Frame).Hands
            heading := 0.0
            if len(hands) > 0 {
                if cnt > 20 {
                    x := hands[0].Direction[0]
                    if x > 0 {
                        // This means 0 degree. sphero move to forward
                        heading = 0
                    } else {
                        // This means 180 degree. sphero move to backward
                        heading = 180
                    }
                    fmt.Println("heading:", heading)
                    spheroDriver.Roll(60, uint16(heading))
                    cnt = 0
                } else {
                    cnt++
                }
            }
        })
    }

    robot := gobot.NewRobot("leapBot",
        []gobot.Connection{leapAdaptor, spheroAdaptor},
        []gobot.Device{leapDriver, spheroDriver},
        work,
    )

    gbot.AddRobot(robot)

    gbot.Start()
}

アダプターとドライバーにそれぞれleap motionとspheroを指定して、leapmotionから手の位置を取得してそれを元に動かすスクリプトです。

spheroは0〜360の数値を渡してあげるとその方向(0=前、90=右、180=後ろ、270=左)に動くので、本来であればleap motionから2軸分のデータを使って操作したほうがうまく動かせると思うんですが、座標と数値がちょっとめんどくさそうだったので手抜きしました。。 leap motionの座標

実際に動かしたムービーはこちら。

youtu.be

本物と比べると頭の位置が安定しないです。しかもすぐ取れちゃう。頭側も磁石にしたほうが安定するかな。 そんな訳で、スター・ウォーズの新作公開日に間に合って良かったw

Raspberry Piに RASPBIAN JESSIEをインストールする

久しぶりにRaspberry Piを使おうと思い、ついでに最新のOSを入れてやれってことで、作業メモ。

ダウンロード

ここからダウンロードする

Download Raspbian for Raspberry Pi

普通にZip形式のほうをダウンロードすると残り1時間とか出るので、TorrentファイルをダウンロードしてMac用のBitTorrentクライアントを使ってダウンロードした。 これだと、数分でダウンロードが終わる。

SDカードの初期化

ディスクユーティリティーを使ってFat形式で初期化する。 一旦ボリューム名を JESSIE で作りました。

JESSIEをSDカードに書き込む

$ df

Filesystem                        512-blocks      Used Available Capacity  iused   ifree %iused  Mounted on
/dev/disk0s2                       488555536 477290304  10753232    98% 59725286 1344154   98%   /
devfs                                    372       372         0   100%      647       0  100%   /dev
map -hosts                                 0         0         0   100%        0       0  100%   /net
map auto_home                              0         0         0   100%        0       0  100%   /home
localhost:/umin04NXvaENoWAQ_HarOu  488555536 488555536         0   100%        0       0  100%   /Volumes/MobileBackups
/dev/disk1s1                        15542528      5056  15537472     1%        0       0  100%   /Volumes/JESSIE

関係ないが、メインのストレージのinodeが98%消費してるじゃないか。。

一度アンマウント

$ sudo diskutil umount /Volumes/JESSIE/

ダウンロードして解答した 2015-09-24-raspbian-jessie.img があるディレクトリに移動して、以下のコマンドを実行する /dev/disk1s1 はdfコマンドで調べた時の値の disk1s1 の頭に r を付け、s1を消した /dev/rdisk1 を指定する

$ sudo dd bs=1m if="./2015-09-24-raspbian-jessie.img" of="/dev/rdisk1"

4125+0 records in
4125+0 records out
4325376000 bytes transferred in 410.162326 secs (10545522 bytes/sec)

これでOSの準備ができたので、HDMI、LAN、USBキーボード、USBマウス、micro USB(電源)を繋いで起動します。

f:id:sparkgene:20151108105607j:plain

初期設定

初回はGUIのデスクトップが表示されるので、リモート接続できるようにSSHを有効にします。

メニューの Preferences > Raspberry Pi Configuration から設定出来ます。 (コマンドラインからも設定できるけど、せっかくマウス繋いだので)

f:id:sparkgene:20151108105616j:plain

f:id:sparkgene:20151108105625j:plain

次に、ターミナルを起動してIPアドレスを調べます。 IPアドレスが分かったら、リモートからSSHで入って、以降の作業はリモートで行います。

ユーザーは pi パスワードは raspberry で入ります。

ssh pi@192.168.0.13
pi@192.168.0.13's password:

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sun Nov  8 10:31:30 2015

sudo raspi-config と入力して設定モードを起動します

f:id:sparkgene:20151108103921p:plain

ファイルシステムの拡張

初期状態だとSDカードのサイズが大きくても2Gでパーテションが作られているようなので、Expand Filesystem のメニューを選んで、拡張します

ブート後はCUIモードで起動

リモートで繋いで使うのでGUIは使わないから、起動後はCUIモードになるように設定します。 Boot Options を選んでCUIを指定します。

以上で、初期設定が終わりました。

最近はEdisonを触ることのほうが多いので、久しぶりにイジってみたら、OSのインストールやら、初期設定画終わるところまでは、結構大変(USBキーボード、USBマウスが必要だったりと)ですね。。。