スキップしてメイン コンテンツに移動

HomeBridge の設定 その2(GPIO を使うための設定(wiringPi))

HomeBridge で機器をコントロールするための GPIO を使うため、wiringPi というものを使用します。

1.wiringPi のインストール

homebridge@raspberrypi:~ $ git clone git://git.drogon.net/wiringPi
Cloning into 'wiringPi'...



NOTE: To compile programs with wiringPi, you need to add:
    -lwiringPi
  to your compile line(s) To use the Gertboard, MaxDetect, etc.
  code (the devLib), you need to also add:
    -lwiringPiDev
  to your compile line(s).


2.インストールされた内容の確認

homebridge@raspberrypi:~/wiringPi $ gpio -v
gpio version: 2.36
Copyright (c) 2012-2015 Gordon Henderson
This is free software with ABSOLUTELY NO WARRANTY.
For details type: gpio -warranty

Raspberry Pi Details:
  Type: Pi Zero, Revision: 03, Memory: 512MB, Maker: Sony
  * Device tree is enabled.
  *--> Raspberry Pi Zero Rev 1.3
  * This Raspberry Pi supports user-level GPIO access.


3.現在の GPIO の状況を確認出来ます。

homebridge@raspberrypi:~/wiringPi $ gpio readall
 +-----+-----+---------+------+---+-Pi Zero--+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 |     |     |    3.3v |      |   |  1 || 2  |   |      | 5v      |     |     |
 |   2 |   8 |   SDA.1 |   IN | 1 |  3 || 4  |   |      | 5v      |     |     |
 |   3 |   9 |   SCL.1 |   IN | 1 |  5 || 6  |   |      | 0v      |     |     |
 |   4 |   7 | GPIO. 7 |   IN | 1 |  7 || 8  | 1 | ALT0 | TxD     | 15  | 14  |
 |     |     |      0v |      |   |  9 || 10 | 1 | ALT0 | RxD     | 16  | 15  |
 |  17 |   0 | GPIO. 0 |   IN | 0 | 11 || 12 | 0 | IN   | GPIO. 1 | 1   | 18  |
 |  27 |   2 | GPIO. 2 |   IN | 0 | 13 || 14 |   |      | 0v      |     |     |
 |  22 |   3 | GPIO. 3 |   IN | 0 | 15 || 16 | 0 | IN   | GPIO. 4 | 4   | 23  |
 |     |     |    3.3v |      |   | 17 || 18 | 0 | IN   | GPIO. 5 | 5   | 24  |
 |  10 |  12 |    MOSI |   IN | 0 | 19 || 20 |   |      | 0v      |     |     |
 |   9 |  13 |    MISO |   IN | 0 | 21 || 22 | 0 | IN   | GPIO. 6 | 6   | 25  |
 |  11 |  14 |    SCLK |   IN | 0 | 23 || 24 | 1 | IN   | CE0     | 10  | 8   |
 |     |     |      0v |      |   | 25 || 26 | 1 | IN   | CE1     | 11  | 7   |
 |   0 |  30 |   SDA.0 |   IN | 1 | 27 || 28 | 1 | IN   | SCL.0   | 31  | 1   |
 |   5 |  21 | GPIO.21 |   IN | 1 | 29 || 30 |   |      | 0v      |     |     |
 |   6 |  22 | GPIO.22 |   IN | 1 | 31 || 32 | 0 | IN   | GPIO.26 | 26  | 12  |
 |  13 |  23 | GPIO.23 |   IN | 0 | 33 || 34 |   |      | 0v      |     |     |
 |  19 |  24 | GPIO.24 |   IN | 0 | 35 || 36 | 1 | IN   | GPIO.27 | 27  | 16  |
 |  26 |  25 | GPIO.25 |   IN | 0 | 37 || 38 | 0 | IN   | GPIO.28 | 28  | 20  |
 |     |     |      0v |      |   | 39 || 40 | 0 | IN   | GPIO.29 | 29  | 21  |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+-Pi Zero--+---+------+---------+-----+-----+

等幅フォントが選択出来ないのかな?
見難いですね。
raspberry pi 上ではちゃんと見えてます。

4.次がサーボモーターをコントロールするため、
ServoBlaster のインストール

homebridge@raspberrypi:~/wiringPi $
 git clone git://github.com/richardghirst/PiBits.git

Cloning into 'PiBits'...
remote: Counting objects: 369, done.
remote: Total 369 (delta 5), reused 5 (delta 5), pack-reused 363
Receiving objects: 100% (369/369), 382.21 KiB | 121.00 KiB/s, done.
Resolving deltas: 100% (162/162), done.
Checking connectivity... done.

homebridge@raspberrypi:~/wiringPi $ cd PiBits/ServoBlaster/user

homebridge@raspberrypi:~/wiringPi/PiBits/ServoBlaster/user $ make servod
gcc -Wall -g -O2 -o servod servod.c mailbox.c -lm
homebridge@raspberrypi:~/wiringPi/PiBits/ServoBlaster/user $ sudo make install
[ "`id -u`" = "0" ] || { echo "Must be run as root"; exit 1; }
cp -f servod /usr/local/sbin
cp -f init-script /etc/init.d/servoblaster
chmod 755 /etc/init.d/servoblaster
update-rc.d servoblaster defaults 92 08
/etc/init.d/servoblaster start

homebridge@raspberrypi:~/wiringPi/PiBits/ServoBlaster/user $ ls -l
total 128
-rwxr-xr-x 1 homebridge homebridge  1207 Jan  7 12:16 init-script
-rw-r--r-- 1 homebridge homebridge  7602 Jan  7 12:16 mailbox.c
-rw-r--r-- 1 homebridge homebridge  2349 Jan  7 12:16 mailbox.h
-rw-r--r-- 1 homebridge homebridge   651 Jan  7 12:16 Makefile
-rwxr-xr-x 1 homebridge homebridge 68680 Jan  7 12:17 servod
-rw-r--r-- 1 homebridge homebridge 40027 Jan  7 12:16 servod.c

homebridge@raspberrypi:~/wiringPi/PiBits/ServoBlaster/user $


コメント

このブログの人気の投稿

iPhone を日常使う上での注意(ちょっとした不具合を解消するには)

先日はバックアップの重要性について書きましたが、今日は日常の注意を書いて見たいと思います。
まずは充電の方法から。 皆さん、充電時にはどんなことに注意していますか?
充電は、できるだけバッテリーを使い切るぐらいまで行わず、できれば80〜90%で終了させましょう・・・・なんてやっていませんか?
以前にも充電について書きましたが、基本的には「気にする事は無い!」です。
好きな時に充電をし、好きな時に終えれば良いです。
上記の注意は「ニッケル系」のバッテリー、つまり市販の単三型などの充電式バッテリーについての注意です。昔はニッケルカドミウム、今ではニッケル水素のバッテリーですね。
これは、時々リフレッシュさせる必要があります(昔の人工衛星も年に2回ほどリフレッシュ運用というものを行っていました)。
しかし、現在携帯電話に使用しているリチウムイオン系のバッテリーでは其の様な事は必要ありません。
と言うより、ニッケル系の様なリフレッシュ運用はかえってバッテリーの寿命を縮める(充放電回数を無意味に増やす)だけです。
バッテリー一般の注意である、充電中に熱を持たない様に注意する(寝る時に布団や枕に覆われた状態で充電するなど)こと、電子機器一般の注意である日向や暖房機の前に放置しない、などを守れば十分です。
何故かは良く分かりませんが、昔の iOS では充電時のマークが、稲妻マーク(充電中)とプラグマーク(充電器に接続されているが充電はされていない:充電は終了している)に分かれていました。
今は同じ稲妻マークだけですが、ひょっとしたらプラグマークになるとあわてて充電器から外そうとする人がいるのを懸念しての仕様変更かもしれません。
基本的に「充電器に接続されている」「Wi-Fi に接続されている」「スリープ状態にある」という三つの条件を満たしていれば、1日に一回「iCloud による自動バックアップ」が実行されます。
一番条件の揃いやすいのは就寝時ですよね?
つまり少なくとも寝る前に充電を開始して、朝まで放置しましょうというのがアップルの考え方。その間にバックアップしておきますよという事ですね。

さてその寝る前にあなたは何かしていますか? 私はほぼ毎日、寝る前には動作しているアプリを全て終了させています。
「何のため?」それは
「メモリを解放するため」です。 メモリを解放するアプリ…

Apple ID の変更方法

2017/06/10 :追記

Apple ID の変更方法が変更されました。
以下の最新情報をご確認下さい。

アップルIDの変更

Apple ID をキャリアのメールアドレスなどで作成し、その後にキャリアのメールアドレスを変更してしまい、困っている方が多い様です。
皆さん Apple ID に利用しているメールアドレスを変更すれば、iPhone に使用している Apple ID のメールアドレスも自動的に変更されるものと、勘違いしている様に思います。

また、Apple ID はキャリアのものと勘違いしているのか、キャリアを変更したのだから、Apple ID もそのまま、次のキャリアメールのアドレスになると思っている方も、おられるようです。

Apple ID はあくまでもAppleが発行するIDです。
キャリアとは無関係で、キャリアにそのIDに関する情報が渡ることもありませんし、キャリアの情報がAppleに渡ることもありません。

IDに使用するメールアドレスを変更したいのであれば、自分でAppleのウェブサイトで手続きする必要があります。

https://appleid.apple.com/ja_JP

にアクセスすると、「Apple ID を管理」というボタンがあります。
そこで、現在の(あるいは勝手に変更してしまう以前の)メールアドレスでログインし、手続きをします。
ここで、新しく利用したいメールアドレスを追加すると、本人確認のメールがそのメールに届くので、メールに記載されているURLにアクセスすると、承認されます。
メールアドレスが承認されると、そのメールアドレスをIDに登録し直せます。

最終的にIDのメールアドレス変更直前に、iPhone(該当 iOS 機器やMac 全て)の iCloud と iTunes & App Store から一度ログアウトしてください。
その際に、iPhone にデータを残す必要はありません。
新しいメールアドレスの ID でログインすればまた同期されてデータが戻ります。
残してしまうと、再同期の際に間違ってマージしてしまい、データが二重登録される可能性があります。
もっとも再同期の際に間違えて、iPhone の(何もない)データで、iCloud を上書きすると、全てのデータが失われるので、それよりはマシですけど。

なお、使用…

同期とバックアップ

どうも iPhone や iPod Touch 、 iPad などで iTunes や iCloud との同期設定をきちんと行わず、バックアップなども行っていない方が多く居られる様です。
また、同期やバックアップすると、メールの設定や連絡先などのデータが無くなる、とかいうデマに振り回され、怖がっている方も多い様です。
そこで出来るだけ簡単に、その必要性とやり方を、書いておこうと思います。


まずバックアップの必要性。 これは何も言う事は無いはずです。
万が一 iPhone が故障したり、紛失したりした場合、このバックアップが無いと、全てのデータを失います。
バックアップが有れば、新しい iPhone でも、バックアップ時点の状態に戻せます。
バージョンアップ時も同じですし、新型への機種変の時も同じです。
バックアップが無ければ、初期状態から設定し直さなければいけません。
しかしバックアップを取った後に、受信したMMSメールや写真は、失います。
なので、出来るだけこまめにバックアップをする必要があります。
理想的には毎日行うことです。

次に同期。CDから iTunes に入れた音楽、逆に iPhone で購入した音楽、アプリなどは同期作業によって iPhone に入れたり iTunes にバックアップしたりします。
写真や動画なども同じです。
好きなものを持ち歩いたりするのであれば、同期は必要ですね。
同期の作業は、その始めのステップとして、バックアップを行いますから、バックアップのためにも、必要な作業となります。


現在は iCloud のサービスもあり、同期も重要項目です。
同期とは二つ以上のものを、同じ状態に保つ作業です。
現在の iPhone であれば、iCloud をその同期の中心にし、個々の機械(パソコンや iPhone )が同期を取ります。

iCloud は常に最新の状態が保たれます。
必要であれば、パソコンから iCloud のウェブサイトにアクセスして、利用することもできます。
しかしなぜか、iOS 機器からは、通常の iCloud のウェブ利用はできません。

連絡先などは、iCloud を利用する事で、グループ分けなどが簡単に出来ます。
こちらもなぜか iOS 上では、グループ分けの作業は出来ないのですが、iCloud で行ったグループ分けは利用出来ます。
ウェブサイト上で…