Levi’s Commuter Trucker Jacket with Jacquard by Google を手に入れた

Fumiaki Yoshimatsu
May 5, 2019 · 7 min read

苦節4年、ついにスマート繊維を組み込んだ例のアレを手に入れて、早速少しコードを書いてみました。

Image for post
Image for post
Levi’s Commuter Trucker Jacket with Jacquard by Google

Levi’s Commuter Trucker Jacket with Jacquard by Googleとは

Google I/O 2015の後にたまたまRebuild.fmに呼んでいただいて、ほんの少しだけこれの話をしていて、このときからずーっと気になっていた。もっともこのときは、ジーパンに組み込まれるとばっかり思ってて、「太ももにこれが入っててもガサガサ触っちゃう」みたいなことを言っていたけど。

1年経って、Google I/0 2016でLevi’sとのコラボで作るのはパンツじゃなくてジャケットであることが明らかになって、なるほど!となった。

Google ATAPは(少なくとも当初は)2年で市販品を作ることがプロジェクトの要件になっていることが他のmoon shot的なR&Dとは違う点で、それゆえにこのジャケットも、Levi’sが2017年の春に出荷することになっていた。結局2017年の春は過ぎたものの秋になってようやく、でも本当にこのジャケットは出荷された。2019年の今でもLevi’sの(ディスコンになった)Commuterラインで唯一残っている製品としてオンラインでもお店でも買うことができる

買うことができる…んだけど、$350って高すぎる!どうせちっとも使わない機能がついているからって$250余計に払うほどお財布に余裕はなかった…。

ジャケットとsnap tagを別々に中古で入手

ある日、どういうわけか女性ものを検索する設定で、”Levi’s Commuter”をPoshmarkで検索してしまったときになんと、Jacquard Tracker Jacketを$50で売っている人を発見。スマホと通信するためのsnap tagはなくなっているものの、$50??

実はそれ以前にMercariでsnap tagだけを$15で売っている人を見つけていて、ただ本体がなければ意味がないので放置していた。さっそくMercariを見に行って、まだ売っていることを確認。Poshmarkでジャケットを無言即買いした。ジャケットが出荷されたのを確認して、Mercariでsnap tagもお買い上げ。しめて$65+送料トータル$20くらいで、$350だったあのジャケットを手に入れた。

中古といっても、ジャケットは色落ちもほとんどなくてめちゃくちゃ綺麗だし、snap tagは多分開封してない箱のままで来たし、新古品と言ってよいクオリティ。

ジャケットの作りも、全部のポケットにファスナーがついていたりとか、袖の内側に隠してリブがあって風が入らないようになっていたりとか、Levi’sのCommuterラインのTracker Jacketの作りはそのまま、まあこれが$50ならお買い得なのでは、という感覚。

だがこれを買ったことの意味は当然、Jacquardを試すことにあるのだ。まずはさっそく、公式アプリをダウンロードして機能を確認してみる。

Jacquard公式アプリ

…と、かなりできることは限られていて、まあそれも当たり前で、自転車に乗っている最中にサッと行いたいことってそんなもんでしょう、ということなんだろう。音楽を聞き始めるとか、次の曲へ進むとか、止めるとかいうこともできるんだけど、自転車乗ってるときに耳栓しないでーって思うし(けっこうな数いらっしゃいますけども)。

とはいえ、ここまで何もできない(というか自分がやりたいことが揃っていない)と、そりゃー「なければ作る」しかないねと。

だが、Jacquard SDKは存在しない。以上。

仕方ないので、適当にあたりをつけながらtry and errorでジャケット+snap tagとアプリとの通信を解析してみることにした。

Bluetooth Low Energy (BLE)でscan

最初は全然それらしきデバイスが見つからなくて困ったんだけど、snap tagがadvertiseしてなかっただけっぽくて、ジャケットの袖に刺激を与えたら出てくるようになった。ScanRecord#getDeviceName()が”Jacquard”という文字列を返してくるのですぐわかってよかった。結果、このデバイスは「d45c2000–4270-a125-a25d-ee458c085001」というserviceを持っていることがわかった。

さらにこのserviceは17のcharacteristicを持っていて、そのうち12のUUIDが上記のserviceのUUIDと関連する値を持っていた。具体的には「d45c2000」の部分が「d45c2010」「d45c2030」となっていてあとは同一。これが多分Jacquard特有のcharacteristicなんだろうなあと推察した。

そこでこれらのcharacteristicからもう少し情報を取得してみる。BluetoothGattCharacteristic.html#getProperties()を見ればcharacteristicがREADだけなのかWRITEもできるのかがわかって、WRITEできるcharacteristicはアプリからメッセージを送れる、つまりLEDを光らせるものかまたは振動させるものということになる。予想に反してWRITEできるものが4つ見つかったんだが、そのうち2つはREADとWRITEが両方できるので、なんとなくこの2つ「d45c2080–4270-a125-a25d-ee458c085001」と「d45c20f1–4270-a125-a25d-ee458c085001」から見てみることに。

とりあえず、公式アプリから使える「七色に光らせる」機能を自作アプリから呼び出せるようにしてみようと目標を設定した。

AndroidアプリとデバイスとのBluetoothでの通信内容を解析するへ続く。

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store