13
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

LINE Things の開発ボードを試す! 〜その1〜 #linethings

Last updated at Posted at 2019-03-22

#はじめに

今回の記事の内容は、LINE Thingsの開発ボードを試してみた記録です。

試した際の流れだけ見られれば良いという方は、前置きをとばして
 項目:「開発ボードを触ってみる」
からお読みください。

##LINE Thingsの開発ボードについて

先日、 #スマートスピーカーを遊びたおす会 というイベントに参加した際、
登壇者で来られていたLINEの立花さんから、この開発ボードをいただきました。

> 開発ボードをいただいたときのツイート

この開発ボードは、2019/3/2(土)から2日間、大阪で開催されたLINE Thingsハッカソンで初めて公開されたものです。

> 大阪のハッカソンでのツイート

#そもそもLINE Thingsとは?

LINE Thingsは、LINEアプリ を介して BLE(Bluetooth Low Energy)対応デバイスを操作するIoTプラットフォームです。
こちらも詳細は、公式ページをご覧ください。

##過去にLINE Thingsを試したときのこと

東京でのハンズオン

最初にLINE Thingsを試したのは、東京で開催されたハンズオンに参加したときでした。
このときはGitHub にある中の ESP32-DevKitC を使ってサンプルを動かす流れを試しました。

> イベント参加時のツイート1

> イベント参加時のツイート2

obniz での LINE Things を試したときの記事など

その後、obniz が LINE Things に対応した、という記事を見て、
その日の夜に試して動画をツイートしたり、Qiitaの記事にしたりしました。

> obnizのLINE Things対応の記事関連

> obnizでのLINE Thingsを試した時の動画

> obnizでのLINE Thingsを試した際に書いた記事

●obniz で LINE Things! - Qiita
 https://qiita.com/youtoy/items/d4d34da3f5427d11077f

開発ボードを触ってみる

仕様についてなど

ボードの仕様について、LINEの小城さんのツイートにGitHubのURLが書かれていたのを見ていたので、それを参照しました(これ以降、以下のGitHub上のページを「開発ボードのページ」と書くことにします)。
【★2019/3/28追記】 URLが変更になったようです。

●【新URL】 line/line-things-dev-board: LINE Things development board - Sample codes and schematics
 https://github.com/line/line-things-dev-board/
●【旧URL】GitHub - cpulabs/line-things-dev-board
 https://github.com/cpulabs/line-things-dev-board/

> 開発ボード関連のツイート

以下で、サンプルを試していった流れを記載します。

あらかじめ用意されたサンプルを試す! 【おおまかな流れ】

まずは、上記の開発ボードのページのクイックスタートと、それ以下の部分を見てみます。
大まかな流れは以下のようになるようです。

  1. LINEアプリ上の設定など
  2. 開発ボードのファームウェアの書きかえ準備
  3. 開発ボードのファームウェアの書きかえと動作確認

あらかじめ用意されたサンプルを試す! 【詳細】

1. LINEアプリ上の設定など

LINEアプリでの利用設定

もし初めて LINE Things を利用する場合は、LINE アプリ上で LINE Things の機能の有効化を行ってください。
詳細は「LINE と LINE Things デバイスを連携させてみよう」の部分をご覧ください。

LINEアプリでの友達登録

LINEアプリ内のQRコードリーダーで、CPU基板の裏側、またはマザーボード基板にあるQRコードを読み取ってください。

そうすると、以下の画像にあるような画面が表示されると思います。

連携可能なデバイスの表示.png

その後、リストの LINE Things dev Board を選択し(以下の画面になります)、

デバイスの選択後.png

画面の「今すぐ利用」をタップしたときに、以下の画面に遷移するようであれば、ひとまず、LINEアプリ上での準備は大丈夫です。

今すぐ利用をタップした後

2. 開発ボードのファームウェアの書きかえ準備

クイックスタートでの説明によると、以下のとおり、既に利用可能なファームが書き込み済みのようです。

予め書かれているファームウェアで、LINE Thingsの機能とボード上に搭載されたデバイスの体験をすることができます。 LINE Things上でモーターを除くすべてのデバイスの状態を取得することや、LEDの制御を行うことができます。
開発ボードのページの「Quick Start」 より

後ほど、書きかえを行うことになると思うので、今回は早速、自分で書きかえを行ってみて利用してみます。

書きこみの準備1: PC上での準備

「開発ボードのページのファームウェア書き込み方法」を見ていきます。

具体的な手順としては、以下の「Arduino IDEを使用する方法」に書かれた流れになるようです。
手順の記載の前に、自分が試した環境の情報を書いておきます。

  • PCやアプリについて
    • MacBook Pro(13インチ,2017)
      • OS: macOS High Sierra
    • Arduino IDE(バージョン 1.8.7)

手順: Arduino IDEを使用する方法

「開発ボードのページのArduino環境とドライバの準備」の部分を参照して進めていきます。

まず行う内容は
 「Arduino IDE のインストール」、
 「Arduino IDE のボードマネージャーでのボード追加」
 「CP2102N driver のインストール」
になります。

書きこみの準備2: 開発ボード上での準備

次に、こちらの開発ボードのほうの準備を進めていきます。

LINE Things 開発ボード(CPUボードとマザーボード)

「開発ボードのページの使用方法」の部分の、CPUボードをマザーボードに挿して使用する方法で進めます。

CPUボードの方向を間違えないよう気をつけながら、マザーボードに挿します。
電源について、「外部電源及びUSB駆動」か「電池駆動」かを選べるようですが、今回は「USB駆動」で進めていきます。
下の写真の赤色で示したスイッチを OFF にし、写真のオレンジの部分 P4ピン を「USB駆動」で利用する場合の設定にします。

LINE_Things開発ボード(CPUボードを取り付けた状態)

P4ピン を「USB駆動」で利用する場合の設定する、という部分は、以下の写真のようにします。

P4ピンの設定前 USB駆動の設定
P4ピンの設定前 USB駆動の設定

マザーボードにのUSB端子(J1)に Micro-USBケーブルを差し、PCへ接続してみて、開発ボードが動作することを確認してみます。

USB接続

PCへ接続したところ、ボードに書き込み済みのスケッチが動作し、ディスプレイに各種センサーの値が表示されました。
ボードを傾けてみたり、スイッチを押してみたりして、ディスプレイに表示された数値が変わったので、正常に動作しているようでした。

3. 開発ボードのファームウェアの書きかえと動作確認

スケッチの書き込み

それでは、開発ボードへのスケッチの書込みを行っていきます。
Arduino IDE で、 ツールから、ボードの選択( Adafruit Bluefruit nRF52 Feather ) とシリアルポートの設定を行います。

ボードの選択.jpg

ここで試しに、空のスケッチを書き込んでみます。
以下のようにエラーなしで書込みが完了すればOKです。

書込み完了.jpg

デフォルトで書き込まれていたスケッチの書き込み

開発ボードのページの「arduino/linethings-dev-default/linethings-dev-default.ino」を書き込んでいきます。

このサンプルでは

  • things_temp_lib
  • SparkFun MMA8452Q Accelerometer
  • Adafruit SSD1306
  • Adafruit GFX Library

を使用しているとのことで、それらを追加します。

上記4つのうち、 things_temp_lib 以外の3つは、以下の画像にある ライブラリを管理 からインストールしてください。

全画面_2019_03_21_18_47.jpg

残りの1つの things_temp_lib については、line-things-dev-board のリポジトリの一式をクローンするか、ZIPでダウンロードし、その中の library/things_temp_lib を zipファイルに圧縮します。
そして、Arduino IDE のライブラリをインクルードからインストールしてください(以下の画像のメニューになります)。

全画面_2019_03_21_18_58.jpg

【★2019/3/28追記】 以下の点は、公式ページが修正されました。
2019年3月21日時点のGitHubの手順だと、自分の環境では以下のエラーがでました。

sketch_mar21a:21:31: error: SparkFun_MMA8452Q.h: No such file or directory
compilation terminated.
exit status 1
SparkFun_MMA8452Q.h: No such file or directory

どうやら、SparkFunの加速度センサ絡みのようで、。。。

上記の対応後、スケッチの書込みを行うと、下記のとおり書き込みを完了できました。
スケッチの書き込み完了.jpg

LINEアプリも含めた動作確認

無事にスケッチの書き込みができたので、LINEアプリと連携する部分を試します。
既に、上記の中のLINEアプリ上で進めていた手順ができている状態であれば、
アプリの
 「友達タブの 設定 ⇒ LINE Things ⇒ マイデバイス」
とたどった先から、上記で導入したアプリを利用できます。
以下、Android版のLINEアプリで、上記のとおり進んだ先の、アプリ画面をキャプチャしたものです。

マイデバイスの表示

あとは、開発ボードとBluetooth通信ができる状態になっていれば、以下の動画のように動作させられます。

以下、アプリの画面で、センサーの値等が表示されている状態のものです。

Screenshot_20190328-221527.png

LINEアプリ上でのLINE Things利用まわりの話の詳細は、LINE Thingsハンズオンの資料の「LINE と LINE Things デバイスを連携させてみよう」の部分なども見てみてください。

終わりに

今回、LINE Thingsの開発ボードのサンプルを動作させるまでを試してみました。
ボードの書き込みはやってみたものの、LINEアプリ側はサンプルを流用したままの状態のため、次に、こちらを自前のBotにそのまま実装してみようと思います。
その後、今回、開発ボードへ書き込んだスケッチも含め、サンプルに手を加えてみたりなどしてみようと思います。

余談: LINE Things に対応したボード

現在(2019/3/11時点)、LINE Thingsに対応したデバイスは以下の5つになっています。
情報元は、GitHub の「line-things-starter のページ」の、「Installing the Firmware」の部分です。

  • Espressif ESP32-DevKitC
  • M5Stack (ESP32)
  • Adafruit Feather nRF52 Bluefruit LE
  • BBC micro:bit
  • Obniz

上記のうち所有しているデバイスが4つで、ESP32 と obniz は試したのですが、残り2つの micro:bit と M5Stack は試せてないため、後ほどこれらも試してみたいと思います。

13
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?