ほとラボ

It works!

USB Type-C ケーブルの選び方

ひとまずこの2つの商品を見てほしい。

どちらも Type-C - Type-C コネクタを持つ USB ケーブルだが、価格に10倍以上の差がある。

なぜ同じ (ように見える) ケーブルでここまで差があるのか、説明できるだろうか?

最近はスマホにも USB Type-C ポートが搭載されることも増え USB Type-C という規格もかなり普及してきたが、その実さまざまな規格のケーブルが入り乱れており粗悪なケーブルも少なくない。ガジェットオタクでもない一般の消費者がこの状況で適切な購買行動ができるかというと、無理があると言わざるを得ない。

少しでも理解の一助となるため・・・というか自分がケーブルを買うときにワケワカメだったので、USB Type-C ケーブルを買うときに気にすべきポイントをまとめていく。

はじめに

今回は「Type-C - Type-C ケーブルの話」をする。

ポート側 (給電機器とか) の話とか Type-A - Type-C ケーブルの話とかはしない。 急速充電のプロトコルの話とかをし始めるともう収拾がつかなくなってしまう。

先にまとめ: Type-C to Type-C ケーブルの選び方

  1. USB-IF 認証を取得しているかを気にしよう
  2. USB PD で早く給電したい場合は 5A のケーブルを買おう
  3. 映像出力がしたい場合は USB 2.0 のケーブルを買うのはやめよう
  4. 通信規格が USB 3.x Gen 1 か USB 3.x Gen 2 かでデータ転送速度が変わるので、価格と速度とのトレードオフを考えよう
    • 安いからといってよくわからずに USB 2.0 のケーブルを買うのはやめよう
  5. Thunderbolt 3 に対応したケーブルを買うときは、長さや種類 (パッシブ/アクティブ) に気をつけよう
    • Thunderbolt 3 って何?という人は多分恩恵を受けないので気にせず普通の USB Type-C ケーブルを買えばよろしい

1. USB-IF 認証を取得しているか

USB Type-C ケーブルの粗悪品が出回りすぎたためか、USB規格推進団体 USB-IF は2019年から USB Type-C の認証プログラムを開始した。

この USB-IF 認証を取得しているかどうかは USB Type-C ケーブルを買う上でひとつの目安になるもので、どれを買ったら良いかよくわからない場合はとりあえずこの認証を取得しているケーブルに絞って考えたら良さそう。

2. USB PD 対応かどうか

実は「Type-C to Type-C ケーブルに限って言えば」PD 対応/非対応 という区別があるわけではなく、どのケーブルでも USB PD に対応している。ただしケーブルによって定格電流が異なり、給電能力に差が出てくる。

定格電流 給電能力
3A 最大 60W
5A 最大 100W

ノート PC などを早く充電したい場合は、5A のケーブルを選ぶのがよさそう。

3. 映像出力ができるかどうか

USB Type-C では、Alternate Mode という仕様を利用することでデータ通信だけでなく映像出力などを行うこともできる。しかし USB 2.0 のみ対応のケーブルは Alternate Mode に必要な信号線が存在しないため、映像出力はできない。

映像出力がしたい場合は USB 2.0 ではない (USB 3.x に対応している) ケーブルを買おう。

4. どの通信規格に対応しているか

USB Type-C ケーブルを選ぶ上で一番ややこしいのがこの通信規格。

そもそも「USB Type-C とはコネクタ形状の一種」だが、「同じ USB Type-C コネクタを持つケーブルであっても扱える通信規格が異なる」というのがややこしい。

通信規格 データ転送速度 補足
USB 2.0 最大 480Mbps MacBook に同梱されている Type-C ケーブルはコレ
USB 3.0 (旧称)
USB 3.1 Gen 1 (旧称)
USB 3.2 Gen 1x1
最大 5Gbps SuperSpeed USB のロゴがある
USB 3.1 Gen 2 (旧称)
USB 3.2 Gen 2x1
最大 10Gbps SuperSpeed+ USB のロゴがある
USB 4 Gen 3 最大 20Gbps
USB 4 Gen 3×2 最大 40Gbps Thunderbolt 3 互換

USB 3.x は全く同じ規格でも名称変更されることがあり、例えば「USB 3.0」と「USB 3.2 Gen 1x1」は全く同じ規格である。これもややこしい。USB 3.x の名称がややこしすぎたのか、次世代規格のUSB 4 からは「4.x」という表記にはならないようだ。USB 4 は 2020 年時点ではまだ普及していないので、通信規格としての USB は実質3種類しかない。

ケーブルを買うときは、3.1 とか 3.2 とかいう数字に騙されずに、Gen 1 か Gen 2 かを見極めて買おう。

USB 2.0 のみ対応のケーブルは安く販売されているが、Alternate Mode が使えないので「映像出力できなくていい」「最低限の通信と給電ができればいい」という場合以外では買わないほうがよさそう。

補足: USB 3.2 Gen 2x2 ってやつは?

上の表に記載されていない「USB 3.2 Gen 1x2」「USB 3.2 Gen 2x2」という通信規格もある。

これはデータ転送に使う SuperSpeed 信号線を2セット (4レーン) 使うことで通信速度が倍になるというものだが、ケーブルが USB 3.2 Gen 2x1 に対応していれば USB 3.2 Gen 2x2 の通信も行えるはずなので、ケーブルを買う際には特に気にする必要はなさそう。

補足: Thunderbolt 3 ケーブルって何???

USB Type-C ケーブルを調べているとよく「Thunderbolt 3 ケーブル」というのがよく出てくるが、これは何か。

Thunderbolt 3 も Alternate Mode を利用した通信プロトコルである。Alternate Mode を利用した映像出力では Display Port や HDMI といったプロトコルを喋っているが、Thunderbolt 3 では映像出力に加えて最大 40Gbps でのデータ通信も行える。

Thunderbolt 3 で通信を行うためには Thunderbolt 3 ケーブルが必要だが、Thunderbolt 3 ケーブルは USB 3.2 Gen 2x1 と後方互換性があるため、普通の USB Type-C ケーブルとして使うこともできる。ただしこれには例外があって、アクティブケーブルと呼ばれる種類の Thunderbolt 3 ケーブルは USB 3.2 Gen 2x1 に対応していない。

ケーブル種類 データ転送速度 補足
パッシブケーブル (1m未満) 最大 40Gbps
パッシブケーブル (1m以上) 最大 20Gbps
アクティブケーブル 最大 40Gbps USB 3.2 Gen 2x1 と互換性がない
Thunderbolt 3 Pro ケーブル 最大 40Gbps 価格がすごい (12,800円+税)

Thunderbolt 3 に対応したケーブルを買うときは、長さや種類 (パッシブ/アクティブ) に気をつけよう。

まとめ (再掲): Type-C to Type-C ケーブルの選び方

  1. USB-IF 認証を取得しているかを気にしよう
  2. USB PD で早く給電したい場合は 5A のケーブルを買おう
  3. 映像出力がしたい場合は USB 2.0 のケーブルを買うのはやめよう
  4. 通信規格が USB 3.x Gen 1 か USB 3.x Gen 2 かでデータ転送速度が変わるので、価格と速度とのトレードオフを考えよう
    • 安いからといってよくわからずに USB 2.0 のケーブルを買うのはやめよう
  5. Thunderbolt 3 に対応したケーブルを買うときは、長さや種類 (パッシブ/アクティブ) に気をつけよう
    • Thunderbolt 3 って何?という人は多分恩恵を受けないので気にせず普通の USB Type-C ケーブルを買えばよろしい

何を買えば良いのか

無難なやつをいくつか載せておく。

USB-IF 認証を取得していて、USB 3.x Gen 2 に対応していて、定格電流が 5A (最大 100W の給電が可能)。 Thunderbolt 3 が必要ないのであれば今のところコレを買っておけば困ることなさそう。

Thunderbolt 3 が必要ならこのへんが選択肢に挙がるが、少し高い。 コレは 1m 未満のパッシブケーブルなので、最大 40Gbps のデータ転送と USB 3.x Gen 2 に対応している。

www.apple.com

お金が有り余っているブルジョワはとりあえず Thunderbolt 3 Pro ケーブルを買っておけば間違いない。

参考リンク

pc.watch.impress.co.jp gigazine.net www.phileweb.com andmem.blogspot.com hanpenblog.com katsu-digi.com hanpenblog.com 8vivid.net

統計的仮説検定でクロバットVの封入率の偏りを暴く

先週発売されたポケカの新弾「ムゲンゾーン」の注目カードといえばこれです。

「デデンネGX」「ワタシラガV」などと並ぶ汎用カード。 確実につよい。 4枚は欲しい。

ええ、我が家では 3Box 買いました。(※ このツイートの後もう 1Box 買い足した)

しかし!
ノークロバット!!!

は?????

こんだけ買って出ないとかさすがに何かの間違いではないか。 ハッサムVは死ぬほど出たのに。

ちなみに同じく 4Box 買った同僚に聞いてもクロバットVは1枚しか出なかったとのこと。

合計 7Box も開けてクロバットVが1枚しか出ていないのは、果たして本当に偶然だろうか? もしや「汎用カードのクロバットVだけ封入率を低くしておけばたくさん買ってくれるじゃろ、ぐへへ」みたいなポケカ公式の思惑があるのではないか???

仮説検定をしてみる

というわけで、一応データ分析屋のはしくれとして、統計的仮説検定を用いて「クロバットVの封入率に偏りがあるかどうか」を考えてみる。

統計的仮説検定
データに基づいて何らかの仮説の真偽を客観的かつ合理的に判断するための方法。 仮説の設定、検定統計量の選択と算出、有意性の評価の3つの要素からなる。

23-1. 検定とは | 統計学の時間 | 統計WEB

詳しくはインターネット上にさまざまな解説があるので割愛するとして、さっそくやっていく。

まずはじめに前提となる条件を確認する。

  • 「ポケモンV」と言う用語にはポケモンVMAXは含まない 1
  • 「ムゲンゾーン」には 1Box あたりポケモンVは5枚封入されている 2
  • 「ムゲンゾーン」に収録されているポケモンVは8種類である

次に、仮説を設定していく。

  • 対立仮説: 「ムゲンゾーン」のポケモンVのカードの封入率には偏りがある
  • 帰無仮説: 「ムゲンゾーン」のポケモンVのカードの封入率には偏りがない

今回は「実際の観測値」と「帰無仮説の下における頻度の期待値(理論値)」との乖離を検定したいので、カイ二乗分布を用いた適合度検定を行う。

まず、前提条件より「7Box 開ける」=「ポケモンVを35枚サンプリングする」ことと考えられるので、標本数は  n = 35 となる。 このとき、「クロバット1が出る (観測度数: 1)」「クロバットV以外が出る (観測度数: 34)」の2つの属性について期待確率と期待度数を考えていく。

 i 属性  S_i 観測度数  ν_i 期待確率  p_i 期待度数  np_i
1 クロバットV 1 1 / 8 4.375
2 クロバットV以外 34 7 / 8 30.625

これをもとに、カイ二乗検定統計量を求める。

 \chi^{2} = \sum_{i} \frac{(ν_i − np_i)^{2}}{np_i}

(手計算は面倒なので Python でやっていく)

from scipy.stats import chisquare

# 前提条件
v_per_box = 5  # 「ムゲンゾーン」1ボックスあたりのポケモンV封入数
v_types = 8  # 「ムゲンゾーン」に収録されているポケモンVの種類数

# 事象
box = 7  # 購入したボックス数
crobat = 1  # クロバットが出た枚数

# カイ二乗検定統計量を求める
n = v_per_box * box
chisquare([crobat, n - crobat], f_exp=[n / v_types, n - (n / v_types)])

計算すると  \chi^{2} = 2.976 で、自由度1のカイ二乗分布を見てみると、今回の観測値が理論値とこの程度乖離する確率は 8.5% であることがわかる。 この確率は一般的に用いられる有意水準 5% よりも高く、帰無仮説は棄却されない。

結論として、「ポケモンVのカードの封入率には偏りがあるとは言えない」となる。

つまり?

ただ運が悪かっただけ ということです!!!

\( ‘ω’)/ウオオオオアアアーーーッ

ポケカ公式さん疑って大変申し訳ありませんでした。

物事を合理的に考えて判断するのは大切なことですね。 などとそれっぽいことを言って雑にまとめておく


  1. ポケカ公式用語としては VMAX は V の一種だが、V と VMAX はカードとしては別のレアリティであり、今回は VMAX については考える必要がないので忘れたい

  2. ポケモンVの封入率が 5枚/Box というのは例外があるかもしれないが、今回は固定ということにしておきたい

在宅勤務デッキ紹介

id:hazeblog が在宅勤務のデッキを紹介していたので、真似してみる。

hazediary.hateblo.jp

全体像

f:id:hoto17296:20200508015629j:plain

こんな感じ。

家具

以降は基本的に買ってよかったものを紹介しているけども、この机に関してはあまりおすすめできない。

棚がついているのは便利っちゃ便利だが、模様替えがしにくいし、引越しのとき解体と組み立てが面倒。

天板の奥 (?) に板がついているとディスプレイアームが付けれない。 ディスプレイアームを設置したい場合は机から選ばないといけないことがわかった。

天板の下に引き出しがついていないやつにしたのは良かった。

椅子は id:gomayumax の趣味で買ったやつだけど、かなり良い。 価格も10万超えないのでまだ手が出せる範囲。

偶然にも会社の椅子と同じなので在宅勤務していてもオフィスと同じ体験が得られている。

PC 周辺機器

ディスプレイは PC よりも長く使う (4,5 年スパンで買い換えない) ものなので良いやつを買った。

いまマトモなディスプレイを買うつもりなら「4K」「USB Type-C 対応」「PD 60W 以上」 は見たほうがいい。 実際に使ってみて本当にいいものを買ったと思う。だた、この条件を満たす製品は購入当時だとこれ一択だったが、今だともっと安い選択肢もある。

分割キーボードはいいぞ。

これに関しては別エントリに詳しく書いたのでそっちで。

blog.hotolab.net

Web カメラはけっこう高めなやつ。 カメラの横についているマイクもそれなりにいいので、リモート会議の品質がかなり改善された。

しかしまぁリモート会議するだけならもっと安いモデルでも全然よかった気はする。

オーディオ関連

TASCAM USBオーディオインターフェース US-1x2-CU

TASCAM USBオーディオインターフェース US-1x2-CU

  • 発売日: 2018/02/10
  • メディア: エレクトロニクス

(自分が持ってるのは TASCAM US-100 だが、貼ったリンクはその後継機種)

USB DAC を高めの位置に配置してそこにヘッドホンを繋いでおくと、ケーブルがあまり邪魔にならなくて便利。

ゼンハイザー モニターヘッドホン密閉型  HD 25【国内正規品】

ゼンハイザー モニターヘッドホン密閉型 HD 25【国内正規品】

  • 発売日: 2016/04/27
  • メディア: エレクトロニクス

作業用ヘッドホンは長時間つけても疲れないやつがいいが、これはまぁまぁ疲れる。(もともと DJ 用の圧が強いモデルだし・・・) それはそれとしてリケーブルしたりパッド交換できたりして面白い。

blog.hotolab.net

その他

4月から全員在宅勤務をしている弊社では「カメラオンにして全員つなぎっぱなし」みたいなことをやっているので、画面がもう一枚欲しくなる。

たまたまこれが家にあったのでディスプレイの横に iPad を配置してみたらいい感じになった。

足の置き場に困るとつい足を組んでしまいじわじわと姿勢が悪くなっていくので、足の置き場をちゃんと作ろうと思ってフットレスト買った。

沖縄への送料が高かった点以外はよかった。

部屋の電気 (シーリングライト) は部屋の真ん中に位置しているので、机を壁に向かって配置して Web カメラで映した場合に逆光になってしまう対策として USB ライトを買った。 いや、ちょっと顔が暗く映ったところで大して問題はないのだけど、なんとなくあったらいいかなと思って。

どちらかというとリモートでポケモンカードするときに便利。

おわり

手札は以上です。 対戦よろしくおねがいします。

冷蔵庫をスケールアップした

ついに沖縄でも新型コロナウィルス感染拡大に伴う緊急事態宣言が発出されて外出自粛なこのご時世なので、食料品の買い出しに出かける回数も減らした方がよい。1

我が家の冷蔵庫は一人暮らし時代から使っている 137L の小さいタイプで、たくさん買いだめしても冷蔵庫に入れることができない。というか3人家族になったのに未だに一人暮らしのときの小さい冷蔵庫を使ってるのもどうなんだという気もしてきて、デカいやつに買い換えることにした。

どうやって選んだか

何はともあれサイズである。

我が家の冷蔵庫スペースは幅 80cm 奥行 65cm までなら入りそうだったが、大きめサイズ (400L 〜) になると奥行が 70cm を超えるものが多く、選択肢はかなり絞られた。

サイズ以外で気にすべきポイントは以下を参考にした。

siromonoblog.com

冷蔵庫もコモディティ化が進んでいるようだ。サイズ以外で気にすべき点としては「野菜室の位置」くらいらしい。

いろいろ調べて日立の R-XG48K に目をつけていたが、近所のエディオンの倉庫に眠っていたのを安く買えたのでとても運が良かった。価格コムの最安値よりも4万近く安かった。そんなことあるのか。

搬入

高さ 1.8m, 重さ 100kg 超の物体をどうやって運び入れるのかと思ったが、手際良く運んでいて本当に凄かった。

途中、キッチン手前のドアのドアノブが邪魔で通れないことがわかり焦ったが、急遽ドアを外してことなきを得た。事前に搬入経路も計測したつもりだったけどドアノブのことを考慮できていなかった・・・。

そして無事設置完了。

f:id:hoto17296:20200419224106p:plain
Before → After

所感

デカすぎんだろ・・・。

容量のことは何も考えずに設置できそうな最大サイズを買ったわけだけど、137L → 475L なのでおよそ3.5倍。本当にそんな容量が必要だったかは定かではない。 ていうかどこぞのサイトに「3人家族向け」などと書いてあったけど絶対あれ嘘だな? 4,5人家族でも普通にイケそうな威圧感がある。

まぁ慣れたら案外いっぱいまで入れるのかもしれないし、大は小を兼ねるのでとにかく活用していきたい。

酒でもたくさん放り込んでおこう。

※ Amazon で売ってる R-XG48J は R-XG48K よりも1年前のモデルだが、色以外に違いはないらしい。

2022年追記

f:id:hoto17296:20220406132117j:plain 引っ越しをしたところ、玄関に冷蔵庫が入らなくてクレーン車出動 (4万円弱) したので各位お気をつけください...


  1. ちなみにここ最近はネットスーパーを利用していたが、外出自粛に伴って利用者が急増したのか予約がいっぱいで配達依頼できないということが多々発生するようになって来た。)

Nintendo Switch の JoyCon をクリアパープルにした

f:id:hoto17296:20200210165628p:plain
ゲームボーイポケット (クリアパープル)

小学生のときにはじめて買ってもらったゲームハードがこれ。

これでポケモン赤を何周もしたが、あるとき車に跳ねられてどこかへ飛んでいってしまったのであった。 なつかしい。

そして20年の時を経たいま、現代の最新機種 Nintendo Switch をあの頃のクリアパープルにできるらしいと聞いたのでやってみた。

必要なもの

換装用のガワ。

Nintendo Switch 本体の背面をクリアパープルにするパーツも売っていたが、JoyCon と違って本体の分解にミスると色々と取り返しがつかないのでチキってやめた。

Y型精密ドライバー。 ゲーム機ではY型のねじが使われることが多いらしい。

あとは以下のもろもろ。

  • JoyCon 本体
  • ピンセット
  • 小さめプラスドライバー (内部はプラスねじなので)
  • 小さめマイナスドライバー (カバーをこじ開ける際にあると便利)

ドライバーとピンセットは普通に自宅にあるやつで問題なかった。

様子

思っていた以上にバラバラに分解する必要がある。

ガワだけペペッと交換して終わりかと思っていたけどそんなに簡単な話ではなかった。 あの小さいサイズながらにボタンやセンサが山のようについているので、考えてみりゃそりゃそうだ。 分解手順の YouTube 動画がなかったら確実に詰んでいた。

完成

どうですか、この厨二感。

一度くらいなんかミスると思っていたけど、なんと一発で問題なく動いた。 最悪の場合 JoyCon をもうひとつ買うくらいの覚悟はあったけど思ったより楽勝だった。

おわり

左の JoyCon が一発で動いたので「楽勝やんけ!」って右もやったらこうなった。

気をつけたほうがいい。

Nintendo Switch でも Bluetooth イヤホンが使いたい

【追記 2021.09.15】

なんとファームアップデートで対応された

Bluetooth®オーディオについて|Nintendo Switch サポート情報|Nintendo

【追記ここまで】

毎晩子供を寝かしつけた後に音無しでポケモン剣盾をプレイしていたところ、同僚から「ポケモン剣盾は BGM が最高」という推しがあり気になってきた。

f:id:hoto17296:20191122111858p:plain

有線ヘッドホンは持っているが、そもそも TV モードでプレイしたいので厳しい。(コードの長さ的に)

というかせっかく最近 SONY WF-1000XM3 を買ったのでそれを使ってプレイしたい。

ゲームハードと遅延

調べると、Nintendo Switch は Bluetooth オーディオに対応していないらしい。 ついでに言うと PS4 も対応していないらしい。

音ゲーや格ゲーなどのゲームでは音の遅延があるとプレイに支障をきたすので、こういうゲームハードでは簡単には Bluetooth オーディオはサポートできないんだろうなぁ、と推測される。

しかし今プレイしているのはポケモン剣盾なのであって、音がコンマ数秒遅延したところでどうということはない。 Bluetooth イヤホンが使いたい。

先に結論

[asin:B01J9QZO4C:detail]

これを買ったら良かった。

選択肢

Nintendo Switch で Bluetooth イヤホンを使うためのデバイスとしては、大まかに3種類あるっぽいことがわかった。

USB Type-C に挿すタイプ

ググるとまず出てくるのがこういうの。

TV モードで使えないと思って検討していなかったが、後になって「USB Type-C → USB Type-A アダプタがあれば TV モードでも使える」ということを知ったのでこれを買っても良かったかもしれない。

携帯モードがメインの人はこれが一番良さそう。

USB Type-A に挿すタイプ

安い USB Type-A 型の汎用 Bluetooth レシーバはたくさんあるが、Nintendo Switch で動作しない可能性が高い。(誰か試して欲しい)

しかしこの CREATIVE のアダプタは「汎用 Bluetooth レシーバ」ではなく「USB オーディオデバイス」として認識されるので、Nintendo Switch でも利用できる。

多分、USB Type-A ポートに挿すタイプだと選択肢がこれしかない。 しかし価格が約 4,000 円とそこそこいく上に TV モードでしか使えないので個人的には微妙。 aptX LL に対応していて低遅延らしいので、aptX LL 対応のヘッドホン/イヤホンを持っている人には良いかもしれない。

オーディオジャックに挿すタイプ

[asin:B01J9QZO4C:detail]

シンプルにオーディオジャックに挿して出力を Bluetooth で飛ばすというタイプ。

USB と違って電源供給されないので充電が必要というデメリットはあるが、TV モードでも携帯モードでも使えるというのは良い。 価格も約 2,000 円と比較的安かったので、最終的にはこれを買ってみた。

使ってみた感じでは、遅延はポケモンをやる分には一切気にならないレベルだった。

まとめ

TV モード (Dock) テーブルモード 携帯モード
USB Type-C タイプ
USB Type-A アダプタが必要
×
挿すと置けなくなるのでは?
USB Type-A タイプ × ×
オーディオジャックタイプ
ブラブラして邪魔

今回の「TV モードでポケモンをやる」という用途だとオーディオジャックタイプを買って良かったと思う。

ドアに iPhone をかざすと鍵が開くようにした

f:id:hoto17296:20191001222903j:plain

iOS 13.1 の新機能「オートメーション」と NFC タグによるトリガーが面白そうだったので、これを使って自宅ドアに iPhone をかざしたら鍵が開く仕組みを作ってみた。

仕組み

  1. ドアに貼った NFC タグ (Suica) に iPhone をかざす
  2. (事前に設定した) オートメーションが実行される
  3. SESAME の API が叩かれる
  4. 鍵が開く

必要なもの

  • SESAME
    • Wi-Fi ドングルでインターネットに接続済みである必要がある
  • NFC タグ
    • 使っていない Suica があったのでそれを使った
  • 新しめの iPhone
    • iPhone 8 以前だと NFC タグが読めないので NG
    • iPhone X だとバックグラウンド読み取りができないので今回の用途では使えないので NG
    • iPhone XS, XR 以降であれば OK

SESAME API で鍵を開けられるようにするまでの設定

1. SESAME アプリからクラウド連携を有効にする

f:id:hoto17296:20191001224546p:plain

2. API トークンを発行する

https://my.candyhouse.co/ にログインして API トークンを発行する

3. 対象の SESAME のデバイス ID を取得する

YOUR_AUTH_TOKEN には先ほど発行した API トークンを入れる。

$ curl -H "Authorization: YOUR_AUTH_TOKEN" https://api.candyhouse.co/public/sesames
[
  {
    "device_id": "00000000-0000-0000-0000-000000000000",
    "serial": "ABC1234567"
    "nickname": "Front door",
  }
]

オートメーションの設定

「ショートカット」アプリで新規オートメーションを作成する。

「日時」(トリガー) には「NFC」を指定して、割り当てる NFC タグを読み込ませて名前をつける。

f:id:hoto17296:20191001213537p:plainf:id:hoto17296:20191001213543p:plain

「アクション」には「Web」>「URL の内容を取得」で以下のように設定する。

URL 末尾の部分にはデバイス ID を、Authorization ヘッダには API トークンを指定する。

これで設定完了。

あとはドアの外側に NFC タグ (Suica) を貼って iPhone をかざせば鍵が開く。

所感

  • めちゃくちゃ簡単にできて良かった
    • オートメーション内で API リクエストの詳細まで設定できるので AWS Lambda などを介す必要がなくて便利
  • めちゃ遅い、開くまでに10秒以上かかるときもある
    • Web API を介している以上はどうしようもない感
    • 物理的に近くにあるので Bluetooth で直接 SESAME を操作したい...
  • ドアの外側に Suica 貼るのダサい、というか怪しい
    • Suica ではなく市販の小さい NFC タグを買った方がよさそう
    • 当初はドアの内側に貼ればいけるんじゃないかと思っていたが、1cm くらいまで近づけないと反応してくれないのでドア越しだと無理だった
  • NFC タグ + オートメーション 面白い
    • NFC タグをトリガーにしてアクションを実行するというのは IFTTT や Zapier などの類似アプリでは出来なかったこと (多分) なので、iOS のオートメーションには新たな可能性を感じる
    • オートメーションのアクション設定も色々触ってみたけど、まず Web API が叩ける時点で自前で API を作れば何でもできるし、そこまでしなくても Pytonista で Python コードが実行できるのでカジュアルに色々なことができそう

追記: NFC タグにキラシールは貼らない方がいい