Xperia Z3 tablet Compact Wi-Fi 16GB版をAndroid11相当にsetupする ‘25.2月編

以前 Xperia Z3 tablet Compact Wi-Fi 32GB版(SGP612) をAndroid11相当にupdateしました。Wi-Fi 16GB版SGP611もほぼ同じであろうと思いましたが、多少違いがありましたので結果をレポートいたします。カスタムROMがインストールできない失敗事例と原因としても役立つ情報になるよう時系列で説明しています。不要な方は下から読んでみてください。


まずSGP611SGP612 か判別が必要です。本機を所有されている方も把握されている方は少ないかもしれません。国内ではSGP612 が多いようです。 設定 -> タブレット情報 から確認します。

尚、LinageOS18をセットアップ後は、機種は Xperia Z3 tablet Compact WiFi となり機種識別ができません。その場合は、設定 -> ストレージ から容量で判別します。


手順は SGP612 と同じです。SONY Unlock Bootloader サイトで選択するDevice名は SGP612 も共通でした。ポイントとなる Bootloader unlock allowed の状態は Yes でした。以下解除後の状態です。


当初、 SGP612 で試したものも含む以下の リカバリ と Boot Loader いずれも、起動しませんでした。

file入手先起動結果
boot.imglineage-18.1-20231011-4microg-UNOFFICIAL-z3tcw.zip から取出し品。NG(ダンマリ)
boot.imglineage-18.1-20240321-microG-UNOFFICIAL-z3tcw.zipから取出し品。NG(ダンマリ)
boot.imglineage-18.1-20230627-4microg-UNOFFICIAL-z3tc.zipから取出し品。LTE版は同じ16GBなので。NG(ダンマリ)
boot.imgSGP612 の純正ROM用起動する。Boot Loader 互換確認用として。
file起動結果備考
pbrp_9.0_z3tcw.imgNG(ダンマリ)SGP612 ではLinageOS18 の書込みOK。
twrp-3.0.2-0-scorpion_windy.imgNG(ダンマリ)SGP612 ではLinageOS18 の書込み失敗。

Boot Loader 書込み時に、以下のように “-S 256M” オプションをつけるという情報のありましたが効果なし。

fastboot -S 256M flash boot boot.img

カスタムリカバリ書込み時に、以下のように partitionを “FOTAkernel” を指定するという情報のありましたが効果なし。

fastboot -S 256M flash FOTAkernel pbrp_9.0_z3tcw.img

このような場合は、以下のようにカスタムリカバリを boot部 に書込む手法が使えます。これでカスタムリカバリは一旦起動します。 pbrp_9.0_z3tcw.img の方は起動せず。

fastboot flash boot twrp-3.0.2-0-scorpion_windy.img


ひとまずSGP612 でNGだった twrp-3.0.2-0-scorpion_windy.img で書込んでみます。SGP612 で同じように失敗しました。原因は機種名不一致のようです。

仕方ないので、install scriptをいじって機種判別を外します。ついでに何が原因なのかトレースも追加します。LinageOS18パッケージzipを解凍してMETA-INF\com\google\android\updater-script を修正します。scriptは bash かと思いましたがAndroid独自のようです。OTA パッケージの詳細 に説明がありますね。

LinageOS18パッケージを再Zipして TWRP でインストールします。インストール自体は成功。機種判別できない原因は、下図のように機種名が getprop(…) で取得できていないようです。TWRP と updater-script のバージョンの兼ね合いがあるようですね。

尚、このzipは本家を修正するわけにもいかないため、個別にこちらに公開してあります。


この機種の場合、LinageOS18書込みで Boot Loader も専用に変わるのですが、OSは起動しません。根本的に何かが異なっていそうです。


XDA Forum で情報を探すと、 SGP611 SGP612 の boot、リカバリ、LinageOS18 は互換性があり、動作実績もあるようです。海外では SGP611 の利用の方が多いようです。組込みソフトでいうboot Loader の互換が無いケースは、

  1. MCU ( Android端末ではQualcomm社の ARM CPUに周辺機能加えた統合IC ) が違う。
  2. MCUの入出力ポートの用途、MCUに接続されていの外部ICが違う。
  3. ROMレイアウト( Boot Loader や OS が格納されている絶対アドレス範囲等 )が違う。

上記1. 、2. は考えにくいですが、電子機器全般では電子部品の在庫消化や lot 切替で、仕様違いは割とあります。上記3. が濃厚ですが市場実績とUnmatch。

SGP611 の純正ROMの以下のリリースは3つあります。それぞれでROMレイアウトが違うとしたら、、、容量が少ないので途中で調整が入っている可能性がありそうです。

VersionAndroid備考
?4.4.4初回、今回端末はコレ
23.4.A.3.65.0.1
23.5.A.1.2916.0.1最終

fastboot ツールで段階的に書換えていきます。23.5.A.1.291 の書換で Boot Loader が起動するようになりました。なるほどSGP612 では無意識でしたが、事前に最終純正ROMに書換ておく必要があったようです。 updater-script にも “SGP611:6.0.1/23.5.A.1.291/” と記述されてますね。(checkはされてませんが…)


ROMレイアウトが正しくなったところですが、boot.img から リカバリは起動しません。リカバリを boot部 に直接書くしかないようです。 pbrp_9.0_z3tcw.img の方は変わらず起動せず。もしもOSを再書換する場合はもう一度以下コマンドを叩く必要があります。

fastboot flash boot twrp-3.0.2-0-scorpion_windy.img


twrp-3.0.2-0-scorpion_windy.img を使うしかないので、機種判別を外したLinageOS18パッケージzipを書込んみます。LinageOS18書込みで Boot Loader もOS専用に書換わってしまうので、TWRPの起動はワンチャンスです。Googleサービス等も一緒に書込みます。書込み物は以下のとおりです。

file適用
lineage-18.1-20240321-microG-UNOFFICIAL-z3tcw改OS本体
open_gapps-arm-11.0-nano-20220215.zipGoogleアプリ open版。MindTheGappsと一緒に入れないと、初期Setupが永久ループして終わらなくなってしまう。
MindTheGapps-11.0.0-arm-20230922_081034.ziplineageOS用Googleサービス


ようやくセットアップできました。wifi、BT、カメラ、SDカードはOK、GPS、FMラジオは相変わらずNGです。

Googleサービスは自動まかせUpdateさせます。’25.2月時点でのGoogleサービスのバージョンは以下のようになりました。

アプリ名バージョン
Google検索16.4.36
Google Play44.7.24-29
Google Play開発者サービス25.03.35


以上、SGP611:Z3 Tablet Wi-Fi 16GB版をAndoroid11相当にUpdateする手順です。しかしながら自分でやるのはメンドクサイ、忙しい、自身が無い方は、弊方でセットアップをお受けいたします。SGP611は事前の純正OS UPDATEが必要な場合、追加工数かかります。工数中、約1.5時間の個人様向け工数+事務費で税込4,0005,000円 。ご相談、依頼はこちらから。

Windows VS2022 からTestflight をUPLOADする手順【’25.1月編】

前記事からひきつづきWindows Visual Studio 2022 で、TestFlightする手順です。MAC Visual Studio 2019での手順と画面も違うため別途記録しました。

TestFlightのビルド構成にし、Build後( 数分要しMAC側で最後あたりでパスワード入力、MAC側でパスワード入力が表示されない場合はMACとVS2022を何度も起動しなおす )、アーカイブを実行。

アーカイブが始まります。UI動作はやや不安定です。画像中に注記しています。

署名をするため配布を開始します。

配布先を選びます。

生成先を選びます。

直ぐに保存先の選択ダイアログがでます。ここで Users の下に .ipa を生成したくないところですが、開発用パスに移すと一度ダンマリになりましたのでパスは変えない方がよいかも…

この後、MAC側でUPLOADしますが、同じFileなのに20回くらいで成功しました。サーバの要因か不調な場合があります。Apple Developer のパスワードを何回も聞かれたり、htmlタグエラーみたいなのが多発します。Transporter も起動しなおすと表示が変わったりメチャクチャです。

なおストアーアップロードはWindows版でも相変わらず失敗します。

Xperia Z4 Tablet Wi-Fi版をAndroid11/12相当にsetupする ‘25.1月編

過去にXperia Z4 Tablet国内LTE版(SO-05G), Xperia Z4 Tablet海外LTE版SGP771を、Android11相当にUPDATEしました。今回 Xperia Z4 Tablet Wi-FI版SGP712 を実施しました。その手順の違い等を報告します。


手順は SO-05G と同じです。SONY Unlock Bootloader サイトで選択するDevice名はLTE版もWi-Fi版も共通でした。ポイントとなる Bootloader unlock allowed の状態は以下のとおりでした。

なお、解除コードが合っているにもかかわらずUnlockができない場合が見られました。その対応はこちらの別記事を参照してください。


LTE版とは別の物を使います。”karin_windy” は Z4 Tablet Wi-FI版のコードネームです。

file補足
TWRP-3.1.1-lineageos-karin_windy-20170520.img機種判定がうまくいかない
TWRP-3.5.0_9-0-karin_windy-20210122.img状況によっては使えない。

一旦は、TWRP-3.5.0_9 でOS書込みだけ行けはしました。boot.img の書換は不要でした。


以下2種類を試しました。それぞれ難点がありました。

file備考
lineage-18.1-20230205-UNOFFICIAL-karin_windy.zipAndroid11相当
lineage-19.1-20241030-UNOFFICIAL-karin_windy.zipAndroid12相当

今回改めてカスタムROMを探索すると、LinageOS21( Android14相当 )まで出回っていることが分かりました。LinageOS20用、LinageOS21用は機能制限があるようです。詳しくは XDA Forum で検索してみてください。しかし公開先がロシアでした。国事情とソフトウェア事情はことなるとは思いますが、なぜ一般的な公開先 GithubGoolgeドライブAndroid File Host (ここは有償ですか)、SOURCEFORGE ではないのか不安がよぎります。

OS自体は書込み、起動共に正常でした。Wi-Fi、GPS、Bluetooth、カメラ、SDカードの正常確認できました。

すこし変なのが、USB OTG (外部USBメモリの使用) でした。弊方はAndroidに本機能があることさえ知らなかったのですが、本機能の動作を重視している方もいらっしゃるようです。 Wi-Fi版のLinageOS18では通常コントロールパネルに表示されるのですが、今回は表示されません。検索すると出てはくるのですが、、、実際にUSBメモリを差しても表示は出てきませんてした。


LinageOS19は、USB OTGの件と他で万が一問題があるとマズイので今回は適用は控え、利用実績の高いLinageOS18に入れ直します。ここで問題が発生です。

問題1: TWRP-3.5.0_9 が起動しない

LinageOS19 で何かが変えられてしまったのかもしれません。一旦純正ROMに戻してみたのですが解消しませんでした。TWRP-3.1.1-lineageos-karin_windy-20170520.img に書直しすと起動しました。こちらで作業を進めるしかなさそうです。

問題2: TWRP-3.1.1 でOS書込みでエラーが発生

どうも機種認識がうまくいっていないようです。これはTWRPのバージョンによるようです。(SGP611でも同様の事象が見られました)

仕方ないのでOSインストールスクリプトの機種チェックを外してインストールします。詳しい手順は割愛しますが以下画像を見てください。

zipは本流にマージするのは恐れ多いため、こちらに個別に公開しています。

これでようやくOS書込みできました。Wi-FI、GPS、Bluetooth、カメラ、SDカードはOK。USG-OTGも表示され、USBメモリ接続まで確認できました。


以下のMindTheGapp を、TWRPでインストールします。SGP612、SGP771、SM-T800とは異なり、Google Play 開発者サービス と Google Play の個別インストールは不要でした。

file備考
MindTheGapps-11.0.0-arm64-20230922_081122.zipGoogle検索、Google Play 開発者サービス、Google Play の3つ

インストール後、GoogleサービスをUPDATEします。ポイントは以下2点です。

‘25.1月時点でのGoogleサービスのバージョンは以下のようになりました。

アプリ名update前update後
Google検索12.2.13.2316.2.40
Google Play35.2.19-2144.5.23-29
Google Play開発者サービス20.45.1624.50.34

試しに Google Play ストア から、MAP と Googelキーボード入力 を入れてみます。


これで一旦セットアップが完了しました。LinageOS19版はやや怪しい感は見られますが、機密情報入力やUSBメモリを控えれば使えることは使えそうです。

以上、Z4 Tablet Wi-Fi版をAndoroid11 or 12 相当にUpdateできました。しかしながら自分でやるのはメンドクサイ、忙しい、自身が無い方は、弊方でセットアップをお受けいたします。Tablet Wi-Fiは難易度低、約1.0時間の個人様向け工数+事務費で税込4,000円 。一部OSが古い機種があるよあで最新化してSETUPするのがベターなようです。その場合は+1,000円。ご相談、依頼はこちらから。

その他気付きですが、インストール時に SGP771 の表示が現れますが、インストールスクリプトの誤りのようです。

TortoiseGit で大きいfileをGit-Hubにpushする

Windows上でGit-Hubに大きいファイルをpushする手順の記事があまり見られなかったので覚書です。

300MBのzipをGit-Hubにpushする数分も待たされ、容量うんぬんではなく、error: faild to push some refs to とエラーがでます。

他WEB記事をみると Git LFS というモードがあるようです。なるほど。どうしたら有効になるのでしょう? git lfs というオプションがあるようで、コマンドプロンプトからたたいてみます。gitのコマンドは、TortoiseGit と一緒に入っているみたいです。

コマンドは適当な場所でたたくと、リポジトリ外的にエラーがでるので、リポジトリ直下でたたいてみます。

以下コピペ用コマンドシーケンスです。

git lfs track "*.zip"

このあとTortoiseGit のメニューに変化がみられました。

対象のzipが変更あり扱いになりました。よくわかりませんがコミットします。

再pushすると、大きいファイルの認識はされるものの( これはTortoiseGit というよりGit本体の反応 ) エラーは変わりませんでした。

他のコマンドためします。以下手順でpushできました。push自体は TortoiseGit からも同じなので出来るはずです。コミット後に行わないと、Git can’t resolve ref: “HEAD” がでます。

以下コピペ用コマンドシーケンスです。

git lfs migrate info
git lfs migrate import
git.exe push --progress -- "origin" main:main

リポジトリ直下に .gitattributes という設定ファイルができているので、これがポイントなのでしょうか?

*.zip filter=lfs diff=lfs merge=lfs -text
*.txt filter=lfs diff=lfs merge=lfs -text

TortoiseGit からは全て直接できないが、コマンドプロンプトから行えばいいようです。

オリジナルCAN Logger を構想する1

構想時のメモです。

ラズパイ や FA用PC と 汎用CANボート の組合せがスピーディですが、

  • 起動に時間がかかる。
  • サイズが大きくなりがち。(二輪にも載せたい)
  • 細かな制御ができない。
  • 予期しない不確定要素がおおい。
  • ノイズや振動は大丈夫か? (二輪にも載せたい)
  • CAN-FDに対応させたい。(開発用途ではCAN-BUS使用率が直ぐいっぱいになってしまう)

よって車載用のCAN付マイコンを使います。

ロガーでもリアルタイム値をリモートで見たいと要素もあります。モバイル端末で中継させ、用途に応じてデータを飛ばします。以下のような構成とします。

モバイル端末に使うには、BTで中継します。

以下ポイントです。

  • BT4は遅いのでBT5.1を使います。Long rangeモードがあり耐ノイズ性を期待します。
  • 車載CANとBTを搭載したマイコンはほぼないので、タスク分割も兼ねて別マイコンとします。
  • ログモードは後でかんがえます。

極力ハードウェア機能で受信させ、フルログモードに備え、処理能力の消費を控えます。CANは2チャンネルを使用。制御用が必要になる可能性もあるため、それら用に受信バッファとルールをRESERVEしておく。

基本はこんな感じで構想中です。