[Halium9-GSI] - Oneplus 3(T)
Edit : After 2 months as daily driver
Ubports on this device is really nice and definitively faster than Halium 7.1
I did notice a critical bug that I'm not able to identify the source exact, but I would think it's at android level => Rild. After some time ofonod is not anymore able to get cell signal information, ofonod is not crashing but simply not able to get modem information. Tragic side of the bug, the cell signal freeze and making you thinking everything is fine, while you cannot make and receive a call...
I've made a small watchdog/hack reading the log of ofonod and when cell tower information is lost it kill Ofonod and Telepathy-ofonod (Otherwise it's loose it's DBUS-id). So far killing ofonod is the only way to get back cell tower signal. It happen randomly, sometime 4 times during an hour, sometime 4 time during the day...
It's not a fix, but a dirty hack letting me using the phone daily without issue and studying this problem :).
Except that the limitation relies on the GSI image rather than the port itself.
I've updated the working/not working section thanks of Flo list.
After working on the Halium 7.1 port OP3, i've gave a shot to the Halium 9 thanks to the help of the Halium telegram group especially Erfan.
This use the great work of the Halium developpers and GSI image from Erfan.
This is a proof of concept, only, and not supposed to be run as a daily driver, even if it's possible.
The port is based on
- A trebelized OP3(T) device,
- A modified lineage OS (Trebelized) to acquire the vendors partition
- The Ubports GSI from Erfan (Updated weekly).
Becareful, this is not a standard H7.1 or H9 port but a H9-GSI port, I didn't try to build a device image with H9.
It's running pretty smooth.
To avoid confusion with Halium 7.1 I've created a dedicate repository : https://github.com/OP3-Halium.
Device (Lineage base): https://github.com/OP3-Halium/android_device_oneplus_oneplus3
Ubports GSI : look into https://t.me/ErfanGSI
Actors: Manual brightness
Actors: Notification LED
Camera: Photo (Yes zoom super slow)
Camera: Video (Yes zoom super slow)
Camera: Switch between back and front camera
Cellular: Incoming, outgoing calls
Cellular: MMS in, out
Cellular: PIN unlock
Cellular: SMS in, out
Cellular: Change audio routings
Cellular: Voice in calls
Cellular: Adjust volume during a call
Endurance: Battery lifetime > 24h from 100%
Endurance: No reboot needed for 1 week
GPU: Boot into UI
GPU: Hardware video decoding
Misc: Anbox patches applied to kernel
Misc: AppArmor patches applied to kernel (Kernel 3.4, 3.10, 3.18)
Misc: Battery percentage
Misc: Offline charging
Misc: Online charging
Misc: RTC time is used after reboot
Network: Bluetooth (Yes but cannot be stopped)
Network: Flight mode
Sensors: Automatic brightness (However Erfan modification requires custom .deb - Ask me)
Sensors: Fingerprint reader (Yes ! thanks to Erfan)
Sound: Volume control
OP3 specific : Finger print reader button calls Dash menu
Working with additional steps:
Cellular: Carrier info, signal strength (loss sometime, need to flash the file OP3_GSI_Fix_V1.2.zip after Erfan GSI)
Cellular: Data connection (Yes select 4G, depending of deb version icon might not be there)
Network: Bluetooth (For better hardware compatibility Bluez 5.53 can be use : https://ci.ubports.com/job/ubports/job/bluez-packaging/job/xenial_-_even-newer-bluez/)
Network: WiFi (To restart it easily, need to flash the file OP3_GSI_Fix_V1.2.zip after Erfan GSI)
OP3 specific : Dash charging (need to flash the file OP3_GSI_Fix_V1.2.zip after Erfan GSI)
OP3 specific : Tri state switch (upper position silent mode) (need to flash the file OP3_GSI_Fix_V1.2.zip after Erfan GSI)
Network: Bluetooth Call (Call got redirected to speaker :/)
Misc: Shutdown / Reboot ( Most of the time no)
Misc: Recovery image (Not with GSI)
Misc: Reset to factory defaults (Not with GSI)
(Network: NFC - disabled atm due to no middleware)
USB: MTP access
USB: ADB access
USB: External monitor - only for devices that support it
OTA / Update : To update the GSI image, an apt-get upgrade needs to be done below.
Everything to install is it there : https://github.com/OP3-Halium/Documentation
- Once you trebilized your phone, you can still use it as before and install non treble OS.
- Until Ubports GSI future is properly define, to upgrade your system you need to mark on hold the following packages, otherwise your phone will not boot :
sudo apt-mark hold hfd-service hfd-service-tools libqt5feedback5-hfd lxc-android-config powerd qml-module-hfd qtubuntu-android repowerd repowerd-data repowerd-tools
- The zip OP3_GSI_Fix_V1.2.zip contains
- Fix for Tri-state switch
- Temporary fix Mobile Morph webview, as the form factor is not capture in GSI image
- Fix battery management - allow to stop charging beyond defined battery %
- Hack to restart ofonod when cell signal lost
- Activate Dash charging
- Fix wifi restart
Anybody willing to help is welcome ^^ even for testing.
Short video : https://gfycat.com/infamousorganicichneumonfly
@ernest I will try it when will have a little time to test. Just a few questions here:
Is Bluetooth calling working as well or not?
Wifi - have you applied the same trick as H7.1 already and I don't need to do anything else to have it working?
Flash light? Is it working after installing: sudo ubports-qa install PR-22
and: sudo install indicator-power ?
It would be great if it's working as you said, so switching between Android 9 and UT GSI/HAL 9 won't need reflashing firmware ( just to restore backup created with TWRP)
Many thanks for your and others hard work to bring UT on Op3/3t
- Bluetooth is rootfs dependent mainly. Cf post of @peat_psuwit.
- Wifi - Not yet, I've found a nicer solution for 7.1 too so I'll update both. But while wait I can tell you we the two files should go. I'll see how it goes on h7.1 but seems way smoother in H9. I hope my update will make smoother H7.1 too.
As it's still under WIP and GSI is standardize, likely i'll create a patch OP3.
- Flash ligth, i'm using a modified app .. an old indicator, I'll to recompile it for armhf rootfs.
I'm not sure what the firmware change does... I didn't flash specific one for the ubports version and likely they're from latest official Oneplus image. I don't see much problem.
Each time you'ill need to flash halium-boot, lineage modified and ubports GSi.
Living proof (of concept):
Hello, just to let some potential users know that i've updated the first post and add created a OP3_GSI_Fix_V1.X.zip to fix / compensate OP3 specific bugs.
Can I ask about swipe to close app bug, is it still hard to close app?
@danqo6 sure, it's an issue in the GSI image, not phone dependent.