[spam] [personal] information on the Unihertz Titan, a mobile phone

k gmkarl at gmail.com
Tue Dec 28 04:03:46 PST 2021


Unihertz Titan smartphone information
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>18th January 2021
at 1:37pm

Titan is a bulky but cool rugged smartphone with hardware QWERTY keyboard
with embedded touchpad, by Chinese manufacturer Unihertz.

[image: image]

   - Release Date: December 2019
   - Dimensions: 153.6×92.5×16.65 mm
   - Weight: 303 g
   - IP67 dust and water resistance (not water proof!)
   - Hardware QWERTY keyboard *with built-in touchpad*, with backlight.
   Languages supported by stock Kika Keyboard software: English, German,
   French, Italian, Portuguese, Spanish, Dutch, Russian, Japanese, Chinese.
   - OS: Android 9.0, official update to Android 10
   - Screen Size: 4.6"
   - Screen Resolution: 1430×1438
   - Chipset: Mediatek Helio P60 (MT6771), 4x 2 GHz ARM Cortex-A73, 4x 2
   GHz ARM Cortex-53
   - GPU: Mali-G72 MP3, 700 MHz
   - RAM: 6 GB (LPDDR4X 1866 MHz)
   - ROM: 128 GB (eMMC 5.1)
   - Battery: 6000 mAh, Li-Po (supports 9V 2A and 12V 1.5A fast charge with
   bundled wall charger, Mediatek Pump Express/PE+)
   - Wireless Charging
   - NFC
   - Wi-Fi: a, b, g, n, n 5GHz, ac, Dual band, Wi-Fi Direct
   - Bluetooth: 4.2
   - GNSS: GPS, A-GPS, GLONASS
   - USB: 2.0, USB Type-C
   - USB OTG
   - Camera: 16MP AF rear (OV16880
<https://www.ovt.com/sensors/OV16880> sensor),
   8MP FF front (IMX219
   <https://www.gophotonics.com/products/cmos-image-sensors/sony-corporation/21-209-imx219>
    sensor)
   - Video camera: 1440×1440 / 1920×1080, 30 FPS
   - SIM Slot: Dual SIM Dual standby
   - MicroSD Slot: yes, combined with SIM slot (you can insert either 2 SIM
   or 1 SIM + MicroSD)
   - Sensors: Fingerprint (front-mounted), G-Sensor, Compass, Gyroscope,
   Proximity, Ambient Light Sensor
   - 3.5mm Audio Jack
   - FM Radio with recording function


Supported Radio Bands:

   - GSM: B2/3/5/8
   - WCDMA: B1/2/4/5/6/8/19
   - TDSCDMA: B34/39
   - FDD/TDD LTE:
   B1/2/3/4/5/7/8/12/13/17/18/19/20/25/26/28A/28B/34/38/39/40/41/66
   - CDMA 2000: BC0, BC1


Miscellaneous technical details:

   - Treble-enabled
   - Partition type: A-only
   - Widevine CDM L3 (software-only)
   - Built-in integrated call recorder with automatic recording
   functionality
   - The phone seems to be developed and manufactured by A-Gold
   <http://www.agoldcomm.com/en-us/> ODM company

Unihertz Titan pros and cons
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>30th January 2021
at 2:22pm

This device is pretty good overall. I switched from Blackberry Q10 and now
use it as my main phone. It's not as polished, but we're getting there
thanks for manufacturer firmware updates. I enjoy it and recommend to
hardware keyboard fans.
Pros

   - Build quality of the device is not top notch, but still of a high
   standard
   - The keyboard is also a touch panel (as on Blackberry
   Passport/Key1/Key2), you can scroll in any direction without touching the
   display. It also helps comfortably holding the device despite its size.
   When you type, the sensors temporary disables to not interfere with typing.
   - Ear speaker audio quality is surprisingly good, media speaker is loud
   and good quality as well
   - Unihertz fixes issues, updates firmware and software regularly
   - Built-in integrated call recorder with automatic recording
   functionality
   - Easy to obtain root privileges, easy to reflash

Cons

   - Mono media speaker. There's only a single speaker, despite two speaker
   cutouts on the back, one is just a dummy.
   - Fingerprint scanner is not reliable. Even with two fingers added twice
   (as 4 fingers), there's a big chance it won't unlock at the first try.
   - Camera is mediocre. Not that bad, but don't expect good quality under
   insufficient light conditions.
   - No physical keyboard gestures support, low keyboard integration with
   Kika Keyboard software (can't change the layout with a hotkey, need to
   press on-screen button)
   - Very small number of physical keyboard supported languages on stock
   Kika Keyboard
   - No kernel source code provided as for February 2021


Bugs

As of Android 10 December 2020 firmware:

   - Russian layout (and possibly other) of hardware keyboard in Kika
   Keyboard is barely usable. Russian has 33 letters, which requires assigning
   some keys with two letters on a 26 button physical keyboard. Titan uses
   non-standard layout as in Blackberry Passport, with a major caveat: to type
   alternative letter, instead of just pressing the button twice, you have to
   press and hold the key, wait until alternative letter appears on screen,
   then press it on screen. Fortunately there is (better) third-party software
   with hardware keyboard support available.
   - Kika keyboard incorrectly handles SHIFT+key and ALT+key, making the
   next key capitalized/alted as well. If you want to type "hEllo" by pressing
   h, shift+e, l, l, o, you'll get "hELlo".
   - Unihertz implemented different *physical* keyboard logic
dependent on *on-screen
   keyboard* visibility. If you disable on-screen keyboard in physical
   keyboard Android options, the sensor won't be disabled temporary while you
   type, and if you assign long-press keyboard shortcut, you won't be able to
   type assigned key letter on the home screen launcher anymore. Don't disable
   software keyboard in the settings.
   - It's possible to delete some system applications without being able to
   reinstall it in any way other than factory reset or by deleting a special
   file with root privileges. Even creating another phone user won't make it
   reappear. One example of such application is calculator, which is a
   modified version of a standard Android calculator to support physical
   keyboards (so it's an important app you won't want to delete).
   - When Night Light mode is enabled, switching from screen to screen
   occurs with a strange yellow-to-white transition effect. Fixed in
   Android 10.
   - High CPU load while the device is idle (screen off), which leads to
   excessive battery consumption. See Idle CPU load fix
   <https://unihertz-titan.neocities.org/#Idle%20CPU%20load%20fix>. Fixed
   in 07.08.2020 firmware.
   - Additional 6-8% CPU load by SurfaceFlinger/SystemUI while the device
   is idle due to incorrect surface allocation by SystemUI and the necessity
   to send vsync packets every 16 ms to it. Fixed in Android 10.
   - Fingerprint data is stored without encryption and is not handled in
   TrustZone, violating Android fingerprint hardware security requirements
   <https://support.google.com/pixelphone/answer/6300638?hl=en>. Check
   /data/vendor_de/0/fpdata/ to see your fingers. Seems fixed in Android
   10, needs recheck. Only last fingerprint is stored unprotected now.

Titan Tips & Tricks
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>12th May 2021 at
2:01pm
Hotkeys

ALT+SPACE shows small symbol panel provided by system, not by keyboard
software.

Secret codes

"Calling" to the following codes show secret menus and launch hidden
applications. To use some of these codes, you need to activate Developer
Menu and activate USB Debugging first (you don't need to connect the phone
to PC though).

*#*#4636#*#* — Testing Settings (phone information, mobile network
configuration, usage statistics, Wi-Fi info)
*#*#3377#*#* — Factory Test (mtklog, ygps, gravity calibration, distance
calibration, smartpa calibration, single test)
*#*#114#*#* and *#*#116#*#* — Camera sensors, LCD panel, memory and other
hardware information
*#*#34635280#*#* — Engineer Mode with lots of internal configuration. Here
you can change mobile network mode, supported bands, lock to exact cell ID,
tune VoLTE/VoWIFI settings and other low level options. Be very careful, do
not modify anything unless you understand what would happen exactly.
*#*#08#*#* — Change IMEI numbers (Android 9 only. Yes, a stock factory
application to change IMEI!)
*#*#010#*#* — Check and clear battery usage statistics

Software tips

If your application gets killed, the notifications does not come in
instant etc,
make sure that the application is allowed to run in background in Settings
→ DuraSpeed (Android 9 only, the tick should be checked/enabled) and
in Settings
→ Intelligent assistance → App blocker. These two options are custom
Mediatek battery saving features.
If your application is old and was designed for older Android versions, you
may also need to exclude it from stock Android battery saver. Go to Settings
→ Apps & notifications → See all X apps → find your application → Advanced
→ Battery → Battery optimization, find your app again and choose "Not
optimized"

To disable lockscreen pedometer (Android 9), go to Toolbox → Pedometer →
Settings → disable "Display steps when screen locked".

Use cobalt232's Blackberry Manager
<https://cobalt232.github.io/blackberrymanager/> to install Blackberry Hub,
Calendar, Contacts, Keyboard, Launcher and more. You may also install
LayTray
<https://play.google.com/store/apps/details?id=space.neothefox.laytray>
for keyboard
layout icon in notifications of Blackberry Keyboard.

Install Fluid Navigation Gestures
<https://play.google.com/store/apps/details?id=com.fb.fluid> for full-featured
gestures on Android 9, from bottom and sides, with complex patterns.
Selected extended functionality requires root. Android 10 has OS-wide
gestures support.

To remap your keys use Physical Button Master Control
<https://repo.xposed.info/module/xeed.xposed.cbppmod> (free Xposed module,
requires root+edXposed, works when screen is off) or flar2 Button Remapper
<https://play.google.com/store/apps/details?id=flar2.homebutton> (premium,
some features require root, does not work when screen is off in general,
but volume button actions do).
The former is very flexible, it supports complex scenarios and allows you
to assign different actions whether screen is on or off, whether audio is
playing, and so on.

Alternative keyboard software
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>23rd June 2020 at
9:49pm

Stock Kika Keyboard has flaws. You can install and use the following
software as a replacement:

RuKeyboard (recommended)

Initially made for physical keyboard smartphones back in 2009. Created
generally for Russian and other languages with Cyrillic alphabet, but could
be modified for any language. Abandoned software but still works with
Android 9 perfectly fine. Supports multiple letters on a single hardware
key with double/triple press. No bugs, smooth typing experience. Supports
layout switching with a hotkey (alt+shift, alt+space, shift+space, user
defined) and shows language flag in the notification bar.
Unfortunately, does not support word prediction and correction. You get
what you type. First letter capitalization is supported.

RuKeyboard with 5 Russian layouts (as Blackberry Passport, as Blackberry
Q5/Q10/Classic, as Blackberry KEYone/KEY2):
Download link 1 <https://www.androidfilehost.com/?fid=8889791610682876943>
 | Download link 2
<https://www.mediafire.com/file/qn6e4e7gq0gc7ip/rukeyboard-unihetz-titan-modv3.apk/file>

Physical keyboard layouts are stored in apk file, in assets/hard/*.xml files.
Take a look at unihertz_titan_ver1.xml for example and implement your own
layout for your language accordingly.

Software on-screen keyboard is modified to show only single row of most
used symbols which are missing on a physical keyboard with an alt key,
similar to Kika Keyboard. You can modify it as well, check
res/xml/kbd_query.xml file.

[image: image.png]

AnySoftKeyboard

AnySoftKeyboard <https://github.com/AnySoftKeyboard/AnySoftKeyboard> (Google
Play link
<https://play.google.com/store/apps/details?id=com.menny.android.anysoftkeyboard>)
supports physical keyboards and also requires to create your own layout.
Unfortunately, hardware keyboard support is a bit buggy and does not
perform autocorrection with the hardware space key, but you will see
correction candidates in the top row.
Non-Latin languages for physical keyboard are supported.

By default this keyboard shows full software keyboard. This could be
modified only with a custom software layout. AnySoftKeyboard is open
source. Examples of software and physical layouts are available on the
projects' GitHub.

SwiftKey

Microsoft SwiftKey
<https://play.google.com/store/apps/details?id=com.touchtype.swiftkey&hl=en_US>
keyboard
is probably the best for Latin languages with small amount of diacritical
marks. You won't be able to type diacritical marks but word suggestions
work good.

Non-Latin languages for physical keyboard are not supported.

Unihertz Titan original firmware
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>23rd June 2021 at
8:42pm

There are two firmware versions: EMEA (Europe, EEA/TTEU) and non-EMEA
(TEE/TTNE).
There's no difference between them as for firmware version 20200603, the
files are the same, except for version strings in different places. The
difference seems to be in TrustZone applets set, it's different for TEE and
EEU versions (at least the signatures are different)
You can check which version you have on the box:

[image: image]
Firmware

Official Google Drive link to all Unihertz ROMs, flashing tool, driver, and
flashing instruction, found on Unihertz forum.
The firmware files seem to be updates on a regular basis but may lag behind
official over the air updates.

Unihertz Titan firmware Google Drive folder: Full firmware for SP Flash Tool
<https://drive.google.com/folderview?id=1E9J9IfnhjlRxJAs4Q1p__0k1kefsCxet>
 | OTA updates
<https://drive.google.com/drive/folders/0By1nhWOmuw2KUkVkTG15NVk5NVU>

Current firmware version (TEE): Titan_20210528_20210607-2009 (Jun 08, 2021,
Android 10).
Android security patch : June 5, 2021
Kernel version: 4.14.141+ built on 7 Jun 2021

Serial number, IMEI and TrustZone applets writing tool

If you accidentally formatted/wiped NVRAM data from your device and now
have dummy IMEI and no serial number, you can repair it with the tool. You
don't need to do that after usual firmware reflashing procedure.

The tool is available here:
SNWriter Tool link 1
<https://www.androidfilehost.com/?fid=17248734326145740463> | Link 2
<http://www.mediafire.com/file/v4ewz4qll229krg/tee-20200616T074814Z-001.zip/file>

Read included readme file and watch the video.

Unihertz Titan TWRP recovery & rooting
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>23rd June 2021 at
8:43pm
TWRP Recovery

TWRP 3.5.0_9 for Uniherz Titan, semi-working alpha version v0.2 (18 Jan
2021, with Android 10 support)

This is TWRP recovery for Unihertz Titan smartphone. It works, but missing
two essential features:

   1. Userdata decryption
   2. MTP

That means that you won't be able to access user data (only system, vendor
and other internal partitions) unless you disable data encryption entirely
in the OS, and won't be able to transfer files over USB with MTP.

Yet, it's still useful for removing bloatware/google services or installing
Magisk and obtaining root access.
ADB file transfers (adb pull/push, adb sideload) work fine.

Use this TWRP version only if your really-REALLY want to install custom
recovery and/or root.

Link 1 (androidfilehost)
<https://www.androidfilehost.com/?fid=17248734326145717939>
Link 2 (mediafire)
<https://www.mediafire.com/file/oesfukn9ihdtm9h/TWRP_3.5.0_9_for_Unihertz_Titan_%2528Android_10%2529%252C_semi-working_alpha.7z/file>
Installation instruction is inside the archive.

After installing TWRP, you won't be able to apply Unihertz OTA updates,
you'll have to revert back to stock recovery to perform the update. You can
reinstall TWRP afterwards.

Show older downloads

Rooting

Note: you don't need TWRP to get root.

Android 9 and Android 10 (since Magisk v22.1): To root this device, simply
install Magisk <https://github.com/topjohnwu/Magisk/releases> via
TWRP/using adb sideload/with kernel file patching. It will inject Magisk
into kernel image.

Show older information

Show older downloads

Custom Android 10 Generic System Image (GSI) Firmware for Titan
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>18th January 2021
at 1:59pm

NOTE: official Android 10 is now available, check Unihertz Titan original
firmware
<https://unihertz-titan.neocities.org/#Unihertz%20Titan%20original%20firmware>
.

GSI stands for Generic System Image. It's a file-system image that you
flash to your device's system partition. It's generic because it accesses
hardware using the new standardized hardware APIs (so it should work on any
treble-enabled device).
In other words, this is a generic custom firmware suitable for Titan.

phhusson <https://github.com/phhusson/> provides treble_experimentations
<https://github.com/phhusson/treble_experimentations/> firmware based on AOSP
Android 10, of different flavors: GAPPS version with common Google
applications, GO with Android GO version of applications, FLOSS with
open-source replacements of Google components, and VANILLA, the simplest
and cleanest one.

Download Android 10 GSI image from treble_experimentations releases
<https://github.com/phhusson/treble_experimentations/releases>.
You need "system-quack-arm64-ab" files. Install it either using TWRP or
with fastboot flash system command.

Bluetooth aptX codec support
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>26th January 2021
at 5:53pm

aptX codec support is a premium option which involves paying license fee to
Qualcomm, the license holder of the codec. Since Unihertz haven't licensed
the codec for Titan, it can't be used for Bluetooth headphones.

Fortunately, the support is still present in the firmware and could be
activated by adding missing libraries. Install the following Magisk module
(requires root) to activate aptX and aptX HD.

Android 9 version:
Download mediatek.bluetooth.aptx64.zip

Android 10 version:
Download mediatek.bluetooth.aptx64_android10.zip

Idle CPU load fix
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>18th January 2021
at 2:00pm

UPDATE: This issue has been fixed in 07 August 2020 firmware.

------------------------------

June 3, 2020 and July 8, 2020 firmwares for Titan have a bug: it creates
unnecessary high CPU load while the phone's screen is off. This has a
negative impact on battery life.

The issue is caused by race condition between touchscreen driver and I2C
bus suspend procedure. The driver believes the touchscreen is not powered
off and does not disable interrupts, while I2C bus is already suspended.
This leads to interrupt spam and 90%+ CPU load of a single core.

You won't see this issue in battery stats because it happens in the kernel
driver, not in Android system.

Luckily, this could be fixed with a small workaround. Use this Magisk
module (requires root):

Updated for Titan_20200706

Download unihertz.titan.touchirqfix.v2.zip

With this fix battery stats report up to 8 days of estimated phone battery
life, compared to 4 days without the fix.

Touch keyboard-navigated mouse pointer
suhanc <https://unihertz-titan.neocities.org/#suhanc>12th October 2020 at
9:48pm

To have an actual mouse pointer on the Titan's screen which you can
navigate using the keyboard touch gestures, edit
/system/usr/idc/mtk-pad.idc and
replace touch.deviceType = touchPad with touch.deviceType = pointer, then
reboot your device.

This feature requires root.

Note that afterwards you might always move the cursor to the place you type
into, otherwise typing might be recognized as moving the mouse pointer.

(credits go to Diego in the Unihertz Titan Facebook group)

Unihertz Titan Touchpad Navigation & Selection
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>26th January 2021
at 5:54pm

This is a small Magisk module utility which switches in-keyboard touchpad
to navigation mode (emulation of up/down/left/right keyboard buttons) and
text selection mode (as if SHIFT is held).

The utility allows to quickly navigate to exact text symbol and to
precisely select the text.
Demo video

×<MEDIA>@https://files.catbox.moe <https://files.catbox.moe/zitqxe.mp4>

Supports Android 9 and Android 10.

Installation: Install ZIP via Magisk (root required).

Download unihertz.titan.navkeys.zip

Hard Reset & Factory Reset Protection
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>14th June 2020 at
5:51pm

To do hard reset, press and hold POWER+VOLUME UP, you'll boot into
bootloader. Select "wipe data/factory reset" using volume buttons and
confirm with power button.

if you already did a reset and it asks for account password, that's what
called Factory Reset Protection. The easiest is to remember password. If
you saved it in PC's browser, just extract it from there. If you totally
forgot the password, you'll need to wipe FRP data partition on the device
with SP Flash Tool.

Do do that, install SP Flash tool and corresponding drivers (get it
from Unihertz
Titan original firmware
<https://unihertz-titan.neocities.org/#Unihertz%20Titan%20original%20firmware>),
go to "Format" tab and enter the following data exactly as written:

Manual Format Flash — selected
Region: EMMC_USER
Begin Address: 0x3588000
Format Length: 0x100000

Press green "Start" button and connect your phone to the PC. The phone
should be powered off before connection.
Remember to type the addresses exactly as written. Failure to do so may
delete device-specific data, radio calibration information, IMEI and MAC
address, and so on, and render your device unbootable.

Useful links
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>26th November 2020
at 11:40pm

Official Unihertz Titan Group on Facebook
<https://www.facebook.com/groups/1304745876357921/>
Official Unihertz Technical Support Hub
<https://www.facebook.com/groups/1309762789206132/>
Official Unihertz forum <https://www.unihertz.com/unihertz-form.html> (new
forum, the old one is gone, no old posts have been transferred)

Reddit /r/UnihertzTitan group <https://www.reddit.com/r/UnihertzTitan/>
Crackberry.com Android forum <https://forums.crackberry.com/android-f169/>
Russian discussion on 4pda.ru forum
<https://4pda.ru/forum/index.php?showtopic=958963>
German Titan forum on blackberrybase.de
<https://blackberrybase.de/forumdisplay.php?842-Titan>

Titan disassembled
<https://www.facebook.com/groups/1304745876357921/permalink/1603803733118799/>
(facebook
post)

ValdikSS
ValdikSS <https://unihertz-titan.neocities.org/#ValdikSS>9th July 2020 at
12:20am

This website is created and maintained by ValdikSS <iam at valdikss.org.ru
<iam at valdikss.org.ru?subject=Unihertz%20Titan%20Website>>
Feel free to contact me if you have any updates.

You can edit this page as a wiki and send me edited file over email. Open
tiddlywiki.html <https://unihertz-titan.neocities.org/tiddlywiki.html> and
start editing.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/html
Size: 101720 bytes
Desc: not available
URL: <https://lists.cpunks.org/pipermail/cypherpunks/attachments/20211228/1046b962/attachment.txt>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image
Type: image/webp
Size: 13754 bytes
Desc: not available
URL: <https://lists.cpunks.org/pipermail/cypherpunks/attachments/20211228/1046b962/attachment-0002.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.png
Type: image/png
Size: 6568 bytes
Desc: not available
URL: <https://lists.cpunks.org/pipermail/cypherpunks/attachments/20211228/1046b962/attachment-0001.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image
Type: image/webp
Size: 31450 bytes
Desc: not available
URL: <https://lists.cpunks.org/pipermail/cypherpunks/attachments/20211228/1046b962/attachment-0003.bin>


More information about the cypherpunks mailing list