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

投稿

2016の投稿を表示しています

ホームアプリで、自宅の制御を家族にも公開する。

ホームアプリでエアコンのオン・オフやガレージのシャッターの開け閉めが出来る様になれば、当然家族にも使わす(共有させる)ことになります。
これでシャッターのリモコンを間違って持ってゆかれて「リモコンが足りない!」なんて事も無くなります。

って思ったらまたまた問題が・・・
ホームアプリでアクセサリー(個々のエアコンなど)を各部屋に設定し、部屋毎にコントロール可能にして、メインのホーム画面には一部のスイッチだけを設定しました。
が、・・・・・
それを共有された側は、確かに各部屋の設定は反映されていますが、メインの画面には全てのスイッチがずらっと並んでしまいます。
ナンジャコリャ?

最初に設定した iPhone 7 の画面がこれ。


で、それを共有された方の iPhone 5s の画面がこちら。


もちろん両方とも iOS のバージョンは「10.2」の最新バージョン。
ついでにiPhone 7 の方はアップルTVのエラーの表示。
でもなぜか、iPhone 5s はわざと Wi-Fi を切っているにも関わらずちゃんとアクセス出来てます。
これも変ですよね。

例えば、ガレージの照明のスイッチの詳細を確認すると、iPhone 7 ではこんな感じで、


iPhone 5s で確認すると、


こんな感じで勝手に「よく使う項目」に登録されていて、しかも半透明となって選択できません。

うーん困った。
って事で、アップルのサポートにチャットで相談。
ひとまず上記のスクリーンショット送って、状況を説明。
で、スペシャリストから電話を掛けてもらえる事になりました。
最初から電話での相談だと、順番待ちが長い事も多いし、言葉だけで説明するのは大変ですからね。
スクリーンショット送っておけば話は早いし、電話で繋がるまで待つのと、相手からかかってくるのとでは大違い。
同じ待ち時間でも気持ちが違います。
その間にこうやってブログの下書きもできちゃうし(笑)。

で、結論としては
できない! って事です。
まだまだ発展途上というか、ろくに仕様も定まっていないというか・・・
当面は他社のアプリを使った方が良いかもしれません。
でも目的の装置にアクセスするのは「ホーム」アプリの方が楽な様な・・・
悩ましいですね。


12月27日:追記
「出来ない」はずの事が出来た! しかも勝手に。

えっ? なんの話って。
いや、公開したホ…

Homebridge での bash の振る舞い(シェルが起動されない)

HomeBridge でシェルを起動して、ガレージのシャッターを開け閉め出来る様にしたものの、そのままだと通常のリモコンでシャッターを開け閉めされるとその状況がわかりません。
そこで、窓の開閉状態を確認できるマグネットセンサーを使い、その状況を GPIO 端子で確認できる様にしました。
単純にセンサーを GPIO 端子とグランド端子に繋いで、GPIO 端子の方は通常時にプルアップしておけば、センサーが感知すれば GPIO 端子は0となります。
これをシャッターの上下に付ければ、閉まっている、開いている、開け閉めの途中の三つの状態を確認出来ます。
で、ついでなので、日没から夜明けまでの時間帯にシャッターの開け閉めをしたら電気もつけたり消したり出来る様にしました。
シェルを叩いて、サーボが動いたのを確認しつつ、センサーの前にマグネットを置いたり離したり。
壁の照明用のスイッチ用のサーボの動作も日没の時刻を弄ってちゃんと動いたのを確認していざシャッターのところにセット。
シャッターの動きに追従して、GPIO のステータスも問題なく動作。
照明もちゃんとオン・オフしてくれます。

で、いざ iPhone を取り出して「シャッターをオン」・・・・ ん?
照明のスイッチ用のサーボが動かない?

色々試してみたところ、パソコンから直接サーバーのシェルを起動すれば問題なく動作するものの、iPhone のホームアプリからだと一部が動かない。
で、結局シェルから別のシェルを起動していると、そこが動かないことが分かりました。
シャッターの開閉のシェルから、自動で照明を点けるシェルを呼び、そのシェルからは夜間かどうかを別のシェルに依頼して確認し、スイッチを入れるか判断しています。
で、普通にシェルとして起動すれば問題ないのに、ホームアプリからだとシャッターの開閉はしても照明のオン・オフは動かない。

って訳で、シャッターの開閉のシェルの中で、自分で夜間かどうかを確認して照明のスイッチを動かす様にしたら問題解決。
でもなんで子供のシェルが動かないのだろう?

声で家電の操作(Mac編)

先日Mac の OSを最新の 10.12.1 (Sierra)にアップデートしました。
で、Mac でも Siri が使える様になりました。
ただ iPhone みたいに「ヘイ シリ」で起動できないんですね。

で、裏技的に Mac のアクセシビリティの機能から音声入力の機能を使って Siri を起動出来ます。

で、ここでちょっと気がつきました。
じゃあ、音声でプログラムを起動できるよね?
音声コマンド自体の起動を音声で出来るんですね。
「ヘイ」で音声コマンドの入力待ちになって「シリ」でSiriが起動。
そして音声でSiriに命令って手順なんですが、今までやってきた HomeBirdge の関係はシェルスクリプトで Raspberry pi のリモートシェルを起動してやればいいって事。

シェルスクリプト自体は音声コマンドで起動出来ませんが、途中に「Automator」ってMacの自動実行の仕組みを取込めば可能です。

Automator でシェルスクリプトの起動をアプリケーションとして作成してやれば、そのアプリを音声コマンドで起動出来ます。

音声コマンドの起動は標準の「コンピュータ」のまま。
これに「ランプオン」という音声コマンドを追加して、アプリの「音声オン」を起動。
そのアプリがリモートシェルを起動して、Raspberry pi にシェルを実行させてくれます。

Mac に向かって「コンピュータ、ランプオン」で手元のスタンドが点灯する様になりました。
この「コンピュータ」って呼びかけは、スタートレックと同じですね。
「2001年宇宙の旅」風にしたいなら「HAL」だし、スターウォーズ風なら「R2!」とか「C3-PO」ですね。

Siri で家電を操作(その4) 部屋の電灯の操作

さて、なんとか部屋の電気(というより最終的には玄関先と、玄関の電気を自動的にオン・オフさせたいなと考えていますが、ひとまず荒っぽい手法で自室の部屋はなんとか動く様に出来ました。
こちらは赤外線リモコンは使っておらず、有線での配線(これもLANケーブルを流用)です。

前にもちょっと書きましたが、部屋の電気のスイッチは、押す度にオン・オフが切り替わるタイプです。
ですから、遠隔でオン・オフする為には今電気が点いているのか消えているのか判断しないと、スイッチを押して良いのかの判断が出来ません。
なので、何処かにセンサーが必要ですが、電灯そのものにセンサーをつけるとなると、これまた配線の問題が出てきます。
自室なら天井に無粋なケーブルが一本くらい走っても良いのですが、玄関外となるとどうやって屋内に引き込むかなどの問題が出てきます。

で、考えたのは「蛍スイッチ」と呼ばれるスイッチ部にLEDが入っていて状態によって点灯するタイプ。
ただ、実際に玄関にあるスイッチは、オフで緑色に点灯し、オンで赤色に点灯します。
特に昼間はドアの外で電気が点いていても判断出来ないので、赤色の点灯は必須。
夜間暗い中でもスイッチの操作が出来る様にオフの時は緑色に光るのですが、こっちはいるのかな?

とりあえず、自室のスイッチをLED付きにしましたが、これはオフの時に緑に光るだけのタイプ。
試験は条件を簡単にしないとね。

で、LEDの点灯は光スイッチを使いましたが、これはとりあえず「秋月電子」さんが扱っている光センサースイッチキットを流用しました。
これが正解。
普通に売っているセンサーは小さいもので直径が5mm。このキットに入っているセンサーは直径が少し小さい4mmです。
これを蛍機能付きのスイッチのLEDの窓の透明プラスチックを外した穴の横幅4mmにピッタリ。

見にくいですけど、こんな感じでセンサーが付きました。


青いスイッチの動作部分の左に見える、青と白の二本のケーブルがセンサーに繋がるケーブルでその先の小さな丸いのがセンサーです。
で、ひとまずは壁に直接サーボモーターを貼り付け、余っていたフラットなLANケーブルで直接 Raspberry Pi 3 とつないでいます。

Raspberry Pi 3 の左側に見えるLANケーブルがそのまま壁づたいでスイッチに繋がっています。

センサーの出力は、オ…

Siri で家電を操作(その3)自宅内の配線

さてさて、自宅の色々なものを Siri(iPhone)で操作出来る様にという事で、一先ずはガレージのシャッターと、エアコンなどを先行させて整備しています。
で、サーバー(Raspberry Pi 3)のある自分の部屋と、ガレージ用に用意した Raspberry Pi Zero はともかく、他の部屋のエアコンはどうやって操作しましょうか。
ガレージのセンサーの検討で、下手に無線でシグナルを飛ばすよりは Raspberry Pi Zero を購入した方が安上がりという結論になりましたが、他の部屋は?
まさか部屋毎にサーバーを用意してってのは幾ら何でもやりすぎ。

そこで目をつけたのは LAN 回線。
と言っても Raspberry Pi Zero の様に Wi-Fi ではなく、有線LAN です。
なおさんの自宅にはもともと有線LANが配線されていたのですが、今や誰も使っていません。

という事で、そのLANのケーブルを別の通信と電源のケーブルとして再利用しようという訳です。
ただ壁の中の LAN ケーブルには一切手をつけない様にします。
という事で、HUBの代わりに以下の写真の様に、百均で買ってきた LAN ケーブルコネクタをバラして各ケーブルを直接つなぐ、ものを作りました。
内部のケーブルが短いのでお互いを決戦するのが少々大変でした。


これを押し入れの中の HUB の代わりにつないでやれば、なおさんの部屋から各部屋にケーブルが伸びた形になります。
で、各部屋のLANポートに赤外線送信機をつないでやれば  Raspberry Pi 3 の GPIO 端子の出力と電源を送出できます。


自分の部屋の赤外線送信機はR2-D2の肩に乗せてあります。
その他の部屋の赤外線は 5V 電源を別に用意して各部屋に送ります。
電源とアースで2本線を使いますが、後6本の信号用に使えるので、6個までは送信機やステータス取得に使えますね。
これで食堂と居間のエアコンの操作が出来る様になりました。

ラズベリー・パイ・ゼロ(その2)

まずは届いたラズパイです。

ひとまず郵便の外観。


中身はこんな感じ。


インボイス

セット割が少々入って、30ポンド弱。
日本円で4千円弱ですから、米国からラズパイゼロを1枚だけ買うのとほぼ同じ値段。
確かに輸送中の保証は無いけど、注文価格を考えたら、その保障のためだけには割が合いませんよね。
数回に1回行方不明や破損にあってもイギリスから買う方が安上がり。

って事で早速セットアップですが、今回は GUI 無しでセットアップ。
で、配線もしてセットアップされたのがこの写真。


まだ基盤もちゃんと固定していないし(養生テープで仮止め)、シャッターのセンサーも、照明のスイッチ駆動用のサーボもまだ購入していません。
しかし、一応リモコンはちゃんと操作できるので操作は可能。
ただし、相変わらず Siri は気まぐれで、声での操作は難航しています。普通に照明やエアコン(暖房とか冷房で登録)は聞き取って操作してくれるのですけどねぇ。
なんでシャッターとかドアとかになるとダメなんだろう?


ラズベリー・パイ・ゼロ

家電操作の追記です。

ある程度操作出来るのが分かって来たので、ガレージのシャッターのコントロールをもう少し充実させようと考えました。
で、ガレージのシャッターはちゃんと閉まったかの確認を取りたいので、そのセンサースイッチとかを考えないといけませんし、夜なら電気も付けたいし。
となるとガレージの中からセンサーの信号を取り出して、電灯のスイッチもコントロールしたいって事になりますが、問題はどうやって配線を伸ばすか。
簡単じゃないので、それならばいっそ無線で繋げばという事になります。
実は既にシャッターが閉まっていなくてってことが度々あって、シャッターが開いていると居間の模型のライトが点滅するようになっています。
でもやはり配線の問題があったので、安物のラジコンのおもちゃを買ってきて、送信機にマイクロスイッチでボタンを押させ、室内の方は車が走る代わりにLEDが点滅するようになっています。
そうはいえ、センサーSWとかサーボをとなるとそう単純には行きません。
で、下手に無線かを考えるより、ガレージにラズベリーパイの本体を置いて、普通に Wi-Fi で繋いだ方が簡単で安上がりに成るって結論に。

ただ、ラズパイのゼロは日本じゃ入手困難。
時折売っていても3千円ほどのぼったくり価格です。

米国なら5ドルで売っていますので、って思ったら
『送料が29ドル!』 ふざけるなっ! 
って言いたくなる値段ですけど、国際貨物だとこんなに成る様です。
しかもゼロは一人1枚しか売ってくれないので・・・

でも英国からなら本体4ポンドに対して、郵送料が5ポンド。
それでも本体より郵送料の方が高いですが、こちらは国際郵便扱いで送ってくれます。
で、ついでに少々買い込んで、送って貰う事にしました。

既に届いたのですが、詳細の話はまた後日書きますね。

Siri は頑固なの?(Siriで思う通りにコントロール出来ない)

先日より Homebrige で家電を制御しようと工夫をしていますが、この設定がなかなかの曲者。
せめて
ガレージのドアを「開けて/閉めて」でコントロールしたいのに、適当なプラグインが見つからないし、プラグインの作り方も良く分からないです。

で、「シーン」というので無理矢理に「ドアを開けて」なんてシーンでシャッターを開けさせればと思い立ったのですが、「ドア」とか「ガレージ」なんて言葉が入ると、いきなりガレージのドアが見つからないと言い出します。

シーン名を「開ける」「閉める」としておけば、「へい! Siri 開けて」というと、「はい。開けてですね。 シャッターをオンにしました」って返事をして開けてくれます。
多分シーン名を「開け! ゴマ!」何てすれば子供が喜びそうですけど、返事はちょっと間抜けですよね。

ついでに「寝る!」と言えば、部屋のスタンドを消して、冷房や暖房が点いていたら消せるだろうから便利だと思ったのですが・・・
これが全く無反応。
なぜか、スタンドすら消してくれません。
で、操作対象をスタンドだけにすれば、ちゃんと消してくれます。
うーん、商品として販売されてるものじゃないとダメなのかなぁ?

ひとまずこのまま放置で、部屋の電灯のオン/オフの設定だな。
玄関などに利用できれば、留守にする時の防犯に役立つはずだし。
最初は電気的な回路を作って、なんて考えていましたが、とりあえずサーボモーターでスイッチを押す方が(見た目は不細工だけど)簡単で安上がりかな。
できればスイッチの点灯を表示できる「ホタル付」のスイッチでステータスを確認出来る様にしたいな。
そうでないと点いているのに操作して消しちゃう可能性がありますからね(我が家の部屋のスイッチは押す度にオンオフを切り替えるタイプ)。
普通の切り替え型なら単純にサーボで左右を押すだけで大丈夫みたいです。
https://tasdg.co.jp/wot/tips/post-40/

確かに簡単で、判断する必要もないけど、今更このかたのスイッチにするのも・・・
ガレージの電気はこの形のスイッチだから、ガレージの方は簡単に出来そうですね。

iPhone のシャッター音の無音化

iPhone 7 ではステレオ化されたことにより、ただでさえ大きすぎるシャッター音がさらに大きくなり、はた迷惑な状況になりつつあります。
そんな中、シャッター音の無音化の情報を見つけましたので、お知らせ致します。

このサイトが情報元です。

詳しくは上記サイトを参照していただきたいのですが、バグであろうとの事で、バージョンアップで利用出来なくなるかも知れないという事です。
しかし本当に障害者向けの対応なのかもしれません。
障害者向けの対策ならば、今後も利用可能かも知れません。

で、そこで消音を選択すると、カメラでもスクリーンショットでも音がしません。
個人的には昔のコンパクトカメラ程度の音がした方が撮影している感じがあって良い気もしますが(笑)。

昔はどうせ音がするならば、音量を含めて有名どころのカメラの音を選択出来ればいいのにと思ってました。
ニコンの・・、キャノンの・・、ハッセルの・・、ライカの・・・、写ルンですの・・

iPhone 7 のシャッター音

最初に写真を撮影してみた時に、シャッター音がせず、やや遅れて軽い音だけになったのが気になっていました。
私はこの2年間 、iPhone 5s を使用してきたので気がつかなかったのですが、これはライブの時の音だったんですね。
試験的に動きのないものだけを撮っていたので気が付きませんでした。
で、スクリーンショットを撮ったら、その音の大きさにびっくり。
今までよりもパワーアップしていますね。
シャッター音の調整のきかない日本モデルでは困った現象です。
で、今まで通り、スピーカーにテープを貼って消音を図ったのですが・・・
ちっとも音が小さくならない。

で、よくよく聞いたら、電話の耳元のスピーカーから盛大に音が出ています。
試しにそこを指で塞いでみたら、今まで通りの「まあ許せる音量」になりました。
うーん、ステレオサウンドになった悪影響だな。

というか、日本モデルでも「消音」とは言いませんが、余程のうるさい場所以外、周りを気にしなくてはいけない音量(最大音量?)で鳴るのは勘弁して欲しいですね。
そりゃ「盗撮」を防ぐのに良い方法とは思いますが、そんなことする輩は別の対策をしているでしょうから、あまり実行力はないですよね。
その気ならば、スピーカー自体を壊すという荒技だってありえますから。
そうでなくても「微音」をうたうアプリなんかが色々あるし、純正のカメラアプリも「ライブ」で撮影すれば、かなりまろやかな音で、その上にスピーカーにテープなどで貼って消音すれば、人混みの中じゃほとんど聞こえないと思います。

本当に「出来心」の極僅かな例だけで、レストランなどで iPhone のカメラが使えないってことの方が問題な気がします。
なんとかして欲しいものです。

しかし Homebrige 用のプラグインは難題。
「オン/オフ」を「オープン/クローズ」と表現したいだけなのにやり方が全くわからない。
サンプルの index.js も難解です。
JAVA のエンジニアなら直ぐ分かるのかな?
でも説明しているウェブサイトも見つからないし・・・
どうしよう。

人感センサー(Siriで家電を操作したい)の紹介

面白いものを見つけました。
それが「人感センサー」
それがどうしたっ! って感じのものですが、これが物理的なセンサーライトなどと全く違うもので、誰が家に居るかを確認出来るセンサーです。
で、ここのところいじりまくっている HomeBridge の関係機能で、自宅の Wi-Fi に特定機器(実質的にはスマートフォン)が繋がっているかどうかで、その所有者が家に居るかを判断するプラグインです。

homebridge-people
というプラグインです。
共働きの家庭だとお互いが自宅に戻っているのが分かるので良いかも。
単に居る/居ないの判断だけなので、プライバシー的にも問題ないだろうし。
ちょっと面白いと思ったので紹介しておきます。

iPhone でガレージのドアを開けたい(Siri で家電を操作したい)

さて先日は Siri でなんとか、ランプを操作出来ました。
同様にして、エアコンのオン/オフも出来ましたし、ランプの色合いを変えたり、明るさを変えたり。
でも問題は、Homebridge のコマンドは、オン/オフの二択。
ランプの色も、明るさも別のスイッチとして、「電球色を点けて」とか、「明るさを消して」なんて感じで命令しないと動かないんですね。
また、実際のランプのステータスが取れないから、なんらかの拍子に点灯しなくても、手元のステータスはオンになっていますから、一度オフにしないともう一度点け直す事が出来ません。
まぁ、ステータスとなると、元々のランプにそのような機能がないので、ランプの横に明るさセンサーを付けるとかしないとダメですね。
でも動作はオン/オフでも良いから「明るく」とか、「電球色にして」って感じで命令したいですよね。
そのうちにプラグインを調べてなんとかしたいと思います。

一応赤外線回路はちゃんと組んで FRISKのケースに収めました。

が・・・・  久々の半田ごて。元々半田付けは苦手なので、熱でトランジスタを3個も壊してしまいました。
で、半田の様子もあまりにも下手すぎて、恥ずかしいから写真はありません(笑)
赤外線のセンサーも一緒に組み込んで、ケースの蓋をスライドすると、現れて読み込みが出来るようにしておきました。



さて、あと幾つか何とか動かしてみたいものがあるのですが、今回はガレージのシャッター。
電動なのですが、リモコンは赤外線ではなく、電波による無線式。
当然隣の家のシャッターが開いたら困るから、ある程度ちゃんとしてコードを送っています。
赤外線式みたいに簡単にコピーという訳には行きません。
で、考えたのはサーボモーターで直接リモコンのボタンを押すという荒技。

参考にしたのは「Raspberry Pi でサーボモータ制御」というこちらのサイト。
ふむふむとほぼ丸ごと参考にして、繋いでみたのがこの写真。



アームの位置はギヤの位置の関係で 55%でほぼ水平にセット出来ました。
アームの長さもほぼ2つのスイッチ幅でなんとかなりそう。
ただアームの先端がそのままでは面積が小さすぎてスイッチが押せないので、ひとまずスイッチ側に厚手の紙を貼り付けて、ある程度均等に力が掛かるようにセット。
+ー25%程度の動きで無理なくスイッチが押せるようです。

これ…

新しい iMessage の動くスタンプ(?)

iMessage のLINE対抗機能(?)の動くスタンプですが、少なくともドコモの最新ガラケーや、Eメールでもチャンと表示出来ますね。Eメールも添付ファイルじゃ無くて、インラインで表示されました。 という事は中身的には GIF アニメなのかな? LINEに対するアドバンテージは相手を選ばない事ですかね。 ディズニー系とか、ピーナッツブックス(スヌーピー)とかも有りますが、まだ少ないのと探しにくいのが難点。 ん? キーボードの変換がなんかちょっとおかしい。 バグなのか、軽い不具合でリセットで治るのか?

iOS 10(ホームアプリ)

今朝は早めに目覚めたので、早々にベッドの中で iOS 10 をインストール。
ホーム画面に追加された「ホーム」アプリを起動したら、しっかりと Raspbery Pi で動かしている Homebridge に登録されている機器が探し出されて登録されてます。
事前に他のアプリで登録していたものを探し出して登録してくれてる見たい。

後の昨日はこれからゆっくりと眺めます。

Siri で家電を操作(その2)インターネットからのアクセス

いやいや、参りました。
Siri を利用しての homebridge のコントロール。
ウェブを調べ回しましたが、なかなか良い情報が見つからず、「まさかこんな事は無いだろう」という所を試しに弄ったら解決です。
はっきり言って「バカみたいな話」です。 アップルさん何考えてるの?
iOS 10 のリリース時には解決出来ているの?
セキュリティに筈なのに💢

何と、iCloud の「二段階認証」が不具合の原因。
二段階認証を外したら、あっさりと認証してくれました。
これで休日が1日ほぼ潰れた(泣)

Siri で家電を操作(その1)

さて「Lピカ」なるLEDを点けたり消したり出来れば、当然次は部屋の照明とかを操作したくなりますよね?
で、私のパソコンの横の電気スタンドは、LED電球を付けましたが、それもちょっとおごってリモコンで白色とか電球色を切り替えられるものを付けてしまいました。
せっかくなので、まずはこの電気スタンドを Raspberry Pi で操作する事から始めます。

必要なのは、赤外線リモコンと、赤外線リモコンのデータを読み取る装置となります。
市販品では良いものが出始めていますが、何しろ高い。
エアコンを操作するのに部屋毎にリモコンが必要となると、最低居間と寝室の二箇所には欲しいし。
で、赤外線リモコンも自作することにしました。

流石にこれはよく分からなかったので、基本的には うしこlog さんの「ラズパイでエアコンを動かす」を踏襲しています。しかし、どうも上手く動作しないので色々探して、プログラムは「ラズベリーパイ研究室」のプログラムを流用させていただきました。

また赤外線のリモコンはほとんど距離を取れないので、こちらウェブサイトで送信用リモコンを参考にしてパワーアップしています。
なお、送信機はまだ出力不足で、1m届くかどうかです。
キャパシター(コンデンサ)を追加してもう少し電流を上げないと実用上ちょっと厳しいです。

受信機の方は若干ノイズを拾うこともありますが、数回やり直せばちゃんとデータが取れているので今の所は良しとしています。

色々はまったのですが、特に困ったのは iPhone のアプリが Homebridge を認識しなくなることです。
で、こちらも色々探し出して、最終的にはこのウェブサイトを参考にしました。
簡単に言えば、アプリから見つからない時はまず
・以下のディレクトリを削除する。
$ rm -rf  home/pi/.homebridge/persist


・それでだめなら、config.json の中のユーザ名を変える。
へっ? ユーザ名って Mac アドレスそのものだよね?  って思ったのですが、単に Mac
アドレス形式をユーザ名としているだけで、「正しい」Mac アドレスの必要は無い様です。試しに変更してみましたが、問題なく動作してます。



さて私の部屋には田舎の物置から発掘した古いフロアスタンドがあります。
電源ケーブルなどは腐っていましたが、幸い電球のソ…

iPhone 7 驚きの新機能(FeliCa 対応)

iPhone 7 の発表で、私の予想外の FeliCa(SuicaやPasmoなど)への対応が有りました。
正直驚きましたが、落ち着いて考えるとアップルの壮大なプランなのかも知れません。
そこでここでは私の見方を書いて見たいと思いました。

まずは NFC(近距離通信)の規格の話になります。
私も何故日本の FeriCa は世界標準の規格に準拠せず、独自性にこだわったのか不思議に思ってました。
でも日本の場合最初に交通機関での利用からスタートしていたんですね。
そこでラッシュ時の改礼口の一つのゲートでの通加人数を調べて、1分間に60人を捌ける必要があると判断して、その為に必要な認識距離や角度、読み取り速度などの規格を定めた訳です。
ですから、単にカード決裁として考えると完全にオーバースペックの様です。
普通に考えると1秒で全ての手続きが終了すれば十分に思えますが、混雑時の改札口は1秒も掛かってしまうと使えない!
でも海外では一度 FeliCa 対応システムを導入しながらも、わざわざシステム変更した国も有ります。
何ぜ?
多分日本程混まないか、混んだら日本みたいに整然と改札口を通らず、実質的に要求される処理能力が、1分間に60人を遥かに下回るのでしょう。
つまり、処理能力は日本程高い必要性が見当らない。
って事なのだと思います。

じゃあ何で世界標準にならなさそうな Felica にアップルは掛けたのか?
交通系各社の努力などのおかげもあるのは勿論ですが、もう一つ大きな影響力を与えたのが東京オリンピックなのではないかと思います。
今回 FeliCa を実装するのは日本モデルのみです。

しかし酷いのはジャーナリストを標榜している方が、iPhone 7 の仕様を確認せず無責任な事を書いてる記事が目立ちますね。
日本モデルのみ FeliCa 対応だから、「海外に行ったら NFC が使えない」なんて書き込みがあります。
アップルのウェブサイトを見ればチャンと FeliCa と NFC 両方が記載されていて、NFC も使えることは直ぐに分かるはずなのに。
ということは、海外版は NFC のみ、日本モデルだけが NFC/FeliCa の二つの規格に対応。

閑話休題。
オリンピックまでには後4年あるので、2年後の俗に言う「iPhone 8」で世界展開すれば余裕で間に合います。
その間…

ラズベリーパイのリンゴ風味 (Raspberry pi & Mac : HomeKit Siri で家電を操作したい) その5(Siri で Lピカ)

さていよいよ LED の点滅を Raspberry Pi で制御し、それを Siri で動かしてみることになります。 私はブレッドボードという簡単な回路の試験をする基盤を持っていますので、それを利用します。 ネットを「Lチカ」とか「Lピカ」で検索すると色々見つかると思います。 ひとまず手元にある「自動点滅」のLEDと電流制限用の抵抗を使って試験です。
写真の右に写っている穴開きのボードに部品やコードを刺して回路を作って行きます。 ブルーの LED  の足元に小さく写っているのが抵抗。これを適当に選ばないと過電流で LED が壊れます。 他のウェブサイトなどを参考にして下さい。 私は昔試験した部品の余りなので、詳細な事が分からないので部品番号などは差し控えておきます。 全部揃えても数百円の単位です。LED や抵抗などは5個とか100本などの単位で売られています。 むしろボードと、配線用のピンケーブルが一番高いかな?
これを Raspberry Pi の GPIO という端子につなぎます。 端子は、こんな配線となっています。 参照ウェブサイト:https://www.raspberrypi.org/documentation/usage/gpio/README.md


写真の方は別の機種の写真なので、ピンの横に写っている部品が異なっています。
ピンの番号は上記の通りになります。
今回は GPIO の2番(任意で良い)とGPIO の3番の上の黒丸、Ground:アース の二本を使います。
2番のピンに+5Vの電圧が掛かれば、抵抗を通して LED そしてアース(マイナス)へと電流が流れ、LED は点灯します。
2番のピンに電圧が掛からなくなれば電流は流れず、LED は消灯するというわけです。

しかし、まだ何もしていないのに LED は点灯してしまいます。
デフォルトでは5Vの出力があるようですね。

で、Raspberry Pi のターミナルから(私の場合は SSH の画面から)以下のコマンドを入力して行きます。

先ずは、どの GPIO の端子を使うかの宣言。

$ echo 2 > /sys/class/gpio/export

2番のピンを使う宣言ですね。
で、この2番のピンを入力用にするか、出力ようにするかを宣言します。
今回は出力ようなので、

$ echo out…

ラズベリーパイのリンゴ風味 (Raspberry pi & Mac : HomeKit Siri で家電を操作したい) その4(Lピカ?)

昨日は、一応 SSH でログインしてってことも試したのですが、なぜかログイン出来なかったのでそのまま放置したのですが、確認したらコマンドのスペルミス。恥ずかしい。

でも電源も落としていたので、再度TVに繋いでやり直し。
「/etc/init.d」のディレクトリに「vncboot」というファイルを作ってやります。

予め Mac で用意した内容をコピペしたいので、とりあえず VNCサーバーを起動して、TVの画面はTVに戻して、自分の Mac に向かいます。
で、VNC で繋いだのですが、VNC  と Mac 間でのコピペが出来ない事に気が付き、Mac のターミナルから SSH で繋ぐ事にしました。
Windows の VNC だとコピペできたような気がしますが、どうですかね?
まぁダメならば Tera Term で SSH 接続して下さい。

$ ssh pi@raspberrypi.local で繋がるはずです。

で、「vncboot」には以下の内容を書き込みます。

#! /bin/sh
# /etc/init.d/vncboot
#
# 参考サイト http://assimane.blog.so-net.ne.jp/2013-03-27
#
### BEGIN INIT INFO
# Provides: vncboot
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start VNC Server at boot time
# Description: Start VNC Server at boot time.
### END INIT INFO

USER=pi
HOME=/home/pi

export USER HOME

case "$1" in
 start)
 echo "Starting VNC Server"
 #Insert your favoured settings for a VNC session
 su $USER -c '/usr/bin/vncserver :…

ラズベリーパイのリンゴ風味 (Raspberry pi & Mac : HomeKit Siri で家電を操作したい) その3

さて、その1では Raspberry Pi の OS の用意までを行いましたが、いよいよ Raspberry Pi の起動です。
我家のTVにはHDMIの入力があるので、ディスプレイにはTVを使います。というか、TVしか使えませんので否応なしです。
マウスとキーボードをつないで、SDカードを入れて、最後に電源を繋ぎます。



直ぐに起動して、以下の画面が表示されるので「Raspbian」にチェックを入れ「Install」をクリックします。




直ぐにインストールが始まります。

これが結構時間が掛かります。 その間に次々とお知らせが表示されます。 ・・・が、ひとまず放置。

下の画面が表示されればインストールは成功! 「OK」をクリックすれば、再起動されます。

これはそのまま Linux の起動画面ですね。
起動されれば、そのままデスクトップが開きます。


デフォルトで、ユーザは「pi」、パスワードは「raspberry」になっていますから、必要な方は変更してください。 って、本来は変更しなきゃいけないのですが、面倒なのでひとまずこのまま続けます。
で、手始めに Wi-Fi に接続します。 右上のパソコンが重なったアイコンを右クリックして「wlan」を選択します。 自宅のWi-Fi を選択して接続して下さい。 パスワードを入れて接続すれば、お馴染みの扇型のマークが表示されて、ネットワークに接続されます。 有線LANでDHCPをお使いの方は既にネットワークに繋がっているはずです。 会社の LAN などでそれなりのセキュリティが施されている場合は、管理者に相談して下さい。 我が家も勉強のため色々無駄にセキュリティを高めているので、実はつなぐ前に色々といじっています。
次にターミナルを開いて、ライブラリの更新。 $ sudo apt-get update $ sudo apt-get upgrade
RedHut や SentOS では yam  に相当するコマンドですね。



さてここで、いつまでもTVを占領しているわけにも行かないので、VNC サーバを立てて自分のMac(別にWindows でも他のLinux でも良いのですが)から操作できるようにして、TVを解放してやることに。
$ sudo apt-get install tightvncserver
で VNC サーバをインスト…

ラズベリーパイのリンゴ風味 (Raspberry pi & Mac : HomeKit Siri で家電を操作したい) その2

さて、その1では Raspberry Pi の OS の用意までを行いましたが、いよいよ Raspberry Pi の起動です。
我家のTVにはHDMIの入力があるので、ディスプレイにはTVを使います。というか、TVしか使えませんので否応なしです。
マウスとキーボードをつないで、SDカードを入れて、最後に電源を繋ぎます。



直ぐに起動して、以下の画面が表示されるので「Raspbian」にチェックを入れ「Install」をクリックします。




直ぐにインストールが始まります。

これが結構時間が掛かります。 その間に次々とお知らせが表示されます。 ・・・が、ひとまず放置。

下の画面が表示されればインストールは成功! 「OK」をクリックすれば、再起動されます。

これはそのまま Linux の起動画面ですね。
起動されれば、そのままデスクトップが開きます。


デフォルトで、ユーザは「pi」、パスワードは「raspberry」になっていますから、必要な方は変更してください。 って、本来は変更しなきゃいけないのですが、面倒なのでひとまずこのまま続けます。
で、手始めに Wi-Fi に接続します。 右上のパソコンが重なったアイコンを右クリックして「wlan」を選択します。 自宅のWi-Fi を選択して接続して下さい。 パスワードを入れて接続すれば、お馴染みの扇型のマークが表示されて、ネットワークに接続されます。 有線LANでDHCPをお使いの方は既にネットワークに繋がっているはずです。 会社の LAN などでそれなりのセキュリティが施されている場合は、管理者に相談して下さい。 我が家も勉強のため色々無駄にセキュリティを高めているので、実はつなぐ前に色々といじっています。
次にターミナルを開いて、ライブラリの更新。 $ sudo apt-get update $ sudo apt-get upgrade
RedHut や SentOS では yam  に相当するコマンドですね。



さてここで、いつまでもTVを占領しているわけにも行かないので、VNC サーバを立てて自分のMac(別にWindows でも他のLinux でも良いのですが)から操作できるようにして、TVを解放してやることに。
$ sudo apt-get install tightvncserver
で VNC サーバをインスト…