ついでに画面がパカッと外れたLEMFO LEMXも解体する

経年劣化で糊が弱くなったのか、LEMXの画面が外れたので、これも解体してみました。

 

 

LEMFO LEMX

個人的に使っていて名機だなぁと思ったフルAndroidスマートウォッチは、LEMX、Kospet Primeです。私はLEMXは2018年に購入しており、1年くらいはメインで使ったと思う。ハード的にはRAMが1GBしかなく、常時90%以上を使用するなど苦しかったものの、大画面大容量バッテリーの強さを教えてくれました。

 

永らく保管していましたが画面が外れてしまい、復旧させるのも何だなぁと思い、ばらしてみました。なお、Kospet Optimusと同じ、公称IP67ですが、防水に対する造りは全然違います。かなりLEMX の方が上です。

 

 

解体写真


f:id:diablo3cs:20210308205438j:image

画面まわり、メインボードまわり、裏蓋側にバラしたところ。バッテリーは900mAh 3.42Wh、それなりに使ったのでガス発生による膨張が見られます。まぁパンパンではないので、まだ寿命は残ってるのかな。造りは裏蓋兼本体容器と画面の2分割構造で、Kospet Primeやらの画面-筒胴-裏蓋の3分割構造とは違います。

 

残念ながら、低温ポリ液晶と本体容器の間は接着剤で付けられているだけで、防水構造は有りませんでした。ここも防水だったらIP68いけたんちゃうか?

 



f:id:diablo3cs:20210308210028j:image

注目すべきは本体容器。左側にスピーカー、右側にPOGOピン接続部、右下にマイクです。12時から2時半にある灰色のものは金属板で、多分アンテナかと。一見してわかるとおり、全部樹脂で固められている。OptimusはPOGOはまんま剥き出しでした。

 


f:id:diablo3cs:20210308210559j:image

スピーカーまわり。音を発生させる磁石とコイルの裏側です。

 


f:id:diablo3cs:20210308210644j:image

外すと、コーン紙?らしきものが樹脂に固められて残りました。どうもただの紙ではなく、防水紙のようです。トゥルトゥル。

 


f:id:diablo3cs:20210308211433j:image

外からスピーカーを見たところ。BCG注射みたいにポツポツした穴が並んでいます。穴のサイズはかなり小さく、同様の構造をしているLEM8以降と比べても小さな穴です。表面張力で水の侵入を防ぐ構造だと思います。私の手持ちの中では一番穴が小さい。

 


f:id:diablo3cs:20210308211755j:image

ボタン周り。Kospetは見習ってください、ほんと。擦れる軸周りは金属パーツはめ込みです。この金属の中に、パッキン、バネ、ボタン軸が入ります。

 


f:id:diablo3cs:20210308211936j:image

ボタン、外したところ。軸先端に付いてる黒いのがパッキンです。このパッキンがどれだけ有効かは疑問が在りますが、構造自体は簡素ながら耐久性と防水性に一応気を使ったものといえると思います。Optimusとは段違い。まぁまぁコストかかってるで、これ。

 

 


f:id:diablo3cs:20210308212718j:image

見辛くてすいません。カメラカバーはOptimusと同じ構造ですが、防水の役割を果たすと思われる、周囲の黒い部分の面積がだいぶ大きい。多少は防水性高いかも?

 

 

 

感想とか

愛機だったので正直、画面外れたときは悲しかったアル。画面と本体の間に防水構造が無かったので悲観していましたが、中を見るとなかなかどうして。これでIP67なら、いちおう、信じられる。多分画面まわりから浸水するけども。

 

 

保管していたMakibes M3を解体する

ずーと使わず置いておいたMakibes M3の裏蓋が死亡していたので、解体して遊んだアル。

 

 

裏蓋破損状況

Makibes M3 = Kospet Optimus無印。公称IP67ですが、この解体記録みればIP67とは、、と思うでしょう。IPx7の防水試験は、製品のてっぺんから15cm以上高い水面の水槽に静かに置いて30分らしい。

 


f:id:diablo3cs:20210308173342j:image

裏蓋を引っ掛ける側の受けが吹っ飛んでた。この裏面のプラスチック、自然経過でクラック入るわで大概、不良品アル。なお私の手元にもう一台あるKospet Optimus Proも裏面プラスチックにクラック生じているので、なんかの設計ミスかも知れない。

 

 

解体写真


f:id:diablo3cs:20210308173819j:image

バッテリー側と本体側をばらしたところ。バッテリー周りは厳重に熱伝導シートでグルグルされてる。中身はぎっしり。

 


f:id:diablo3cs:20210308173932j:image

バッテリー、公称通り、800mAh。Kospetは基本的に正直ではある。3.04Whなので3.8V換算か。

 


f:id:diablo3cs:20210308175208j:image

バッテリー取り除いたところ。

 


f:id:diablo3cs:20210308175341j:image

スピーカー部分。スピーカー本体周りは糊で密着させられている。

 


f:id:diablo3cs:20210308175440j:image

(写真右側、棒が出てるところ)ここに細長い穴があいている。どこまて水が入るかは素人には難しい判断だが、スピーカー本体まで浸水する可能性が高いと思う。たぶん、スピーカーの周りの糊で止まる。

 




f:id:diablo3cs:20210308180728j:image

も一つの穴、マイク部分(棒で指してるところ)。完全に封がされている。マイク自体は浸水しても内部までは入らなそう。

 


f:id:diablo3cs:20210308180042j:image

裏側と、中筒の間のパッキン。これ、裏面-中筒間の止めネジ4箇所で果たしてパッキンの要求面圧が満たされているのだろうか。うーん、まぁパッキン居るだけましか。

 

 


f:id:diablo3cs:20210308181045j:image

本体側。

 


f:id:diablo3cs:20210308181130j:image

画面側とメインボードばらしたところ。

 


f:id:diablo3cs:20210308181202j:image

メインボード。熱伝導シートでガチガチ。2+16はSoCのRAM2GBとROM16GBと思われる。

 


f:id:diablo3cs:20210308181421j:image



画面側。どうも表側からはめ込んでるようなのだが、表側セラミックベゼルがかなりがっちり固定されていてばらせなかった。

 


f:id:diablo3cs:20210308181747j:image

問題のボタン周り。ボタンを押すと、軸が出てスイッチを叩く。軸は簡単にスナップリングで留められているだけ。

 


f:id:diablo3cs:20210308181908j:image

ボタン、外側から。

 


f:id:diablo3cs:20210308181931j:image

ボタンを外したところ。まぁ、小学生が設計したような造りですね。防水なんて一切考慮されていません。単にスプリングで押し返してるだけ。パッキンなんて無い。そりゃ、ボタン押したら水入るわ。で、あまりに簡素な構造なので、そりゃ押す感覚がすぐ変になるわ!と思った。おーまーえーはーあーほーかー!機械設計なめんなよ。



f:id:diablo3cs:20210308181908j:image

ボタン外した本体側。たんにバネ留めるてるだけ。絶望した。


f:id:diablo3cs:20210308182506j:image

カメラ部分のカバー外したところ。単に丸い樹脂をはめ込んで糊で止めてるだけ。うーん、絶対水が入るとは言いませんが、かなり怖い設計。日本のメーカーならたぶんしない。

 


f:id:diablo3cs:20210308182632j:image
外したカメラのカバー。この周りの黒い部分の糊付けで水を止める構造。わいなら倍は樹脂盛るかなぁ。まぁそれやるとコストかなり上がりますが。

 

 

蛇足、感想

IP67って一応、生活防水レベルですよ。本当に試験通ったんかいな。特にボタン周りは失望した。こんなんオモチャでも、もう少しマシな設計する。

 

あ、画面はドライバー出ガリガリやっても傷入らなかった。Gorillaガラスは本当みたい。

効果確認、電波の悪い場所で自動的に親スマホのwifiテザリングに切り替える


アイデア: 電波の悪い場所で自動的に親スマホのwifiテザリングに切り替える - diablo3cs’s diary

 

↑元記事。あれやこれや魔法を使って確認しました。

 

 

 

4Gの電波が弱いとどのくらいバッテリー消耗するか

Kospet Prime2の場合。

 


f:id:diablo3cs:20210307121406j:image


f:id:diablo3cs:20210307121358j:image

 

2枚目キャプチャー画面は1枚目に説明を付けたものです。オレンジ枠の部分が電波環境が悪い場合のバッテリー消耗の具合です。猛烈なバッテリードレインが生じており、Kospet Prime2の1600mAhですら10時間も保たないレベルで消耗します。この時の電波状況は、


f:id:diablo3cs:20210307121655j:image


f:id:diablo3cs:20210307121713j:image

 

このくらい。電波強度でいうと、1%台~15%以下です(この電波環境探すのに土日歩き回った。大変やった)。たまに4Gも掴みますが、ほとんど3Gになってしまい、かつ通信がほぼ成立しません。このバッテリードレインは、モバイルデータ通信をオフにしてもSIMを刺している限り、発生します。フライトモードなら回避は出来る。

 

 

で、上の記事の親スマホにHotspot起動させて接続した場合は緑枠の部分。


f:id:diablo3cs:20210307121358j:image

電波強度が40%を超える環境でのSIM運用よりはバッテリーを消耗しますが、かなりマシになっていることがわかります。

 

 

自動で4G通信とwifi Hotspotの子機を切り替える方法

一番上の記事を参照ください。4Gの電波強度が弱まると時計側から信号を送って自動で親スマホのHotspotを起動させ、デザリングに繋ぎにいくことが出来ます。

 

今回の検証、マジ疲れた。

 

 

おまけ

その後、電波強度が十分(40%超)に戻すとこうなる。


f:id:diablo3cs:20210307150115j:image

ばななーばななーばななー

顕著にSIMの電波状況が影響してるー

ばななー

Full Android Watchをジェスチャーで操作する V. 3.58くらい


Full Android Smart Watchをジェスチャーで操作する、Android10対応 - diablo3cs’s diary

 

 

↑過去記事。

 

wear OSで出来る、腕を振るだけでスクリーンを送ったり戻したりする機能に似た何かを実装する何か。Kospet Prime2やRogbid Brave Proにて、時計した腕を振るだけで通知表示をスワイプしたり、WatchDroidの履歴見たり、WatchDroid経由で電話受信時に電話に出たり(時計で通話は出来ないが自動でスマホのスピーカーONにするよ)できる。

 

実装の仕方は素人同然で頭良くないけど便利なように作った!わいの力作や! 誰も使ってくれないけれども。

 

改良したのでいちおう。

Automateで実行します。バッテリー消耗に気を使って&誤操作防止に画面オフ時は全てのモーション待機が解除されます。まぁScreen on rising(腕上げて点灯)が有効なら関係ない気もしないでもない。

 


Automate for Android ⋅ GestureControl_AndroidWatchPhone_Rev3.35n

 

詳細はDescription見てください。

 

 

改良点

Watchdroidがforegroundの場合

  • 音楽操作モードでは自動でホームに戻らないようにした。連続で音楽操作モードを扱える。
  • 音楽操作モードでは、シェイク1回で曲送り、シェイク2回で曲戻しできる。片手で時計振るだけで音楽操作出来るアル。

 

WatchDroid経由で電話受信時、及び通話中

  • シェイク1回で「電話に出る」その後自動でスマホのスピーカーON。
  • シェイク2回で「拒否」または「通話終了」。急な電話でも腕振るだけで電話出たり出なかったりできる。

 

 

蛇足

腕振るジェスチャーを確実に判別できそうなのは今のところ次の3パターン。

 

  • 腕を1回シェイクする(ひねるように振る)。
  • 腕を2回シェイクする。
  • 腕を4回くらい、いっぱいシェイクする。

 

Android7機ではこの他に、「腕を向こう側に倒して止める、その後戻す」も安定して識別出来たんですが、Android10機ではイマイチ判別出来ない。まぁ安定して3パターン操作出来れば色々出来ます。使い方はアイデア次第。まぁすんごく複雑になったので改造するとき、中身が訳わからんかも知れませんが…

 

Kospet Prime2での設定例とTips

Android10搭載のFull Android Watchの設定例と設定のTipsを書いておきます。Android7搭載機とは若干違います。

 

 

設定項目

  1. SIM、WifiBluetoothGPSの有無
  2. 位置検索 Wifi Bluetoothスキャンの有無
  3. スマホとの連係方法(WatchDroidやJoin、いないとは思いますが、Wiiwatch2など)
  4. 画面輝度
  5. 腕を上げて画面点灯、通知で画面点灯の有無
  6. バッテリーセーバー(Android7機で言うところのBack Ground Cleaner)の有無、そこからの除外アプリ
  7. 電池の最適化除外アプリ
  8. Google系アプリの導入状況(これらは勝手に通信する事がある)
  9. ホームアプリの選択
  10. (インストールしたアプリ)
  11. OS側データセーバーの有無、除外アプリ

 

補足事項

  • 1. SIMについてはモバイルデータをオフにしても電波が悪かったり移動が多いと電池を酷く消耗します。
  • 2. 意外と忘れる、スキャン設定。wifiスキャンはなかなかにバッテリードレインします。
  • 4. 画面輝度はPrime2は相当明るい(amoled のKospet Optimus並み)ので最大じゃなくても日光の下で十分見えると思う。
  • 5. 腕上げて画面点灯はセンサーを利用しているために電池消耗は大きいですが、コレがないと腕時計としてry   なおGravity GestureやScreen Onなんて有名アプリを使ってもセンサー利用の時点で同じことなので、バッテリー消耗は回避出来ません。むしろGravity Gestureはかなり電池喰います。凄いアプリなんですが。
  • 6. Optimizationのバッテリーセーバー(旧Background Cleaner)はFull Android Watch特有の機能です。電池設定から選べるバッテリーセーバーとは異なります。機能は画面オフ時に除外アプリ以外をKillするものです。Android10ではGoogle系アプリだろうがほぼ確実に停止させられる強力さ。Android7のKospet Primeとは違い、オンが推奨されます。Android10ではデフォルトのホームアプリを殺さない。素敵。
  • 7. 言わずもがな。電池最適化から除外されたアプリは何時でも勝手に起動しちゃいますし、背後でもガリガリします。
  • 8. Google関係は勝手に通信することが有ります。某所掲示板曰わく、Google検索とGoogleのdiscoverが消耗する原因の1つらしい。なお、Android7で利用出来た、「アカウント同期の停止」の設定はHidden Settingなどから、「アカウント(setting$AccountDashboard)」でオンオフ出来ます。試しましたが、基本的には6.のバッテリーセーバーで十分な気がしないでもない。
  • 9. ホームアプリは常時読み込まれるため、いちおうバッテリーに影響する模様。たぶん、wiite(デフォルトのホームアプリ)とUniversal Launcherで差はないと思う。
  • 10. 色々インストールするとバッテリーのもちが悪くなることがある。顕著なのはCPU監視系、CPU-ZやCPU-Xなどは影響してる、気がする。とは言え、アプリ入れなきゃフルAndroid機の意味がないので、好きに入れれば良いと思う!
  • 11. OSに組み込まれたDatally類似機能。Hidden Settingなどから、データセーバー(Setting$DateSaverSummary)を設定することでオンオフ、対処アプリを選べます。デフォルトはオフ、Google開発者のみが許可されています。

 


Hidden Settings - Access Hidden Features - Apps on Google Play

 

 

Kospet Prime2での設定例

SIMでの運用のみ、Join使用。

  1. SIMあり、Wifi なし、BTなし、GPS あり
  2. 位置検索、Wifi BT スキャンなし
  3. 連係、Joinによる
  4. 画面輝度、最大
  5. 腕を上げて画面点灯オン、通知で画面点灯オン
  6. バッテリーセーバー(BackGround Cleaner)あり、除外アプリJoin、エッジジェスチャー、Automate、WatchdroidAssistant(念のため)
  7. 電池最適化除外、追加はJoin(元々最適化不可)のみ
  8. Google系の追加アプリ、GoogleマップGoogleアシスタント
  9. ホームアプリはデフォルトwiite
  10. インストール済みアプリ、Join、ニュース系、念のためのWatchdroid、YouTubeYouTube Music、Prime Videoなど。
  11. OS側データセーバーなし。

 

待ち受け1時間あたり、だいたい1%から1.5%の消費。待ち受けだけなら3日から4日。

 

なお、DatallyはAndroid10ではOS側の機能に類似のものが組み込まれているので、効果がない旨が通知されます。実際に使うと、Datallyは起動はしているものの、通過した通信量をチェック出来ません。入れなくても問題ないでしょう。Android10、意外と優秀。

 

 

 

特定のアプリを許可していく

上記設定ではGmailすら受け取れませんが、親スマホで受けたメール内容などはJoinにて通知を受けられます。またJoinからその通知を開けば、Gmailに繋がるので実質、困らない。

 

とは言え、常時起動していないと意味がないアプリも多々ありますので、その場合の除外方法も書いておきます。

 

  1. Optimizationのバッテリーセーバーから除外する。
  2. アカウント同期停止の対処にしている場合は、許可。
  3. 電池最適化からの除外は、必要に応じてする。
  4. OS 側データセーバーを使用している場合は除外。

 

これで任意のアプリを通信させることが出来ます。正直、Optimizationのバッテリーセーバーが強力なので、コレだけで許可をオンオフしてもいい気がしないでもない。

 

 

素敵な時計を。

 

WatchDroidで受けた通知を識別して任意のアプリを起動する

私はJoinとWatchdroidを使用しています。主にBluetoothでの消費電力がなんか怪しいKospet Prime2はJoinを、なんかどうやっても40時間切るくらいしか保たないRogbid Brave ProはWatchdroidで連携させています。

 

で、JoinとWatchdroidの違いは幾らでも有りますが大きな点に「Joinは、通知を受けた際に、受けた側で同じアプリ、場合によっては同じ内容まで表示できる」というモノがあります。なんか前にも同じこと書いた気もしますな!

 

折角だからWatchDroidでも通知を出した大元のアプリを起動出来るように頑張ろうとして力尽きた。

 

 

 

考え方

  • Automateで実装する。
  • Watchdroidで通知を受けた後、履歴リストに記録される。(Watchdroidの機能)
  • マクロ起動は手動で行う(POP UP Widget経由)。
  • 履歴から該当の通知を表示してマクロ起動。タイトルを格納する。
  • タイトルを識別して、当てはまるアプリを起動する。

 

 

 

 

問題点

  • 1つのアプリから発行される通知は、タイトル1種類じゃないの。沢山あるの。おっぱい。
  • 例えば、SmartNews。CMまでしてるお金あるニュースアプリですね。ブルジョアが。このアプリで通知されるタイトルは、「SmartNews」、「今日の PICK UP」です。
  • 例えば、NHKニュースの場合、「INFO」「ニュース速報」「最新ニュース~」です。
  • Gmailに至っては、タイトル=メールの題目なので、識別すら出来ません。
  • Lineやらもタイトルが相手の名前なので識別難しいですが、そもそもWatchDroidはLineなどに返事出来るので気にしなくても良い?
  • こういったタイトル全部に識別を付けなければならず、処理フローのブロック数は膨大になります、、そしてJoinのように内容まで同期させることは出来ません。

 

 

まあサンプル程度のつもりで、

NHKニュースとSmartNewsの2つについて起動させるサンプルflow作ったので参考にでもしてください。 

 


NHK NEWS & Disaster Info - Apps on Google Play

 


SmartNews: Local Breaking News - Apps on Google Play

 


Automate for Android ⋅ inspect_and_start_v0.4

 

 

 

補足

例のごとく、フロー開始直後のInteract TouchとDelayブロックはPOP UP Widgetから起動する際のPOP UPを消すものと少しだけ起動を待つものです。POP UP Widgetを使わない場合は不要です。

 

 

title識別はInteractブロックのInspectを使ってます。Package、UI element class、UI element IDを指定することでtitleをcontentに格納できます。工夫したのはそこくらいで、あとは普通のマクロのはず。

 

 

よい時計を。

アイデア: 電波の悪い場所で自動的に親スマホのwifiテザリングに切り替える

2021 3/6更新。効果関係は確認中。

効果確認しました。バッテリードレインを回避出来ると思います。


効果確認、電波の悪い場所で自動的に親スマホのwifiテザリングに切り替える - diablo3cs’s diary

 

 

まだアイデア段階です。確認は今度するの。

確認済み。上の記事。

 

SIM刺してる場合、フルAndroidスマートウォッチは電波の悪い場所ではモバイルデータ通信を切っても、バッテリーを恐ろしく消耗します。基地局を一生懸命掴みにいくのかしら。

 

と言うことで、4Gの電波強度が弱い場合に、親スマホを操作してwifiテザリングさせ、繋ぎにいくマクロを組んでみました。

なお、このやり方でSIM刺し電波劣悪な環境のバッテリー消耗速度がマシになるかはわかりません。まだ試してないけん。アイデアです。

マシになる。

 

 

時計側から親スマホに任意のマクロを実行させる方法


Joinを利用してフルAndroidスマウォから親スマホの電話を発信させる、その2 - diablo3cs’s diary

Joinを用いてインターネット(Google鯖)経由する場合の構築例。他にもTaskerにてAutoRemote 使うとか、方法は色々有りそう。とりあえず今回はこれを流用します。

 

 

確認環境

  • Kospet Prime2 V1.4
  • Redmi Note 9S、Android10、MIUI12、rootなし、セキュリティーロック無し。

 

なお、本当はTaskerを使ってすら、Android10のHotspotオンオフは出来ない、て書いてあったがウチでは出来た。中華の怪しいスマホだからか?解せぬ。

 

 

事前にしておくこと

  • Root、ADB不要。親スマホの環境によっては必要かも。まぁ紹介例なんで、深く考えないでください。
  • スマホのHotspotに時計をつなぐ。認証などを済ませる。
  • 時計側Android10機では接続形態を選べるので、「従量制」にしておく(通信を減らす)。

 

 

時計側の動作案

  • Automateで実装する。
  • 電波強度が25%を下回ると親スマホのHotspotをオンにする通知をだす。
  • 通知はJoinにより親スマホに送られる。
  • 5秒くらい待ち、時計側のwifiをオンにする。(親スマホHotspotへの接続は自動に頼る)

 

  • 電波強度が32%を越えた場合、Hotspotをオフにする通知を出す。 ※あれ、電波強度が確認出来てるならバッテリー消耗するんじゃね? 後で試そう。
  • 通知はJoinにより親スマホに送られる。
  • 5秒くらい待ち、wifiをオフにする。

 

  • 電波強度25~32%は動作マージンとする。

 

追記

電波強度が安定せず、思ったよりチャタリングするため、7秒のインターバルで2回の結果が規定電波より低い/高い場合に作動するようにしました。また通知消去のJoinの信号が行方不明になる例が多かったので少しディレイして調整しました。

 

 


Automate for Android ⋅ Auto_Change_LTE_to_Wifi_v0.2

 

 

スマホ側の動作案

  • Taskerで実装する。何故ならTaskerのほうがAutomateより確実に動くからだ。あっちょんぷりけ!
  • Joinで送られた通知を受けて、Wifi Hotspotをオンにしたりオフにしたりする。

 

↓HotspotをJoinの通知からオンにするだけのもの

 

Profile: Get notification Hotspot on (3)
Restore: no
Event: AutoNotification Intercept [ Configuration:Event Behaviour: true
Notification Type: Only Created Notifications
Notification Title: Hotspot On
Notification Text: Hot on
Package Name: com.joaomgcd.join ]
Enter: Hotspot on (6)
A1: WiFi Tether [ Set:On Keep Wi-Fi when turning on:On ]

 

↑ここまで

 

https://drive.google.com/file/d/1w6AT_-6e7wsDRnAag-uaZ2lYkDNvlJuf/view?usp=drivesdk

 

 

 

↓HotspotをJoinの通知をからオフにするだけ

 

Profile: Get notification Hotspot off (9)
Restore: no
Event: AutoNotification Intercept [ Configuration:Event Behaviour: true
Notification Type: Only Created Notifications
Notification App: Join
Notification Title: Hotspot Off
Notification Text: Hot off
Package Name: com.joaomgcd.join ]
Enter: Hotspot off (10)
A1: WiFi Tether [ Set:Off Keep Wi-Fi when turning on:Off ]

 

↑ここまで

 

https://drive.google.com/file/d/1uNiJcnWpkRDTRqHrGX64frUSGlizS_aO/view?usp=drivesdk