RasberryPiにFabmodulesをセットアップ

Created Date: 2017-10-10/ updated date: 2018-06-13
    Owner & Collaborators
    License
    By nc sa
    Summary
    RasberryPiにFabmodulesをセットアップしMDX-15を動かす為の設定

    Materials

      Tools

        Blueprints

          Making

          • Raspbianのインストール

            0
            Thumb 18746794

            RASPBIAN STRETCH WITH DESKTOPより、 RASPBIAN STRETCH WITH DESKTOP をダウンロードし、解凍します
            2017.10.14現在 2017-09-07-raspbian-stretch.img

            参考(Mac):Download ZIPは時間がかかるが、BiTtorrent クライアントTransmissionをインストールしてDownload Torrentすると早い
            • microSDにディスクイメージを書き込む

              0
              Thumb 18746794
              Mac
              1. ApplePi-Bakerをインストールする
              2. ApplePi-Bakerを立ち上げ、microSDカードをPCに繋ぐ
              3. Pi-CrustにmicroSDカードを選び、IMG fileに2017-09-07-raspbian-stretch.imgを指定する
              4. Restore Backupを押すと、ディスクイメージの書き込みが始まる
              5. 数分で終了

              参考(Windows, Mac)
              Small           2017 10 14 10.52.44
          • Raspbianの初期設定

            0
            Thumb 18746794
            1. microSDカードをRaspberry Piに差し込む
            2. ディスプレイ、キーボード、マウス、LANケーブル、電源を接続し、Raspbianを起動する
            • Raspi-configの設定-1

              0
              Thumb 18746794
              画面上部ツールバー -> Terminal >>開く
              Terminal画面にて
              • raspi-configを起動:$ sudo raspi-config

              Raspi-config画面にて
              • raspi-config自体をアップデート:8 Update -> Enter >>アップデートが始まる
              • ホスト名を変更:2 Hostname -> raspberrypi(今回は変更しない)
              Small           2017 10 14 14.40.39
            • Raspi-configの設定-2

              0
              Thumb 18746794
              • 日本語設定:4 Localisation Options -> 11 Change Locale -> 「es_US.UTF-8 UTF-8」「ja_JP.UTF-8 UTF-8」にスペースキーで「*」を入れ、「en_GB.UTF-8 UTF-8」はスペースキーで外す。「C.UTF-8」「es_US.UTF-8」「ja_JP.UTF-8」>>OK
            • Raspi-configの設定-3

              0
              Thumb 18746794
              • タイムゾーン設定:4 Localisation Options -> 12 Change Timezone -> Asia -> Tokyo
              • WiFi国別設定:4 Localisation Options -> 14 Change Wifi Country -> JP Japan -> OK

            • Raspi-configの設定-4

              0
              Thumb 18746794
              • SSH接続:5 Interfacing Options -> 「P2 SSH」-> Yes
              • VNC接続:5 Interfacing Options ->「P3 VNC」-> Yes
              • シリアル接続:5 Interfacing Options ->「P6 Serial」-> Yes
            • 再起動

              0
              Thumb 18746794
              • トップメニュー-> Finish -> Would you like to reboot now? -> Yes >>再起動
            • Raspbianのパッケージ、ファームウェアのアップデート

              0
              Thumb 18746794
              画面上部ツールバー -> Terminal >> 開く
              キーボード設定を必要に応じて行う
              Terminal画面にて
              $ sudo apt update && sudo apt -y full-upgrade && sudo rpi-update

              再起動
              $ sudo shutdown -r now

              ツールバー -> RasPiロゴ -> Shutdown -> Shutdown >> 電源OFF
          • SSH接続

            0
            Thumb 18746794
            そのまま進めても問題ありませんが、PCとラズパイをSSHで繋ぐと、モニター、キーボード、マウスなどをラズパイから外して作業が出来ます。

            必要であればSSH接続をします。

            以前のRaspbianはディフォルトでSSHが有効でしたが、今のバージョンは違いますので、Raspi-configの設定-4でSSHを有効にしました。


            • PCとラズパイを繋ぐ

              0
              Thumb 18746794
              PCとラズパイが同じローカルネットワーク内にいる必要があります。作業環境にあった方法で繋いで下さい。

              ラズパイとPCがLANケーブルかWiFiで同じネットワークに繋がっていればそのままSSH接続ができます。

              参考
              Raspberry Pi の物理的な接続形態
            • PCのTerminalから操作する

              0
              Thumb 18746794
              Mac
              Lunchpad -> その他 -> Terminal >>開く

              (ホスト名を変えた場合は、「raspberrypi」の部分を変えたホスト名にします)
              $ ssh pi@raspberrypi.local
              pi@raspberrypi:~ $
               >>これでパズパイをPCから操作可能になった
              確認
              $ ping raspberrypi.local
              止める時:control+c

              参考(Windows, Mac)
              Raspberry Pi の SSH 接続
          • VNC接続

            0
            Thumb 18746794
            SSH接続と同様に、そのまま進めても問題ありませんが、PCとラズパイをVNC接続すると、PCのモニターでラズパイのデスクトップを見ながら作業が出来ます。キーボードもマウスもPCのものが使えます。

            必要であればVNC接続をします。

            2017-09-07-raspbian-stretchでは、RealVNCが入っています。
            Raspi-configの設定-4でVNCを有効にしました。
            • RealVNC Viewerのインストールと接続

              0
              Thumb 18746794
              Mac
              前のバージョンと違い、macOS標準の Finder -> サーバーに接続 ではVNC接続出来なくなりました。RealVNCServerではポート5900が使われています。

              VNC VIEWERをインストールします
              起動する-> File -> New connection -> Properties -> General
              VNC Server:raspberrypi.local::5900 -> OK

              アイコンをクリック >> Authentication
              username:pi
              password:Raspberry
              • Small           2017 10 14 14.25.39
              • Small           2017 10 14 14.26.24
              • Small           2017 10 14 14.27.40
            • 解像度が低い時

              0
              Thumb 18746794
              1. 「RasPiロゴ」-> Preference -> Raspberry Pi Configuration
              2. System -> Resolution -> Set Resolution >>解像度を選ぶ
              • Small pref
              • Small           2017 10 14 14.36.57
          • FireFoxのインストール

            0
            Thumb 18746794
            FabmodulesはRaspbian同梱のChromium Web Browserではうまく動かないので、FireFoxをインストールします。

            Terminalにて
            $ sudo apt -y install firefox-esr

            • Fabmodulesのインストール

              0
              Thumb 18746794
              fabmodules-html5をインストールする前に、How to install にあるPre-requisitesが既にインストールされているか確認し、ないものはインストールする

              whichコマンドを使って、フルパス名を確認して行きます
              $ which コマンド名

              パッケージは、apt search コマンドを使って確認します
              $ apt search パッケージ名
              先頭だけ分かっている時
              $ apt search ^firefox



              • Pre-requisites確認-1

                0
                Thumb 18746794

                ターミナルにて
                $ which git
                /usr/bin/git
                >>パスが表示されたので既にあり

                $ which wget
                /usr/bin/wget

                $ apt search nodejs-legacy
                nodejs-legacy/stable,now 4.8.2~dfsg-1 all [インストール済み、自動]

                $ which npm
                >>何も出ないのでインストールが必要

                $ apt search python
                >>たくさん出ますが、インストール済み

              • Pre-requisites確認-2

                0
                Thumb 18746794
                $ apt search pyserial
                python-serial/stable,now 3.2.1-1 all [インストール済み]
                python3-serial/stable,now 3.2.1-1 all [インストール済み]

                $ apt search python-tk
                python-tk/stable,now 2.7.13-1 armhf [インストール済み]
              • fabmodulesをgit clone

                0
                Thumb 18746794
                $ git clone https://github.com/FabModules/fabmodules-html5.git fabmodules
                $ cd fabmodules
              • なかったnpmをインストール

                0
                Thumb 18746794
                $ sudo npm install
                $ sudo npm install mime-types
                $ cd node_modules/node-static/lib
                $ nano node-static.js
                =中身=
                  , mime   = require('mime')
                上記を下記に書き換える
                  , mime   = require('mime-types')
                保存して終了する
                control+x -> Y -> enter
              • 起動確認

                0
                Thumb 18746794
                $ cd ~/fabmodules/
                $ npm start
                > fabmodules-html5@1.0.0 start /home/pi/fabmodules
                > PATH=./mod_server/:$PATH node ./mod_server/mod_server.js
                listening for connections from 127.0.0.1 on 12345

                Firefoxを起動して「http://localhost:12345」 を入力  ->fabmodules起動
            • 権限の変更

              0
              Thumb 18746794
              $ sudo adduser pi dialout
              $ cd ~
              $ sudo nano /lib/udev/rules.d/50-udev-default.rules

              =中身=
              KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*",  GROUP="dialout"
              上記に追加
              KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*",  GROUP="dialout", MODE="0666"
              保存して終了
              • npm startの自動起動設定

                0
                Thumb 18746794
                ラズパイを起動してFabmodulesを使うまでにコマンドを入力しなくてもいいように、

                $ cd fabmodules/
                $ npm start
                の入力を自動化する
                • スクリプトの作成

                  0
                  Thumb 18746794
                  $ mkdir ~/bin

                  $ nano ~/bin/npm-start.sh
                  エディタが開くので中身をコピーする
                  ==中身==
                  #!/bin/sh
                  # $Id:$
                  #
                  HOME=/home/pi
                  NPM_CMD=/usr/bin/npm
                  FABMODULES_DIR=${HOME}/fabmodules
                  LOG_FILE=${HOME}/`basename $0`.log
                  export DISPLAY=:0.0
                  cd ${FABMODULES_DIR}
                  ${NPM_CMD} start > ${LOG_FILE} &
                  =====
                  保存して終了

                  $ chmod +x ~/bin/npm-start.sh

                • CRON(自動起動)の設定

                  0
                  Thumb 18746794
                  $ crontab -e
                  >>エディタを選んで起動
                  =中身=
                  ※最後の行に以下を追加
                  @reboot   /home/pi/bin/npm-start.sh
                  ====
                  保存して終了
              • 自動起動確認

                0
                Thumb 18746794
                $ sudo shutdown -r now
              Add Card Order

              References

                Usages

                  Convert State

                   to Annotation.

                  Select the numebr of the state to annotate.

                  OK
                  cancel
                  Loading

                  facebook

                  , data-width="400", data-show-faces="true" data-send="true"
                  , data-width="400", data-order-by="reverse_time"