BLE: Bluetooth Low Energy
技術的な特徴はこんな感じ。
- BLE機器を低消費電力でつくれるため、ボタン電池で数年稼動
- 免許不要の2.4GHz帯を利用して、最大1Mbpsの通信が可能
- 通信距離は2.5mから50m
通信は2種類ある。
- 1対1通信
- Central (スマホなど) と Peripheral (BLE機器)の通信
- アドバタイズメント・チャネルによる通信
- Peripheral の発見と接続に使う
- データ・チャネルによる通信
- データ通信に使う
- 暗号化通信可
- N対1通信
- Broadcaster (BLE機器) と Observer (スマホなど) の通信
- アドバタイズメント・チャネルによる通信
- Broadcaster の発見と接続に使う
- 暗号化通信はできない
スマホ/タブレットの対応状況は、Android/iOS端末で下記の通り。
用途は下記がある。
参考
- Bluetooth Low Energy | Android Developers
- Androidとi beacon(ble)
- Bluetooth Low Energy(BLE)/ iBeaconとは - Qiita
- ワイヤレスジャパン2014:O2Oだけじゃない BLEを使った「Beacon」の可能性 - ITmedia Mobile
- ibeaconを試す色々な方法まとめ - Qiita
- いろいろとっ散らかってるBLE関連の情報のまとめ
- やはりお前らのAndroidのBLEが不安定だという認識は間違っている
- youten/ImmPeri · GitHub
- ImmPeri - BLE Immediate Alert Peripheral Example for iOS.
- IoTアプリをつくりたいと思ったあとにまず試すべきBLE開発Kitたち - Qiita
実装例
- 浅草ギ研 ArduinoとAndroid端末をBLEでつないでみる
- Android端末 <= BLE => BLESerial <= シリアル接続 => Auduino という感じでつなげる例
- Raspberry PiをBLE Peripheralとして動作させる
Cloudera Manager / CDH のメモ
Cloudera Manager 4
Cloudera Manager 5
Cloudera Manager 5 を消して 4 を入れ直すときの罠
Cloudera Manager 5 をアンインストールした後、Cloudera Manager 4を入れる場合は /var/cache/yum/x86_64/6/cloudera-manager 配下を消す必要があるみたいだ。
残っていると、Cloudera Manager 4のインストーラが5のパッケージを参照してエラーになるため。
sudo rm -rf /var/cache/yum/x86_64/6/cloudera-manager
また、各Agentホスト(Cloudera Manager Serverホストを除く)の /etc/yum.repos.d/cloudera-manager.repo が Cloudera Manager 5向けのものに変わっているので消す。
sudo rm /etc/yum.repos.d/cloudera-manager.repo sudo rm /etc/yum.repos.d/cloudera-cdh.repo
なんか、ほかにも消さなきゃならんかもしれん。
http://[cloudera manager host]:7180/ へアクセスした後、インストールウィザードの「クラスタインストール」の画面で真っ白になって操作不能になって困っていたが、原因はブラウザのキャッシュだった。
クリアしたら治った。。
罠大杉だろう。
hbaseクライアント起動時に hbase-site.xml を参照できてなさそうなときの対処
hbaseクライアント起動時のクラスパスに hbase-site.xml を配置したディレクトリへの参照がない場合、下記のような例外が起こる。
java.lang.RuntimeException: java.io.IOException: org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation@3801318b closed
hdfs コマンドで FileSystem file:/// is not a distributed file system とか出て困った
HDFS入れたし動作確認してみようと、下記コマンド実施。失敗。
$ sudo -u hdfs hdfs dfsadmin -report [sudo] password for admin: report: FileSystem file:/// is not a distributed file system Usage: java DFSAdmin [-report]
原因は /etc/hadoop/conf が参照している設定が /etc/hadoop/conf.empty を参照してたため。
alternatives コマンドでHDFSの正しいクライアント設定を参照するように変更してやればいい。
HibernateのQueryクラス setDate(), setTime(), setTimestamp() の違い
BDZ-EX200が壊れた
年末年始の帰省から自宅へ戻り、帰省中に予約録画した番組をチェックしようとしたらHDDレコーダが故障していた。
2009年冬に買ったソニーBDZ-EX200、5年も使ってたらさすがに壊れるか。
毎日ひっきりなしに録画してたし。
実は特定の画面に移動するとフリーズするので、その画面を回避すれば操作できなくはないんだけど、
その画面というのがXMB(クロスメディアバー)の画面なんだなあ。。
で、回避策としてBDZ-EX200をDLNAサーバとしてPS3で再生させることはできた。
なので全く視聴できなくなったわけではない。
とはいえ不便なので、代替機を検討中。
※2015/01/29追記: XMBを表示するとフリーズするんだが、XMBを回避してHDDのデータをBDに焼く方法がわかった。まず、本体起動にリモコンのらくらくスタートボタンを押す。BD-RをセットしてBDへダビングを選択。あとはコピーしたいタイトルを選んで実行。ひととおりコピーし終わったら修理に出すぞ。
代替機を購入
新宿西口のヨドバシカメラで候補としていたソニーのBDZ-EW/BDZ-ETシリーズの値段をチェック。
選ぶ基準として考えたのは、
- メーカーは引き続きソニー。他メーカーで操作性が変わるのは嫌なので。
- 多重録画は必須なので2チューナー以上、できれば3チューナー
- 内蔵容量に余裕があること(前の機種は2TB)
- 画像/音質ともにそこそこ性能がいいこと
- スマートフォン/PSPなどへ持ち出しやリモート視聴ができること
- 価格
売り場をざっと見てBDZ-ET2100かBDZ-ET2200にしぼる。
BDZ-ET2100は2013年冬モデルで51000円の年始セール中。かなりお買い得。
BDZ-ET2200は2014年冬モデルで81000円と3万円も高いがリモート視聴向けの機能が若干向上している。
ちなみに共にポイント還元率10%である。
本当はBDZ-EX3000の後継機種が出てれば検討したかった。高いしどうせ買えないんだけど。。
で、悩んだが結局 BDZ-ET2200 を購入することにした。
帰宅後、リビングでセットアップ。BDZ-EX200はメディアサーバとしてはまだ使えるので残しつつ、BDZ-ET2200を小亀のように上に載せて配線した。
ざっと使ってみた感想(前に使っていた機種との比較)は、
- スタンバイから操作可能になるまであまり待たせない
- XMBの操作がサクサクになっている。リモコンの応答もいい。
- 番組表が小さいフォントに対応して表示できる範囲が広くなった
- 番組の予約ランキングを表示できる。人気番組がわかるので便利。仕組みとしてはBDZ-EW/BDZ-ETシリーズまたはnasneユーザーの予約情報を集約してランキングをつくっているようだ。
- スマートフォン(Android/iOS)との連携がかなり便利
詳しいレビューとしては下記ブログがよくまとまってる。2013年冬モデルと2014年冬モデルの比較(リモート視聴の機能向上など)。
新型BDレコーダー『BDZ-ET2200』シリーズのショールーム展示レポート:ソニーショップ★テックスタッフ:So-netブログ
kakaku.comとかインプレスの小寺さんの記事とかだと、2014年冬モデルって酷評されてるんだけど、リモート視聴の利用シーンが多そうな人は2014年冬モデルおすすめ。
JavaのLombokとかいうツールを知らなくてハマった話
とあるJavaのOSSライブラリをEclipseでビルドしようとして、うまくいかずハマっていたんだけど、エラーをよくみると存在しないメソッドを参照しようとしてエラーになっていた。
不思議なのがコマンドラインで mvn compile とか ant dist するときは問題なくビルドできること。
で、ビルドがこける状態(クラスパスの設定が壊れてるなど)のEclipseの設定ファイルが誤ってコミットされてるのかなー?とか一瞬思ったけど、それだったらフォーラムで誰かが指摘してるはずで、そんなことはないだろうと。
悩んだあげく、Lombokというクラスのgetter/setterをコンパイル時に補完してくれるツールがあり、これをEclipseに別途インストールする必要があるということがわかった。
へぇ。
- とあるOSS - RestFB - A Lightweight Java Facebook Graph API and Old REST API Client
- 過去バージョンに社内パッチを当てて使っているのだが、これのバージョンを上げる必要があって本家で直ってるのか、さもなくば社内パッチを当て直す必要があるのか調べる必要があった。