raspberry pi zero wをヘッドレスインストールしつつBlynk仕込んだときのメモ
個人的メモなので中身はカスです
だいぶ前に買ってあったラズパイZero wを使って遊ぶ。
手元のmicroSDHCを見てみた。
NOOBS 2.4.2がはいっている。なんかたしかにSDカードはいってたケースに「NOOBS 2.4.2 RASPBIAN 20170710」って書いてある。
古いの使ってもアレなので消した。こういうのは勢いが大事。
どうやらraspbian直焼きも、NOOBSももう古くて(びっくり・・・)、
いまはRaspberry Pi Imagerを使うのがいいらしい。
昨日軽く調べたときにNOOBSって単語を初めて知ったのに。。
https://www.raspberrypi.org/downloads/
Raspberry Pi Imager for macOSを手に入れる。
さくっとインストール。
買ってあったSDカードだが、Finderで開くとFATで2GBくらいしかない。
https://www.raspberrypi.org/help/noobs-setup/2/
どうやらSD Formatterでフォーマットするのがいいらしい。まぁSDHCだしな。
すぐにDLできたので、フォーマットした。
ちゃんとFAT32で8GBとして認識されるようになった。
Raspberry Pi Imagerを起動して、
RASPBERRY PI OS (32-bit)を選択、あとはSDカード選択して焼くだけ。
時間はかかったが、焼き上がり。
たしかヘッドレスインストールするには、ここからSSHの有効化、それからWi-Fiの設定が必要なはず。
参考資料
- https://qiita.com/HeRo/items/c1c30d7267faeb304538
- https://qiita.com/IMdev/items/310a4125ce068504cdc4
- https://qiita.com/rshibasa/items/c63ff7450842e3b0ab9b
- https://qiita.com/mascii/items/a43d71572e1919e56398
Wi-Fiの設定。
> 802.11 b/g/n wireless LAN
ってことは、5GHzのほうはやっぱりだめだ(こういう勘はいい(嘘))。
https://mascii.github.io/wpa-supplicant-conf-tool/
でconfをつくる。ssh.txtも作れるのが面白い:+1:
blackmint:/ watahari$ cp ~/Downloads/wpa_supplicant.conf /Volumes/boot/ファイルのownershipこれでいいんかな?と思ったけどどうせ全部俺のアカウントだしいいだろう。
blackmint:~ watahari$ ll /Volumes/boot/wpa_supplicant.conf
-rwxrwxrwx@ 1 watahari staff 194 6 8 19:29 /Volumes/boot/wpa_supplicant.conf
あ、これブログに書いたらMacの名前がblackmintなのとかばれるなテヘペロ
sshの設定もする。
blackmint:~ watahari$ touch /Volumes/boot/sshなんかデスクトップ画面っぽいのが出た(HDMIだけつないでいる)。
blackmint:~ watahari$ ll /Volumes/boot/ssh
-rwxrwxrwx 1 watahari staff 0 6 8 19:30 /Volumes/boot/ssh
ただ、なんかNextを押せとか書いてある。まぁ無視やね。
blackmint:~ watahari$ ssh pi@raspberrypi.local初期パスワードは`raspberry`。
無事はいれた。
blackmint:~ watahari$ ssh pi@raspberrypi.localここからは、リモートでデスクトップいじれるようになりたい。
Warning: Permanently added the ECDSA host key for IP address 'XXX.XXX.XXX.XXX' to the list of known hosts.
pi@raspberrypi.local's password:
Linux raspberrypi 4.19.118+ #1311 Mon Apr 27 14:16:15 BST 2020 armv6l
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: Wed May 27 08:31:49 2020
SSH is enabled and the default password for the 'pi' user has not been changed.
This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.
pi@raspberrypi:~ $
sudo raspi-configBoot Options > Desktop/CLI > Desktop autologinを選択(ローカルでしか使わない予定なのでこれでよさそう)
Interfacing Options > VNC > Would you like the VNC Server to be enabled? > Yes
Advanced Options > Resolution >
raspi-config抜けようとしたら、ここでrebootとなった。
ifconfigでローカルIPアドレスだけ特定。
sudo vncpasswd -serviceリモートパスワードも設定
Mac側にはRealVNC Viewerをインストールして利用。成功!
この辺でテキトーにパスワード変更など実施しておいた。
本当は別にアカウントとか作ったほうがいいかな?まぁローカル稼働だけの予定なので、これでおわり。
=========
さて、Blynkをセットアップする。
https://github.com/blynkkk/lib-python
pi@raspberrypi:~ $ python --version
Python 2.7.16
pi@raspberrypi:~ $ pip --version
pip 18.1 from /usr/lib/python2.7/dist-packages/pip (python 2.7)
pi@raspberrypi:~ $ sudo pip install blynklib
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting blynklib
Downloading https://files.pythonhosted.org/packages/7e/c5/56fbfa30606c59c8027a652a123d6071a1e5a225a33be5ad65f64cac81fd/blynklib-0.2.6-py2-none-any.whl
Installing collected packages: blynklib
Successfully installed blynklib-0.2.6
https://github.com/blynkkk/lib-python/tree/master/examples/raspberry
pi@raspberrypi:~ $ sudo apt-get -y install python-rpi.gpio
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
python-rpi.gpio はすでに最新バージョン (0.7.0-0.1~bpo10+1) です。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 22 個。
https://github.com/blynkkk/blynk-library/blob/master/linux/README.md
http://wiringpi.com/download-and-install/
pi@raspberrypi:~ $ mkdir blynk
pi@raspberrypi:~ $ cd blynk
pi@raspberrypi:~/blynk $ git clone https://github.com/blynkkk/blynk-library.git
Cloning into 'blynk-library'...
remote: Enumerating objects: 13, done.
remote: Counting objects: 100% (13/13), done.
remote: Compressing objects: 100% (13/13), done.
remote: Total 11469 (delta 5), reused 1 (delta 0), pack-reused 11456
Receiving objects: 100% (11469/11469), 9.21 MiB | 976.00 KiB/s, done.
Resolving deltas: 100% (7209/7209), done.
pi@raspberrypi:~/blynk $ cd blynk-library/linux
pi@raspberrypi:~/blynk/blynk-library/linux $ sudo apt-get install wiringpi
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
wiringpi はすでに最新バージョン (2.50) です。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 22 個。
pi@raspberrypi:~/blynk/blynk-library/linux $ make clean all target=raspberry
rm main.o ../src/utility/BlynkDebug.o ../src/utility/BlynkHandlers.o ../src/utility/BlynkTimer.o blynk
rm: 'main.o' を削除できません: そのようなファイルやディレクトリはありません
rm: '../src/utility/BlynkDebug.o' を削除できません: そのようなファイルやディレクトリはありません
rm: '../src/utility/BlynkHandlers.o' を削除できません: そのようなファイルやディレクトリはありません
rm: '../src/utility/BlynkTimer.o' を削除できません: そのようなファイルやディレクトリはありません
rm: 'blynk' を削除できません: そのようなファイルやディレクトリはありません
make: [Makefile:64: clean] エラー 1 (無視されました)
g++ -I ../src/ -I ./ -DLINUX -c -O3 -w -DRASPBERRY main.cpp -o main.o
g++ -I ../src/ -I ./ -DLINUX -c -O3 -w -DRASPBERRY ../src/utility/BlynkDebug.cpp -o ../src/utility/BlynkDebug.o
g++ -I ../src/ -I ./ -DLINUX -c -O3 -w -DRASPBERRY ../src/utility/BlynkHandlers.cpp -o ../src/utility/BlynkHandlers.o
g++ -I ../src/ -I ./ -DLINUX -c -O3 -w -DRASPBERRY ../src/utility/BlynkTimer.cpp -o ../src/utility/BlynkTimer.o
g++ main.o ../src/utility/BlynkDebug.o ../src/utility/BlynkHandlers.o ../src/utility/BlynkTimer.o -lrt -lpthread -s -lwiringPi -o blynk
pi@raspberrypi:~/blynk/blynk-library/linux $ sudo ./blynk --token=<ここにアプリ側で発行したTokenを書く>
[0]
___ __ __
/ _ )/ /_ _____ / /__
/ _ / / // / _ \/ '_/
/____/_/\_, /_//_/_/\_\
/___/ v0.6.1 on Linux
[5] Connecting to blynk-cloud.com:80
[346] Ready (ping: 101ms).
うまくいったにっこり。
systemdにいれて自動起動させておこう。
って。vimはいっとらんやんけ
https://qiita.com/B73W56H84/items/1d164a3c083872e10ccb
うはは
pi@raspberrypi:~/blynk/blynk-library/linux $ sudo apt-get --purge remove vim-common vim-tiny
pi@raspberrypi:~/blynk/blynk-library/linux $ sudo apt-get install vim
はい。んじゃsystemd。
pi@raspberrypi:~/blynk/blynk-library/linux $ sudo touch /etc/systemd/system/blynk.service
pi@raspberrypi:~/blynk/blynk-library/linux $ sudo vim /etc/systemd/system/blynk.service
pi@raspberrypi:~/blynk/blynk-library/linux $ cat /etc/systemd/system/blynk.service
Description = Blynk service
[Service]
ExecStart = /home/pi/blynk/blynk-library/linux/blynk --token=<ここにアプリ側で発行したTokenを書く>
ExecStop = /bin/kill $MAINPID
Restart = always
[Install]
WantedBy = multi-user.target
まぁトークンベタで持っていいんかって話はあるけどええやろ。
pi@raspberrypi:~/blynk/blynk-library/linux $ sudo systemctl start blynk
pi@raspberrypi:~/blynk/blynk-library/linux $ journalctl -f -u blynk
-- Logs begin at Wed 2020-06-10 23:08:18 JST. --
6月 11 00:04:17 raspberrypi systemd[1]: /etc/systemd/system/blynk.service:1: Assignment outside of section. Ignoring.
6月 11 00:04:17 raspberrypi systemd[1]: Started blynk.service.
6月 11 00:04:17 raspberrypi blynk[1623]: [1]
6月 11 00:04:17 raspberrypi blynk[1623]: ___ __ __
6月 11 00:04:17 raspberrypi blynk[1623]: / _ )/ /_ _____ / /__
6月 11 00:04:17 raspberrypi blynk[1623]: / _ / / // / _ \/ '_/
6月 11 00:04:17 raspberrypi blynk[1623]: /____/_/\_, /_//_/_/\_\
6月 11 00:04:17 raspberrypi blynk[1623]: /___/ v0.6.1 on Linux
6月 11 00:04:17 raspberrypi blynk[1623]: [6] Connecting to blynk-cloud.com:80
6月 11 00:04:18 raspberrypi blynk[1623]: [405] Ready (ping: 142ms).
^C
pi@raspberrypi:~/blynk/blynk-library/linux $ sudo systemctl enable blynk
Created symlink /etc/systemd/system/multi-user.target.wants/blynk.service → /etc/systemd/system/blynk.service.
この状態でいい感じに動いていることを再度確認した。
一応rebootしてもblynkが動いているのか見ておこう。
pi@raspberrypi:~/blynk/blynk-library/linux $ sudo rebootでリブート後。
pi@raspberrypi:~/blynk/blynk-library/linux $ Connection to raspberrypi.local closed by remote host.
Connection to raspberrypi.local closed.
pi@raspberrypi:~ $ systemctl status blynkいいね。おわり〜。
● blynk.service
Loaded: loaded (/etc/systemd/system/blynk.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2020-06-11 00:06:05 JST; 3min 50s ago
Main PID: 262 (blynk)
Memory: 1.8M
CGroup: /system.slice/blynk.service
└─262 /home/pi/blynk/blynk-library/linux/blynk --token=<ここにアプリ側で発行したTokenを書く>
6月 11 00:06:06 raspberrypi blynk[262]: /____/_/\_, /_//_/_/\_\
6月 11 00:06:06 raspberrypi blynk[262]: /___/ v0.6.1 on Linux
6月 11 00:06:06 raspberrypi blynk[262]: [35] Connecting to blynk-cloud.com:80
6月 11 00:06:06 raspberrypi blynk[262]: [116] Cannot get addr info
6月 11 00:06:11 raspberrypi blynk[262]: [5068] Connecting to blynk-cloud.com:80
6月 11 00:06:11 raspberrypi blynk[262]: [5076] Cannot get addr info
6月 11 00:06:16 raspberrypi blynk[262]: [10099] Connecting to blynk-cloud.com:80
6月 11 00:06:16 raspberrypi blynk[262]: [10101] Cannot get addr info
6月 11 00:06:21 raspberrypi blynk[262]: [15108] Connecting to blynk-cloud.com:80
6月 11 00:06:21 raspberrypi blynk[262]: [15350] Ready (ping: 93ms).
コメント