RasberryPiにFabmodulesをセットアップ
Owner & Collaborators
License
RasberryPiにFabmodulesをセットアップ by y2miya is licensed under the Creative Commons - Attribution-NonCommercial-ShareAlike license.
Summary
RasberryPiにFabmodulesをセットアップしMDX-15を動かす為の設定
Materials
Tools
Blueprints
Making
RASPBIAN STRETCH WITH DESKTOPより、 RASPBIAN STRETCH WITH DESKTOP をダウンロードし、解凍します2017.10.14現在 2017-09-07-raspbian-stretch.img参考(Mac):Download ZIPは時間がかかるが、BiTtorrent クライアントTransmissionをインストールしてDownload Torrentすると早い- Mac
- ApplePi-Bakerをインストールする
- ApplePi-Bakerを立ち上げ、microSDカードをPCに繋ぐ
- Pi-CrustにmicroSDカードを選び、IMG fileに2017-09-07-raspbian-stretch.imgを指定する
- Restore Backupを押すと、ディスクイメージの書き込みが始まる
- 数分で終了
参考(Windows, Mac) - ApplePi-Bakerをインストールする
- microSDカードをRaspberry Piに差し込む
- ディスプレイ、キーボード、マウス、LANケーブル、電源を接続し、Raspbianを起動する
- 画面上部ツールバー -> Terminal >>開くTerminal画面にて
- raspi-configを起動:$ sudo raspi-config
Raspi-config画面にて- raspi-config自体をアップデート:8 Update -> Enter >>アップデートが始まる
- ホスト名を変更:2 Hostname -> raspberrypi(今回は変更しない)
- 日本語設定: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
- 日本語設定: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
- タイムゾーン設定:4 Localisation Options -> 12 Change Timezone -> Asia -> Tokyo
- WiFi国別設定:4 Localisation Options -> 14 Change Wifi Country -> JP Japan -> OK
- タイムゾーン設定:4 Localisation Options -> 12 Change Timezone -> Asia -> Tokyo
- SSH接続:5 Interfacing Options -> 「P2 SSH」-> Yes
- VNC接続:5 Interfacing Options ->「P3 VNC」-> Yes
- シリアル接続:5 Interfacing Options ->「P6 Serial」-> Yes
- SSH接続:5 Interfacing Options -> 「P2 SSH」-> Yes
- トップメニュー-> Finish -> Would you like to reboot now? -> Yes >>再起動
- 画面上部ツールバー -> Terminal >> 開くキーボード設定を必要に応じて行うTerminal画面にて$ sudo apt update && sudo apt -y full-upgrade && sudo rpi-update再起動$ sudo shutdown -r nowツールバー -> RasPiロゴ -> Shutdown -> Shutdown >> 電源OFF
- そのまま進めても問題ありませんが、PCとラズパイをSSHで繋ぐと、モニター、キーボード、マウスなどをラズパイから外して作業が出来ます。必要であればSSH接続をします。以前のRaspbianはディフォルトでSSHが有効でしたが、今のバージョンは違いますので、Raspi-configの設定-4でSSHを有効にしました。
- PCとラズパイが同じローカルネットワーク内にいる必要があります。作業環境にあった方法で繋いで下さい。ラズパイとPCがLANケーブルかWiFiで同じネットワークに繋がっていればそのままSSH接続ができます。参考Raspberry Pi の物理的な接続形態
- MacLunchpad -> その他 -> Terminal >>開く(ホスト名を変えた場合は、「raspberrypi」の部分を変えたホスト名にします)$ ssh pi@raspberrypi.localRaspberry Pi の SSH 接続
pi@raspberrypi:~ $
>>これでパズパイをPCから操作可能になった
確認
$ ping raspberrypi.local
止める時:control+c
参考(Windows, Mac)
- SSH接続と同様に、そのまま進めても問題ありませんが、PCとラズパイをVNC接続すると、PCのモニターでラズパイのデスクトップを見ながら作業が出来ます。キーボードもマウスもPCのものが使えます。必要であればVNC接続をします。2017-09-07-raspbian-stretchでは、RealVNCが入っています。Raspi-configの設定-4でVNCを有効にしました。
- Mac前のバージョンと違い、macOS標準の Finder -> サーバーに接続 ではVNC接続出来なくなりました。RealVNCServerではポート5900が使われています。VNC VIEWERをインストールします起動する-> File -> New connection -> Properties -> GeneralVNC Server:raspberrypi.local::5900 -> OK
アイコンをクリック >> Authentication
username:pi
password:Raspberry - 「RasPiロゴ」-> Preference -> Raspberry Pi Configuration
- System -> Resolution -> Set Resolution >>解像度を選ぶ
- FabmodulesはRaspbian同梱のChromium Web Browserではうまく動かないので、FireFoxをインストールします。Terminalにて$ sudo apt -y install firefox-esr
- fabmodules-html5をインストールする前に、How to install にあるPre-requisitesが既にインストールされているか確認し、ないものはインストールするwhichコマンドを使って、フルパス名を確認して行きます$ which コマンド名パッケージは、apt search コマンドを使って確認します$ apt search パッケージ名先頭だけ分かっている時$ apt search ^firefox
ターミナルにて$ which git/usr/bin/wget
/usr/bin/git
>>パスが表示されたので既にあり
$ which wget
$ apt search nodejs-legacy
nodejs-legacy/stable,now 4.8.2~dfsg-1 all [インストール済み、自動]
$ which npm
>>何も出ないのでインストールが必要
$ apt search python
>>たくさん出ますが、インストール済み
- $ 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 [インストール済み] - $ git clone https://github.com/FabModules/fabmodules-html5.git fabmodules$ cd fabmodules
- $ 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 - $ 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起動
- $ echo “export DISPLAY=:0.0” >> .bashrc
- $ 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"
保存して終了 - ラズパイを起動してFabmodulesを使うまでにコマンドを入力しなくてもいいように、$ cd fabmodules/
$ npm start
の入力を自動化する- $ 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 - $ crontab -e>>エディタを選んで起動=中身=※最後の行に以下を追加
@reboot /home/pi/bin/npm-start.sh====保存して終了
- $ sudo shutdown -r now
- http://academy.cba.mit.edu/classes/embedded_programming/hello.ISP.44.traces.pngFabmodulesでパス生成の確認に使用します
- ラズパイ起動
- Firefox起動
- localhost:12345 を入力
- Fabmodules が表示される
- pngからパス生成する
localhost:12345にアクセスしやすいように、FirefoxのHome Pageに登録しておくとよい。このmicroSDカードを使って、RaspberryPiのFabmodulesからMDX-15で基盤切削が出来ます。
Comments