Kospet Prime2にFAWファームウェアを入れる

fullandroidwatch.orgにて、Kospet Prime2のファームウェアが公開されました。(ほかにLEMFO LEM12pro用のFAW ファームウェアも公開中)

 

https://discourse.fullandroidwatch.org/t/international-faw-style-a10-firmware-for-the-prime-2/62444/4

 

このファームウェア、開発経緯はかなり複雑なようですが、相当大規模なアプデに当たる模様。要点は以下の内容のようです。

  • GoogleカレンダーなどGoogle系アプリへの対応
  • アクセス許可マネージャーの強化
  • APN設定の完全な解放
  • (内部的にはセキリティレベルの向上とそれに伴うGoogle Play Storeからの対応アプリの増加)

 

  • ダブルタップでの画面オン
  • デフォのお天気アプリが機能するようになった。
  • wiiwearアプリを完全に使用しないことが可能に。
  • スタンバイ時間は10~12日、wifiありでも8日ほどの期待値(驚きの数値です)。もともと公称スタンバイ時間は48hrしかなく、わたしの確認でもSIMのみ運用で3日程度のスタンバイ時間でした。
  • なお、Kospet Prime2についてはこのファームウェアが後ほどOTAにて供給されることが告知されています。つまり、2021年5月初め時点でのFAWファームウェアfor Kospet Prime2は公開デバックを開始した、という感じかな。
  • ファームウェアアプデによる損傷したばあいの責任を提供元であるwiitearチームが負うことが明記されています。→ 2021.05.31版から(?)、自己責任で導入くださいに変更になっています。注意。

 

というわけで現在、手持ちのKospet Prime2に、このFAWファームウェアを入れて環境を構築中です。以下、気付いたこと。

 

  • デフォルトのお天気アプリ、com.android.watchweatherは直接サービスを叩けなくなった。うーん、天気は自動更新されるんけ?
  • 一部のダイアログ生成時(例えばAutomateにてフロー開始選択ダイアログを表示した場合)にアプリがクラッシュするバグは、おおよそ、修正された?模様(確認中)。ビバビバ。
  • 旧Back Ground Cleaner、バッテリーセーバーは削除された?
  • Third Party Adapterも削除。
  • ステータスバーが引き出せなくなった。なぜや。

 

続く。

 

Automate Ver.1.28.2にてflow shortcut生成が出来るように仕様が戻りました

Automate Ver1.26.0にてflow shortcutが生成出来ない不具合に関して、Ver1.28.2にて仕様が戻されたようで、再び従来通りにflow shortcutが生成出来るようになりました。とりあえず、よかったよかった。

簡単にスクエアモードとラウンドモードを切り換える

いちいちパワーダイアログ呼び出して変更するのが面倒なので作った。

 

 


Automate for Android ⋅ Easy_Change_Square<->Round_Mode_V0.1

 


f:id:diablo3cs:20210412100451j:image

例のごとく、フロー開始直後の隅っこクリックはPOPUP Widgetにて使用する場合のもの。やっていることは、

 

  1. パワーダイアログを呼び出す。
  2. スクエアモードをクリックする、またはラウンドモードをクリックする。
  3. バックボタンを入力する。

 

こんだけ。このフローを適当に呼び出せば、簡単にスクエアモードと円形モードを切り換えることが出来る。さらに、フローを構築すれば特定のみアプリではスクエアモード、それ以外ではラウンドモードとかも出来る。

デフォルトの天気アプリを自動で更新する

モンハンライズで忙しいの。

 

さて、Kospet Prime2などではデフォルトのお天気アプリに"com.android.watchweather"なるアプリが入っています。で、このアプリ、自動更新機能が無いんですね、、データ自体はよくあるAccuWeatherサービスのを利用しているようなんですが。

 

なので色々試したら簡単に自動更新させることが出来たの。神おま神おま。神おまください。

 

 

つくったもの


Automate for Android ⋅ Auto_Update_Default_weather_App_V0.1

 

やっることは単純。

  1. 画面がオンになったら、
  2. "com.android.watchweather"のMyserviceを開始する。

そんだけ。これを利用すれば、時間毎に更新なんてことも出来る。

 

 

注意点

どうも"com.android.watchweather"は更新に位置情報が必須のようで、BT PANの場合はそもそも更新が出来ない模様。まぁWifi スキャンやBTスキャンを有効にすれば更新されますが、、

 

X89を眺める(全くオススメしません)

KospetやらLemfoやらZeblazeのフルAndroidスマートウォッチは、内部のボードとソフト面は同一のベンダーが供給しているそうな。で、そのベンダー以外に(それパクった)中身を積んだフルAndroidスマートウォッチが世に出てきてので買ってみた。

 

なお、私は全くオススメしません。コレ買うならLEM10でも買った方が良い。

 

 

X89-2Bのスペックとか

Device info HWあたりで確認。

 

  • SoCはUnisoc SC9832e。CPUはCortex A-53の4コア。世代的にはMT6739と同じ世代か?
  • メモリ3GB/32GBまたは1GB /16GB。わたしは3GBの方買った。
  • 約7000円。安い。
  • Android9搭載。
  • 1.54インチ240x240液晶、発色悪い、まぁ値段相応の部品か。ベゼルが広く、非表示域が大きい。
  • カメラ0.3MPが2個。アップスキャンで2MP化してるんだと思う。
  • 側面にライトあり。珍しい。
  • 心拍センサーと温度センサーあり。まぁ腕で体温なんて計れるわけがない。
  • バッテリー900mAh公称、内部書き込みでは2900mAhになってる。入力ミスかな? 実際は別途測定してみるが、2900なわけがない。

 

 

  • 致命的なことに、OS上で通知機能へのアクセス権限をアプリに付与出来ない。これはUniversal LauncherやAutomateなど、通知機能を利用するアプリがマトモに動かないことを意味する。
  • デフォルトで「腕を上げて点灯」機能がない。まぁ別のアプリ使えばいいんですが、ビックリしました。
  • 当然ながら、Kospet Prime2やRogbid Brave Proのように好きにウォッチフェイスを追加出来たりしない。デフォのホームアプリはうんこだが、上記のように他のホームアプリはマトモに動かないので、、
  • バンド交換不可?かな?

 

 

写真とか


f:id:diablo3cs:20210405104439j:image

外箱。

 


f:id:diablo3cs:20210405104510j:image

電源入れたところ。

 


f:id:diablo3cs:20210405104542j:image

SIMスロットまわり。蓋側にいちおう、パッキン付いてる。これをはめ込んで蓋をする構造。Kospet Hopeなんかと同じような造りですね。

 

 

 

 

続くかもしれない。

 

車運転時にスマホの新規通知を読み上げる/時間で自動的に画面の明るさを切り替える

最近作ったAutomateフローについて。たいしたことないのでひとまとめで記事にしました。

 

 

車運転中に通知を読み上げる


Automate for Android ⋅ Car_device_connect_then_speak_notification_V0.01

 


f:id:diablo3cs:20210324171014j:image

 

フルAndroidスマートウォッチ用ではなく、スマホ用です。まぁ腕時計に読み上げさせるのもアリっちゃアリなんですが、うるさいので私は使いません。

 

 

車運転中は危ないのでスマホ触りませんが、耳は開いてます。まぁラジオなんか聴くわけですね。ならスマホに来た通知を読み上げれば良いじゃないの。でも安全運転してください。またこのせいで事故とか絶対やめてください。責任は負いかねます。

 

 

やってることは、

  1. Bluetoothのバンズフリーデバイスが接続されたら、
  2. 新規の通知のタイトルと本文を音声で読み上げる。
  3. バンズフリーデバイスとの接続が切れたら読み上げ待機解除する。

 

解説

  • Speakブロックの中の謎のbasic64へのエンコードとデコードは特殊文字の読み上げに失敗する為の対策。何か変なコードが混じると直に読み上げ出来ない。
  • Catch Failureブロックは、この手のフローが失敗した場合に自動的にリカバリーするもの。
  • 複数の通知が同時に来た場合、最初の通知しか読み上げない。対策は出来なくもないと思うんですが、めんどくさいのでやってない。

2021 0412にアプデして連続で通知が来た場合に対応しました。また同じ内容が連続で通知された場合、フィルターするようにしました。

 

 

 

フルAndroidスマートウォッチで時間で自動的に画面の明るさを変更する

あまりに単純なフローなので、フロー画像だけ。


f:id:diablo3cs:20210324172420j:image

何故コレが必要なのかというと。Android10のフルAndroidスマートウォッチでは夜間モードが搭載されていて本来ならば自動で画面温度(画面のベース色のことと思いねぇ)と画面輝度が日の出日の入で変更出来る、ハズなんですが画面輝度については変更されないのです。

 

さらに、Automateのナイトモード検出ブロックでこの夜間モードが検出されないのです。仕方ないので、夕方17:00になったら輝度を50%に落として、朝方6:30になったら100%に戻すようにしてみた。

 

 

 

LINEからTelegramへメッセージを自動で送る by IFTTT

突然ですが、LINEが嫌いなので(理由は色々有るが、最大の原因は技術的に時代遅れの産物なこと、今時トーク履歴がクラウド自動保存じゃないとか)Telegramへの移行を促進するために、LINEに来たメッセージをIFTTTにてTelegramに転送してみました。

 

 

Telegramとは

元ロシアの富豪が開発したらしいチャットアプリ。ロシアから復号キー提出迫られたからドバイに移転したそうな。WhatsAppや、LINEなどと同じチャットアプリです。紹介記事は多数有ります。以下のとか。

 


複数端末持ちのガジェッターは、LINEを卒業してTelegramを使うと幸せになれるかも

 

特徴は、

  • 既に世界的にはLINEなんざよりユーザーが多いです。
  • 高い暗号化技術。復号できないので、中国では使用禁止とのことです。
  • 迅速な伝達。ほんの1秒~くらいでメッセージが届きます。
  • 高い自由度。例えばIFTTTで、トリガー発動側に設定できるチャットアプリはこれぐらいです。
  • 実は、wear OS by Googleから、直接返答可能。LINEとは技術とやる気のレベルが違います。
  • 複数端末持ちには嬉しい、複数デバイスで同一のアカウント使用可能。ただしアカウント自体には電話番号の登録が要ります。
  • 強烈なシークレットチャット機能あり。この場合、チャット自動消滅やら色々使える模様。まぁ私は使わないですが、、浮気アプリなんて呼ばれ方も。

 

 

IFTTTを使用してLINEのメッセージをTelegramにコピーする

これをやるやり方として以下の2つの方法を思いついた。

  1. IFTTTでやる。
  2. Automateでやる。

 

方法としては、Automateの方が潰しが効いて良いんですが、簡単に出来るのはIFTTTです。とはいえ、LINEが発行する通知notificationをIFTTTがキャッチしてTelegramに送る、ってやり方なんですが(スマホなしでは動かない)。

 

 

 

まず、IFTTTにて、LINEアカウントとTelegramアカウントの登録を行います。

よく考えたらLINEのアカウント要らんですわ。すいませぬ。

 

 

IFTTTのアプレット作成から


f:id:diablo3cs:20210322103156j:image

Android Deviceを選択。

 

 


f:id:diablo3cs:20210322103409j:image

「notification received from a specific app」を選択。特定の名前を持つアプリの通知のみを送れるようになります。

 

 


f:id:diablo3cs:20210322103725j:image

app nameに「LINE」を指定。メッセージフィルターは無くても良いでしょう。

 

 



f:id:diablo3cs:20210322103903j:image

Thenに、Telegramを設定。

 

 


f:id:diablo3cs:20210322103936j:image

Send Messageを選択。

 

 


f:id:diablo3cs:20210322104007j:image

ひとまず、Target ChatはデフォルトのPrivate chat~にしておきます。ここは後から(Telegramでの@IFTTTのボット追加したあと)変更します。

 

 


f:id:diablo3cs:20210322104221j:image

ひとまず、IFTTT側は保存して終了。

 

 

 


f:id:diablo3cs:20210322104301j:image

Telegramで、ユーザー「@IFTTT」を検索します。/startを押すと、丁寧な説明が表示されます。/connect_groupをクリック。

 

 


f:id:diablo3cs:20210322104633j:image

Choose GroupからIFTTTでメッセージを送りたいチャットグループを選択します。自動でグループに@IFTTTのbotが追加されます。

 

 


f:id:diablo3cs:20210322105045j:image

コレで、IFTTTのボットが目的のチャットグループに追加されました。IFTTTに戻ります。

 

 


f:id:diablo3cs:20210322105146j:image

Target Chatに先程ボットに追加したグループが選べます。選んで、IFTTTをupdateすれば完了。これでLINEが通知を出すと自動でTelegramにメッセージがコピーされるようになりました。

 

 

 

 

Automateで同じことをする

箇条書きで。参考ページ。


【Telegram】APIを使ってメッセージ送信をする | ななといつのTechBlog

 

Automateの参考フロー。


Automate for Android ⋅ Sending a messages from a Telegram BOT

 

 

  • Telegramにて@botfatherを検索、話しかける。
  • 自分専用のBotを作製する。
  • botのkeyを保存する。どこかに一時保存すると良いでしょう。
  • 自分専用botとのチャットまたはチャットグループを作成する。
  • そのchat IDを調べる。調べ方は上のブログの通りですが、単にブラウザにhttps://~のアドレスを打ち込むだけでOK。まぁめっちゃ見辛いですが。
  • botのキーとチャットIDが分かれば、あとは上のフロー内にkeyとID を入れて、お望みのフローを構築すればOK。

 

AutomateからHTTPリクエストする場合(別にTaskerから同じ様にHTTPリクエストしても良いと思う)、LINEに限らず、任意のテキストを自動でTelegramのグループに送れますので、色々できます。