Xiaomi 小米 miband4 を買ってみた。

miband4 を装着したところ

前々から安くて気になっていた 小米 miband4 ですが、とうとうお値段4千円を切り始めたので注文してみました。 Aliexpress のある業者だとチットモ出荷しないので Banggood で発注。 使ってみた感想では、大きさ、電池の持続時間、測定できる内容、値段、付属アプリの良さで満足しています。

実現したかったことの一つで、常時心拍数の測定だったのですが、標準設定では手動測定のみ対応していて、自動測定は設定が必要でした。設定方法は、スマートフォンアプリのMi Fitの「プロフィールタブ」を開いて、マイデバイスの Miスマートバンド4を選択→設定項目の「心拍数計測」を選択→検出方法で「自動心拍数検出」あたりを選ぶと、自動的に測定します。検出頻度は10分としましたが、4日間使って電池残量85%と表示されていたので、十分です。

電池の持続時間が十分にあるので、今までのAndroid Wearや Apple watch では難しかった睡眠時間の測定もできます。「39%のユーザよりも良い睡眠」という、逆を言えば61%の人よりよくない睡眠であることを教えてくれたりと面白いです。

Surface DockのMini DisplayPortでFull HDまでの解像度しか出ない場合の対処法

最近は Surface Pro 4 を使っていて、職場ではSurface Dockを使って Mini DisplayPort を介した外付けモニタとの接続やUSBでのKeyboardなどを接続している。

Surface Pro Dockをつかっているところ

外付けモニタが FullHD より解像度の多いものを使っているのだが、Surface Dockの Mini DisplayPort を介してモニタに接続したところ、FullHDまでの解像度しか出なくて困った。Surface Pro 4本体のMini DisplayPort 端子からの出力では Full HD以上の解像度で出力できていたので、本体のグラフィック周りの制約ではなく、途中のデバイスの

調べてみたところ、Surface DockにFirmwareがあり、これをUpdateすればよいとのこと。

  • Surface Dock Updater をDownloadしてインストールする。
  • Surface Pro に Surface Dock をつないだ状態で Surface Dock Updater を実行。
  • 画面に出てくる指示通りにUpdateを進める。

Updaterを使うと、最初はUpdate可能化をチェックし、Update可能ならばUpdateを実施する。UpdateのFirmwareの流し込みが終わったら、Surface DockをSurface Proから外して、Surface Dockの電源を再投入して数分待つと新しいFirmwareでSurface Dock が起動するとのこと。

上手にUpdateができた模様。

 

AWS EC2 での bash プロンプトに、設定したEC2 Instance Nameを表示する

「ログインしたEC2 instance のプロンプトには Private IP address ベースのホスト名が表示されているだけで、どのマシンにログインしたのかパット見では分からない。なんとかならない?」という相談を受けたので、いろいろと考えてみた。

結論からすれば、EC2 Instance を立ち上げる時にホスト名をつけたり、Tagをつけたりするので、それを bash のプロンプトに表示させてしまえばOKだろう。
ということで、

  • EC2 Instance のIAMロールで、AmazonEC2ReadOnlyAccess を割り当てる。
  • /etc/profile.d/instance_name.sh に、下記のようなものを置いてみた。
#!/bin/bash

# get availability zone name
z="$(curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone | sed -e 's/.$//g')"

# get instance-id myself
instance_id="$(curl -s http://169.254.169.254/latest/meta-data/instance-id/)"

# get Name from tags
aws_tag_name="$(aws --region $z ec2 describe-instances --instance-ids $instance_id --output text --query 'Reservations[].Instances[].Tags[?Key==`Name`].[Value]')"

PS1="[u@h ${aws_tag_name} W]n$ "

元ネタ: EC2インスタンスにtagで付けた名前をサーバー内から取得する

Google Pixel 32GB を購入

日本では一向に発売される雰囲気がないGoogle Pixelをサンフランシスコで購入してきました。

最初はBestBuyなどで買おうかと思っていたのですが、買おうと決断してすぐに行けるお店がVerizonのお店だったのでVerizonで購入。 購入時には、自分が旅行者であるので2年間のSubscriptionには入れないこと をキチンと伝えた上で購入。 プリペイドSIMカード込みで820USDぐらいでした。

最近(2017年)のBuffaloのルータ+ IPv6 IPoE + DS-Lite だと設定不要でインターネット接続できる。

久しぶりにキチンと速度の出る無線LANルータを買ってみた。今回の機種はBuffaloの WXR-2533DHP2

WXR-2533DHP2 を購入するにはこちらをクリック。

結論としては、NTTのフレッツ網と IPv6 native 接続である IPv6 IPoE と、IPv4 over IPv6 の DS-Lite が使える環境では、Buffalo のルータの自動初期設定でインターネット接続ができるようになっています。 PPPoE の ID, Password の設定が不要になっていました。

うちの場合では、IIJmio の IPv6 IPoE サービスに申し込んでおいて、Buffalo のルータを繋いでみた次第です。

購入したときの箱はこのような感じ。 かなり大きいです。

開梱して設置します。

繋いでみたところ、普通にインターネットが使えてビックリ。 どうやらBuffaloルータの自動設定である「インターネット@スタート」でIPv4 over IPv6 のトンネルを自動設定してくれて、PPPoEの設定が不要になった模様。 こうでなくっちゃね。

ってことは、mfeedが黒幕のISPならば、ポン付けで行けるのかもね。

中国製の安いプロジェクタ購入

Aliexpressなどを見ていると中国でFullHD表示対応なプロジェクタのUNIC U46が70USDぐらいで売られているようで、毎月の定例会で資料を映すために購入してみた。

大きさはこのぐらい。Backpack に気楽に入りそうな大きさです。

部屋の壁に映してみたところ。台形補正をかけると上下のフォーカスが合わなくなります。基本性能は流石にショボいみたいです。

1万円以下で買えるプロジェクタとしてはまぁこんなもんですかね。

Intel Edison Kit for Arduino

Intel Edison Kit for Arduino

だいぶ前に Intel Edison Kit for Arduino を貰ったので試しに入れてみたのだが、中のソフトウェアを更新するために opkg upgrade をしただけで disk full になった。開発環境として使わせるためにコンパイラなどが入っているのだが、構築済みシステムで update すらできないって、どういうことでしょうかね。。(汗)

Apple Watch Series 2 を1週間ほど使った感想

こんどのApple WatchではSuicaなども使えるとのことなので、試しに買ってみた。SuicaなどのNFCを使ったApple Payは、この記事書いている段階ではマダ使えない状況。

Apple Watch Series 2 開封

まずは開封。 至って普通です。

文字盤に面白画像が

セットアップで文字盤の選択をするところでは、iPhoneに入っているお気に入り画像が選択されるのだが、なぜか面白画像が選択されることに。

装着したところ

装着したところ。最安値の小さいモデルなのだが、軽くていい感じ。

1週間ほど使ってみたのですが、万歩計、血圧計などを元にして、少しお散歩に行ってみてはといった通知をしてくるので面白いですね。 Apple WatchでMacのスクリーンロックを解除する機能があるのですが、まだうまく動いているところを見たことがないです。

Ubuntu 16 + nginx で HTTP2

このBlogを置いてある masaru.org のWebサーバを HTTP2 に対応させようと頑張っており、昨日対応完了したのでメモっておきます。

必要なものはこのとおりでした。

  • Ubuntu 16 Server
  • nginx-1.10
  • openssl-1.0.2g

各所のドキュメントを読んでいたところ nginx-1.9.5 以降ならばHTTP2に対応しているとのことで、 nginxの本家にある nginx-1.10 の deb パッケージをインストールしてみたところ、Safari や iOSの Google Chrome では HTTP2 で通信するものの、MacやWindowsのGoogle ChromeではHTTP/1.1 のままで、困っておりました。
昨日見た記事では、Google ChromeでHTTP2 対応させるには、Webサーバ側でopenssl-1.0.2 以降を利用する必要があるとのことだったので、サーバで使っている Ubuntu を 16 にアップグレードすることを決意。

下記のようなパッケージ構成にしたところ、無事に Google Chrome でも HTTP2が利用できるようになりました。

$ dpkg -l 'libssl*' 'nginx*'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version      Architecture Description
+++-==============-============-============-=================================
un  libssl                       (no description available)
ii  libssl0.9.8:i3 0.9.8o-7ubun i386         SSL shared libraries
un  libssl096-dev                (no description available)
ii  libssl1.0.0:i3 1.0.2g-1ubun i386         Secure Sockets Layer toolkit - sh
rc  nginx          1.10.1-1~tru i386         high performance web server
ii  nginx-common   1.10.0-0ubun all          small, powerful, scalable web/pro
un  nginx-core                   (no description available)
un  nginx-doc                    (no description available)
un  nginx-extras                 (no description available)
ii  nginx-full     1.10.0-0ubun i386         nginx web/proxy server (standard
un  nginx-light                  (no description available)

iTerm2, iTerm3 で⌘+? で Meta+? なキーボード操作を行う設定

Mac でコマンドなどを実行するための Terminal として、iTerm2, iTerm3 を使われている方が多いかと思います。 Linux などでの XTerm などの Terminal に使い慣れている方でしたら、Altキーと何かを組み合わせて Esc+? な Emacs 形式のカーソル移動などをされている場合もあるでしょう。例えば下記のような操作です。

Esc + f : 1単語進む
Esc + b : 1単語戻る
Esc + d : カーソル後ろの1単語を消す
Esc + backspace: カーソル前の1単語を消す

これをMacのキーボード操作の ⌘(Command) + ? で操作したい方も多いかとおもいます。この操作を行うための私の設定方法を紹介します。

⌘(Command) と Option を入れ替える

Remap Modifier keys の設定

iTerm2,3 の設定 (Preference ⌘,) の Keys タブにある Remap modifier keys の設定で、入れ替えたい左右の⌘とOption のキーを入れ替える方法があります。ここで、⌘とOption のキーを入れ替えた場合、コピペ機能のクリップボードにテキストをコピーするときには Option + C といったキー操作になるので、こんどはクリップボード操作をするときに少し困ることとなります。

クリップボード操作が不便なため、既に私はこの設定方法をやめました。

キーボードショートカットにエスケープシーケンスを登録

iTerm2, iTerm3 の Preference

登録したいキー操作は ⌘+b,d,f,delete だけなので、これらをKey Mappings に登録する方法です。

キーボードショートカットの登録例1 : Send Escape Sequence

登録方法の1つ目は、登録する内容を Action=Send Escape Sequence登録する方法。 Action のところで Send Escape Sequence を選択し、送出するキーを設定します。
ただしこの方法では、⌘+Deleteの設定ができませんので、このキーシーケンスだけは後術のHex Codeを設定する方法で設定します。

キーボードショートカットの登録例2 : Send Hex Code

もう一つは登録する内容を Send Hex Code で設定する方法。送出するコードを16進数で設定します。送出するコードを調べるには、下記のように echood -tx1a を使って調べられます。

$ echo -n '^[bfd^?' | od -tx1a
0000000    1b  62  66  64  7f
         esc   b   f   d del
0000005

上記から、各キーシーケンスの Hex Code をこのように設定しました。

Key  Escape Seq   Hex Seq
⌘b   ESC b        0x1b 0x62
⌘f   ESC f        0x1b 0x66
⌘f   ESC d        0x1b 0x64
⌘Del -----        0x1b 0x7f

2016/08/30 追記: 他のアプリのWindowを閉じる時に ⌘+W のキーを iTerm2 にフォーカスがあたっている状態でタイプして酷い思いをしたので、 ⌘+W は Ignore (何もしない) な設定にしてみました。

iTerm2のKey shortcut設定