[Dev] Android on the Universal - JASJAR, XDA Exec, MDA Pro ROM Development

Current android versions:
CM7.2
Kernel Status:
- Kernel v3.10
- LCD
- Keyboard
- SDHC MMC
- Max1587a
- Asic3 Buttons
- Automatic screen rotation
- Touchscreen
- Bluetooth (audio and mouse tested and working)
- Usb host (supports everything USB 1.1 compliant)
- Backlight
- Adb and Usb mass storage
- M24C08 Eeprom
- Keyboard and button backlights
- RTC8564
- Led's - Red, Green, Blue
- Vibrate
- AC Charging
- USB Charging
- WIFI
- Support for EXT4 filesystems
- Modem
- Phone Support
- Audio Support - no input from mics, routing related.
- Data -3g or GPRS
- Power Management - Standby works which is a low power state, Deep sleep and suspend to mem is not working
- DOC flash chips are supported by kernel for both g3 and g4 devices
Not Working/To-do list::
- Camera's - need to add V4L driver to android and dual cam support for camera app and kernel driver.
- add video/audio decoders/encoders
- add modem sound routing to kernel or android (AT commands )
Link to files: (Link)
Link to Kernel source: (Link)

WOW i'll try it. Thanks

Thanks notime!

Not a Universal owner, but glad to see Android made it's way to this device.

Is there any software that can assist to create the 3 partitions?

is anyone working on getting the touchscreen going? if it had touchscreen working i'd jump on this in a hot second.

Now this is so cool, that somebody is actually developing android 4 our beloved Uni :-D:-D:-D

Hi
For me it's not working.
I wrote it here
Here is my LOG
EDIT: It's working. I had the phone off.

Android version
Hi,
first of all - great work!
Second - this will probably be a seen as a stupid question but why are you trying this with such an old version of Android? Are the new versions requiring so much more memory or something?
Anyhow, good luck with further work and thanks for restoring my hopes of Uni resurrection

asdafer said:
Hi,
first of all - great work!
Second - this will probably be a seen as a stupid question but why are you trying this with such an old version of Android? Are the new versions requiring so much more memory or something?
Anyhow, good luck with further work and thanks for restoring my hopes of Uni resurrection
Click to expand...
Click to collapse
That is a good question..., it was the only one i had on hand at the time. But the kernel i'm using is based off 2.6.32.9 the current android 2.1 eclair is based off 2.6.29 so theoretically that and the newer android version froyo should work. If i find or build a 2.1 rootfs that works i will post it.

id say any android functioning on the uni is a giant step in the right direction. we don't need to get picky lmfao

Hi Notimer,
is there any software which can allow me to partition my SD card?

yes. knoppix and fdisk.

Touchscreen
Does anybody know what this ts_calibrate output means or familar with it?
xres = 480, yres = 640
Took 1 samples...
Top left : X = 65492 Y = 678
Took 1 samples...
Top right : X = 65494 Y = 678
Took 1 samples...
Bot right : X = 65492 Y = 678
Took 2 samples...
Bot left : X = 65493 Y = 678
Took 2 samples...
Center : X = 65493 Y = 678
256.000000 0.002021 0.125000
256.000000 0.002694 0.250000
Calibration constants: 16777216 132 8192 16777216 176 16384 65536

If you don't feel like dealing with a full linux distro or the command line when partitioning, try the G-partd Live CD. It's a great, Partition Magic style GUI for the Linux command line partition tools.
http://gparted.sourceforge.net/livecd.php

it'd be better if we just had a 128mb dd image methinks. simpler and faster lmfao

Updates
I posted a new kernel and updated the working functions list on the first post. I know it might not be the updates some were wanting but....it's a update i thought was worth posting...but still no touch screen.
Has anyone tried or built any other android rootfs or images to test with this kernel or know how to?

Does anyone know of a device running Linux that has a phone chip similar to the one in the universal?

Can you compile a kernel image that mounts loopback image files instead of actual ext2 partitions for those that don't feel like partitioning their SD cards? I think it would encourage many more testers.

im confused here, titchy linux runs just fine on the universal. why is it we dont harvest drivers from that?

Related

Linux boots on my Htc Vox!

Hi,
I was looking for info about linux ports of the htc vox (found nothing, do you know if there's anyone trying it already?) I got myself booting linux on my vox using simply haret and the linux image from the linwizard project... oh, the keypad works too, but keys are completely wrong mapped, and some simply dump error. but you get to the login screen and doesn't get stucked at all
It would be really really nice to get linux working fully on this phone... until then, here is the photo!
Excellent work. Would you mind posting some more information on how you were able to boot the kernel from haReT?
Hi!
Go here: http://sourceforge.net/project/showfiles.php?group_id=174107&package_id=199577
And download the file linwizard-0.1.0-r1.tar. Decompress that file into \Storage Card, and then decompress the initrd.bz2 file into the same folder (the initrd is in the Tar file too). Run haret from the same directory and after hitting "run", you will be booting a 7mb linux image. Oh! forgot to say, you have USB Ethernet too, so you can play a little bit more
Your SD card partition is detected, so why do you run off the ramdisk ?
Simply because I got the file directly from sourceforge and I didn't touch anything (yet), but as soon as I can I'll try to make something (I guess with gpe) after remapping the keyboard...
By now, X window works too, and even with the keypad mappings wrong, if you write "fooz" and press J (J is the Enter key) twice, you will get to the shell, there you may launch X window system.
Good work from the linux wizard project!
Android?
This leads to the answer...
Could we dream about booting Android on the VOX, using a custom kernel?
We can dream. It's a linux kernel, so licensing rules apply and it will be completely open source. Problem is, finding somebody willing to hack on it long enough to make it useable.
Excellent work, finally something new and exciting.
About Android... too soon for that. I'm more concerned by now of building a root filesystem with a graphic environment with more than a simple xterm, find information or some source for a kernel driver for the wifi (tnetw1251), another one for the TI 6300 Bluetooth controller, clean the kernel patches I've found, and build the gsm module (omap 850 and 730 cpus are pretty much the same except for the RF -850 has edge, 730 hasn't).
There's lots and lots of work to do before even trying to make Android show a bootscreen in my opinion...
Any help would be appreciated. By now, I have the kernel source, the patches for the omap 850, a root filesystem I didn't have time to try (it should work more or less) yet, the gsm kernel module source, and a bit of documentation. But I'm missing lot's of things (like a real good gpio dump wich my haret doesn't want to do), more info about the other hardware on the HTC... lots and lots of things...
Gpe Working out of the box too!
Hi, just wanted to say... Gpe is running! Well, sort of.. it hangs up a bit, keys still don't work, gsm doesn't work, I think sound doesn't work either...but hey, it's better than nothing, isn't it?
anyone knows how to remap keyboard??? if we get that working we got a shot ot this...
and anyone got usb ethernet working? i got vista and its asking for driver "ethernet handheld"
startx works too...
the acx100 project might have some infoez for patching together a 1251 driver.
@thor202ro
I do know, more or less, how to remap the keyboard, but I don't know wich keys are connected where, that's what we have to find out!
And from the usb networking, it works from linux. With the IP stored in the default.txt file, I got ssh'd onto the htc at first try. I would recommend you use linux for these things, not windows. And if you use windows, I would recommend you to use XP not vista, before you do any other thing...
you can download an easy to use livesystem from http://www.ubuntu.com
i got linux on my laptop no problem...
as for the keys we need something like "showkey"
Explanation
showkey - Examine the scancodes and keycodes sent by the keyboard. Options are -s (show scancodes) -k (show keycodes, default) -m (show keymap). This program outputs key values that the user presses on the keyboard. The program terminates when no keys are pressed for 10 seconds.
o and if you what to restart to wm without removing the bat "reboot" does the job
First, sorry for my english, wich is not as good as I'd want...
Yes, that's more or less what I think, but in a different way. I think the problem is in the kernel. See, this kernel is designed for a HTC Wizard. And this PDA has a quite different keyboard mapping, so some keys are missing in the layout, some do nothing, and some dump a kernel message, and I think what I must change is in here:
linux-2.6.16.27/arch/arm/mach-omap1/board-htcwizard.c
+ KEY(0,0,KEY_RECORD),
+ KEY(0,1,KEY_CAMERA),
+ KEY(0,2,KEY_PHONE),
+ KEY(0,3,KEY_VOLUMEUP),
+ KEY(0,4,KEY_F2),
+ KEY(0,5,KEY_MAIL),
+ KEY(0,6,KEY_DIRECTORY),
+ KEY(1,0,KEY_MENU),
+ KEY(1,1,KEY_COMMA),
+ KEY(1,2,KEY_M),
+ KEY(1,3,KEY_K),
+ KEY(1,4,KEY_OK),
+ KEY(1,5,KEY_I),
+ KEY(1,6,KEY_U),
+ KEY(2,0,KEY_RED), // FIX ME
+ KEY(2,1,KEY_TAB),
+ KEY(2,2,KEY_N),
+ KEY(2,3,KEY_J),
+ KEY(2,4,KEY_ENTER),
+ KEY(2,5,KEY_H),
+ KEY(2,6,KEY_Z),
+ KEY(3,0,KEY_SPACE),
+ KEY(3,1,KEY_L),
+ KEY(3,2,KEY_B),
+ KEY(3,3,KEY_V),
I think this is completely wrong... at least for my phone. But, my haret doesn't deal too well with it (maybe it's because of the cooked rom), and it looses connection once a while, and cannot get to debug where the keys are...
Workin' on it!
and how are going to edit those ... those dont look linke key codes at all... there got to be an config file somewhere...
There's the problem. And with that, the other problem:
Welcome, this is HaRET 0.5.1 running on WindowsCE v5.2
Minimal virtual address: 00010000, maximal virtual address: 7FFFFFFF
Detected machine Generic TI OMAP/OMAP850 (Plat='SmartPhone' OEM='HTC_S710')
CPU is ARM ARM arch 5TEJ stepping 3 running in system mode
Enter 'HELP' for a short command summary.
HaRET(1)# dump gpio
line 1: No dumper gpio available, see HELP DUMP for a list
So, it doesn't work. Tried with versions 0.5.0 and 0.5.1. Didn't find anything newer than that, and I don't know how to do it in another way...any ideas?
you can try watch GPIOS 10
and look here for haret builds http://www.handhelds.org/~koconnor/haret/
it seems like dump gpio is not present in curent builds anymore...
i cant get ssh to connect it asks for password i tryed passwd to se password didnt help....
There's no password on that build, just use root as the username, press enter when asked for the passowrd, you're in.
~ $ cat proc/bus/input/handlers [J
N: Number=0 Name=kbd
N: Number=1 Name=mousedev Minor=32
~ $
~ $ cat proc/bus/input/handlers [J d[16D
~ $ cat proc/bus/input/devices [J
I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="omap-keypad"
P: Phys=
S: Sysfs=/class/input/input0
H: Handlers=kbd
B: EV=3
B: KEY=6400 1 0 0 0 0 84100000 280 8400800 c0000 0 1e0ff07f d3ffc000
i think he uses kbd to map keys
but thers a bigger problem how do we make the sistem rw.... not just read only?

[Zenithink ZT-180] Project: Linux Reborn

(View original thread here)
Project: Linux Reborn​
Don't ask for an ETA on releases, there will never be one
Credits:
1. Yuray (For porting the original debian image and creating the first custom initramfs)
2. Slatedroid (For the great community and information available on this forum)
3. Zenithink (For the fantastic tablet)
4. Favux (From Ubuntuforums for the help he has provided)
5. Mozzwald for the general linux help
Description:
This is a new project I have started for the ZT-180 (I will still continue my custom ROM). The aim of this project is to have a completely working Linux distro running on the ZT-180. I hope I am able to have the distro installed on the internal NAND so it will be extremely fast and have a fast way of booting between Android/Debian. But in my opinion, Android would no longer be required if we had a distro such as Debian or Damn Small Linux.
This is an open project so if you wish to help on the development on the distro(s) please contact me, regardless of your experience.
Updates:
29th August 2011: Debian booted fine, had to use external keyboard, working on getting the virtual keyboard upon boot.
29th August 2011: I managed to dual boot Debian and Android by flashing the Debian kernel as zImage_adb. However this breaks the ADB support for the ZT-180. Eventually I want to have Linux on the internal NAND.
30th August 2011: With dual booting, "Android Mass Storage" boots into Android and "Android ADB" boots into Debian. You select which one by pressing the right function key straight after turning the device on.
30th August 2011: Project may be switching from Debian to Lubuntu 11.10. (Ubuntu with LXDE as it's default environment)
31st August 2011: Compiled Ubuntu 9.10 with the LXDE desktop environment, no touch screen yet.
3rd September 2011: After 3 days, with some help from Ubuntu Forums, I finally have the touch screen working... Oh the joys!
6th September 2011: Wifi works great . Profiles don't need to be manually edited either, the card works with Wicd.
7th September 2011: Sound works, low distortion at max volume.
9th September 2011: Fixed bug that made users have to enter a password to shut down, added battery monitor + more.
Other Information:
What works:
Dual booting (with Ubuntu/Debian...etc) - 100% - Unable to use ADB if you have dual booting enabled. (BETA-1+)
Shutdown - 100% - Pressing shutdown from the menu turns off the system (BETA-1+)
Restart - 100% - Pressing restart from the menu restarts the system properly (BETA-1+)
USB Port - 100% - Works with external peripherals and thumb drives (BETA-1+)
Touchscreen - 99% - Works, slightly out of calibration (BETA-1+)
WiFi - 100% - Wifi works, profiles can be modified with wicd. (BETA-1+)
On-screen keyboard - 100% - Keyboard opens at boot and works perfect with applications. (BETA-1+)
Sound - 100% - Sounds works 100%, low distortion at max volume. (BETA-1+)
Battery Monitor - 80% - Only gives a rough estimate, may not get better (BETA-2+)
Sudo command - 100% - Users can use the sudo command in terminal (BETA-2+)
Not tested:
Ethernet
Headphone jack
Microphone
OTG port
Lock screen
Not working:
G-Sensor - I'll never officially make it work, it would be pointless
Power button - Not sure how to map this yet
Volume buttons - See above
Home button - See above
Log out - Due to the ZT-180 being a tablet, I don't think there is much use for a log out function
Suspend - Probably pointless
Hibernate - Probably pointless
Downloads:
ZT-180 V1 Dual boot kernels (from SDcard):
1024x600 screen
1024x576 screen
You can use these regardless of removing the reset-IC or not)
ZT-180 V2 Dual boot kernel (from SDcard): (credits to rezmus)
zImage_adb
(USE THIS STRICTLY AT YOUR OWN RISK, IT'S UNTESTED AND I WILL NOT BE RESPONSIBLE FOR DAMAGE)
Debian:
BETA-1: http://www.multiupload.com/T8L0GF6I6G (All info and instructions are in the archive. Extract with 7zip or p7zip)
BETA-2: http://www.multiupload.com/MDZA6F9Q8I (Remember to back up your home folder to keep files) (Contains bug fix for password request to shut down. All info + changelog and passwords are in the archive)
Please do not mirror without my permission
Bug fixes:
Calibrate 1024x600 screen:
This small update is nothing to download but will calibrate the screen correctly (another thanks to mozzwald).
Open terminal and log in to root.
Then type:
Code:
nano /etc/X11/xinit/xinitrc
Then when the text editor opens in terminal, use your keyboard to enter this line above the one already there.
Code:
xinput set-int-prop "TSC2007 Touchscreen" "Evdev Axis Calibration" 32 31 3903 -6 3636 &
Calibrate 1024x576 screen:
This small update is nothing to download but will calibrate the screen correctly (another thanks to mozzwald).
Open terminal and log in to root.
Then type:
Code:
nano /etc/X11/xinit/xinitrc
Then when the text editor opens in terminal, use your keyboard to enter this line above the one already there.
Code:
xinput set-int-prop "TSC2007 Touchscreen" "Evdev Axis Calibration" 32 21 3837 -28 3601 &
Fix the internet browser bug: (Credits to mozzwald for the find)
Spoiler
To fix the Wi-Fi, simply open terminal, log in as root and type:
Code:
nano /etc/group
Then at the bottom add this line:
Code:
and-par-net:x:3003:debian
Wow... love the name of it
| MIUI Powered Galaxy Tab | Tapatalk |
Reb0rn said:
Wow... love the name of it
| MIUI Powered Galaxy Tab | Tapatalk |
Click to expand...
Click to collapse
Thank you. It is really opening up a new door for tablets.
abtekk said:
Thank you. It is really opening up a new door for tablets.
Click to expand...
Click to collapse
not working it wont boot into linux, followed the instructions very clear.... just booting in android
can somebody reupload images , please...
thanks

adding driver to kernel 809iv

Hi guys
I am new to android and i need some help. Apologies if i have posted this in the wrong place.
I manufacture and supply large touch screens to special needs schools and in the past i have used multitouch overlays that came with a mini pc android called istick by PQ Labs that were coded to work as multi touch. now i have changed touch panel product i need an android pc to work with it.
I am thinking of using a MK809iv and the company that supplies the overlay has sent me the mods that need to be made to the kernel but i have no idea how to do this.
Here is what they sent me.
Transplanting under Android4.0 For IRMT Multi Touch Frame Driver V1.1
The following method is suitable for the kernel which above Linux 3.0, we take an example of Kernel 3.08.
1. Add manufacturer ID and Device ID in the 352st line of “drivers/hid/hid-ids.h”
#define USB_VENDOR_ID_IRMTOUCH 0x23c9
#define USB_DEVICE_ID_IRMTOUCH_SSERIAL 0x5666
2. Add device according to put the following program in the 669st line of “/drivers/hid/hid-multitouch.c”
/* IRM Multi-touch panel */
{ .driver_data = MT_CLS_CONFIDENCE,
HID_USB_DEVICE(USB_VENDOR_ID_IRMTOUCH,
USB_DEVICE_ID_ IRMTOUCH_SSERIAL) },
3. Add special protocol support in the 1392st line of “drivers/hid/hid-core.c”
{HID_USB_DEVICE(USB_VENDOR_ID_IRMTOUCH, USB_DEVICE_ID_IRMTOUCH_SSERIAL) },
4. Configuring the kernel. (menuconfig)
Firstly enter Device Drivers, then enter HID Devices ,then select Special HID drivers. Build-in HID Multitouch panels . ( select “*” )
Save and exit.
5. Compile the kernel and update the mirror of android 4.0
Shanghai IRMTouch Technology Co.,Ltd
2012.8.31
Any help would be greatly appreciated
Thanks
Ty

[native] [ubuntu] [rom] [kernel] Native Ubuntu Linux for T-Mobile LG V10

Hello everybody,
I have developed a working, native booting Ubuntu MATE 18.04 system for the T-Mobile LG V10. This device has not received enough attention in the development community, so I decided I'd go all out and get a fully open source Linux distribution to boot and run on this underestimated device. I have gotten most of the basic features working, except for Wi-Fi and audio output. I think this could be a great foundation for developing a fully functional GNU/Linux based operating system that can harness the true functionality and power the LG V10 offers.
As of now, this is what works:
- Display (fbdev , no hardware acceleration)
- Touch (Xorg natively supports it)
- Modem/ADSP/Venus subsystems brought up
- Microphones (using Alsa usecase files from LG G4)
- USB OTG ethernet
- rt2800usb wireless driver backported (connect with NetworkManager)
- Stable systemd support
- Udev detects charging/battery percentage
To do:
- Enable hardware acceleration with freedreno DRM/KMS
- WiFi working
- Get HDMI slimport output working with Xorg and freedreno
- Get audio output working
- Offset the second screen in Xorg
- Make ADSP sensors accessible to userspace
- Screen rotation
- Camera blob bringup with libhybris
- Mainline kernel support
For more information, read the README.md on my GitHub repository
If you want to contribute, or have a look at what I have done, here are the links to my GitHub repositories, and the rootfs:
Boot Images: github.com/doitaljosh/native-ubuntu-mate-pplus
Ubuntu MATE 18.04 rootfs archive: drive.google.com/open?id=1AjhBs_9HLO0KC3bFpka2ewpuJTmigimK
Kernel Source: github.com/doitaljosh/android_kernel_lge_msm8992
hey what does this do. that stock kernel don't do?
If you want an extra tester, I have another v10 laying around that could be used for stuff.
great effort. thanks for your time and contribution. i am waiting for my v10 to arrive from ebay. will test.
I'm getting an issue where when the tar is extracting it'll stop and say it was killed. I know that I didn't kill it, as I left it alone while it was extracting. Or is it just it's say of showing that it's done?

[ROM][testing][suez] Lineage-16.0 [05 JULY 2022]

Disclaimer
Code:
/*
* I am not responsible for bricked devices, dead SD cards, thermonuclear war,
* or you getting fired because the alarm app failed.
* Please do some research if you have any concerns about features included
* in the products you find here before flashing it!
* YOU are choosing to make these modifications.
*/
- EVEN MORE IMPORTANT: This ROM only works on devices using the bootloader hack. See <<< HERE >>> to unlock your devices.
- IMPORTANT: Do not update Magisk via the Magisk Manager App, your device will enter a bootloop if you do. Instead update Magisk via TWRP only. If you do this by accident then it is recoverable by just flashing the latest version of the ROM again (with gapps etc as required). This will be fixed in a later update.
Rules
- Please search the thread before asking questions
- Please try to stay on topic, I know it's not always possible
- When reporting bugs please post a logcat and/or dmesg where possible
Lastest TWRP version
- 3.6.1-9.2
Downloads
- Google Drive
Source Code
GitHub - lineage16-suez/kernel_amazon_suez
Contribute to lineage16-suez/kernel_amazon_suez development by creating an account on GitHub.
github.com
GitHub - lineage16-suez/device_amazon_suez
Contribute to lineage16-suez/device_amazon_suez development by creating an account on GitHub.
github.com
GitHub - android-extra/twrp_device_amazon_suez: TWRP device tree for Amazon Fire HD10 (2017)
TWRP device tree for Amazon Fire HD10 (2017). Contribute to android-extra/twrp_device_amazon_suez development by creating an account on GitHub.
github.com
Thanks
- @k4y0z and @xyz` for the bootloader hack
- @k4y0z for the initial kernel
- LineageOS
⏱ Change log / Release Notes
05 July 2022
- [fixed] Backlight HAL Errors
- [fixed] LiveDisplay not working
06 May 2022
- [fixed] Voice assist MIC not working
- [fixed] USB-OTG Ethernet
- [fixed] TWRP: MTP access
- [fixed] TWRP: Fixed USB-OTG
- [info] Added android.hardware.opengles.aep.xml permissions
13 April 2022
- [fixed] Terminal input via apps and adb shell
12 April 2022
- [kernel] Up-streamed to 3.18.140
- [kernel] Enable per user storage quota
- [kernel] Optimized build flags for Cortex-a53
- [kernel] Boeffla Wakelock Blocker Driver v1.1.0
- [kernel] Enable some TCP congestion algorithms
- [kernel] Westwood Default TCP congestion algorithm
- [kernel] Sdcardfs v2.0
- [info] Remove aptX bluetooth libraries for now
- [info] Mount /system partition early-mount style
- [info] Add vendor security patch
06 April 2022
- [fixed] Fix KernelUidCpuTimeReader errors
- [info] Revert audio HIDL from 2.0 to 4.0 back to 2.0 - our drivers aren't ready for this
- [info] Put storage permissions force close on the todo list
- [info] Chrome browser works
- [info] Jelly browser works
- [info] WeDo lego app works
Show Further History
03 April 2022
- [fixed] Magisk update by app
- [fixed] Storage permission issues (cause of some apps crashing)
- [fixed] Lego app not working (more info here)
- [fixed] Cannot switch wifi on after storage encryption enabled
- [info] Update suez defconfig in kernel to be more inline with aosp
- [info] TWRP 3.6.1-9.0 available from Google Drive (no encryption support)
- [info] Up-rev audio HIDL from 2.0 to 4.0
- [info] Disabled amazon logging functions in kernel
- [info] Disabled unused squashfs in kernel
- [info] Conditionally compile MTK_M4U in the ion kernel driver as our device doesn't use it
27 March 2022
- [reverted] WiFi changes from previous build
- [removed] 26 March Build
26 March 2022
- [fixed] Speakers continuing to play while headphones are plugged in
- [fixed] Disney+ crashing
- [didn't work for everyone] Slow WiFi throughtput
- [didn't work for everyone] 5GHz connectivity to AX-88U router and in general
- [didn't work for everyone] 5GHz connectivity to across all channels
- [info] Include Bromite Webview
- [request] WiFi: Can someone test connecting to hidden SSID's and report back?
- [request] Magisk: Can someone test whether updating through the application works and report back?
16 March 2022
- [fixed] MtkOmxCore crash
- [fixed] Better auto adjust on backlight
- [fixed] SIM card prompt
- [fixed] Changed battery capacity to 6300mAh
- [fixed] sdcard access for chrome and other apps
- [fixed] "There's an internal problem with your device." dialog
- [info] Explicitly enable sdcardfs
- [info] Refactor root init scripts
- [info] Remove deprecated storage_list.xml
- [info] Clean-up build.prop
01 March 2022
- [info] Re-build of 28 February version
28 February 2022
- [fixed] DRM Widevine L3 support
- [new] Signature spoofing (enable and disable via developer options)
- [fixed] Wired headphones not working
- [fixed] Backlight HAL crashing
- [fixed] Hardware OMX (MTK codecs now been used)
- [info] Disable camera completely until fully investigated to stop logcat spam
- [info] Enable OTG for ethernet in kernel
07 February 2022
- [fixed] OMX regression was breaking NewPipe and local video file playback
- [info] Clean-up amazon binaries - media playback should be better - config file mess
05 February 2022
- [fixed] Navbar icon corruption
- [fixed] Wallpaper corruption
- [fixed] Laggy graphics
- [fixed] High idle cpu usage
- [info] Updated amazon binaries to fireos 5.6.9.0
12 February 2021
- Initial Release
🛠 Worklist / Tasks
- [fixed] Bluetooth works
- [fixed] Audio works
- [fixed] Internal storage isn't accessible from any app
- [done] Sensors working
- [fixed] Touch sounds are working
- [done] Test audio format playback - mp3 working
- [done] Tested video playback with NewPipe which is working
- [fixed] WiFi signal strength not working
- [done] Support aptX-HD encoder for bluetooth
- [fixed] No adb during boot
- [fixed] WiFi working
- [fixed] Navbar icon corruption
- [fixed] Wallpaper corruption
- [fixed] Laggy graphics
- [fixed] High cpu usage
- [fixed] DRM not working
- [fixed] Hardware OMX (for the most part)
- [fixed] Wired headphones not working
- [done] Enable OTG USB for ethernet
- [fixed] Youtube black screen with audio
- [fixed] MtkOmxCore crash
- [fixed] Battery showing wrong capacity - reported here
- [fixed] "There's an internal problem with your device." dialog
- [fixed] SIM card prompt
- [fixed] Chrome cannot access internal storage
- [fixed] Poor WiFi throughput (potential cause of choppy video playback)
- [fixed] Disney app crashing (more info here)
- [fixed] Speakers continuing to play while headphones are plugged in
- [fixed] Cannot switch wifi on after storage encryption enabled
- [hold] Bluetooth not working properly - can't see issue here
- [fixed] Magisk update by app
- [fixed] Storage permission issues (cause of some apps crashing)
- [done] Upstreamed kernel
- [todo] TWRP: USB-OTG not working
- [fixed] USB-OTG Ethernet
- [fixed] TWRP: MTP access
- [todo] Voice assist MIC not working
- [done] Added android.hardware.opengles.aep.xml permissions
- [fixed] LiveDisplay not working
- [fixed] Backlight HAL Errors
- [todo] Shutdown after entering sleep mode (suspect cpu/gpu coming up in the wrong state -> overheating)
- [todo] Gapps > pico causing not enough space error
- [todo] Youtube black screen with audio
- [todo] Mirrorcast not working
- [todo] Multi-user not working
- [todo] Navbar problem when keyboard is in horizontal mode
- [todo] Playing videos over SMB failure after 30 min (more info here)
- [todo] Can't connect to hidden WiFi networks
- [todo] Lego app not working (more info here)
- [todo] Cameras not working (more info here)
- [todo] SELinux
- [todo] Intermittent high idle cpu usage
- [todo] Investigate L1 widevine support (L3 currently)
- [todo] Pass safetynet
- [todo] Device build fingerprinting
- [todo] Enable zram?
- [todo] Device encryption (TWRP)
- [todo] Battery idle mode
- [todo] Offline charging mode
- [todo] Low speaker volume
- [todo] Thermal Shutoff, overheating
- [todo] System partition needs to be increased in size to accomodate gapps
New Build is up
12 February 2021
- Initial Release
- Post #2 contains change log
- Post #3 contains task list
- Clean installation is required
Thank you for your great work! Can´t wait to try the new rom!
Just a few questions on build 12.february.2021:
DRM not working -> So netflix, amazon prime etc. isn´t working yet?
clean install required -> coming from lineage 12, factory reset and flashing afterwards will work? Or do i have to wipe anything specific?
Cameras not working -> both of them ? Or maybe just camcorder like in the early versions of your Los12?
Wired headphones not working -> i guess the headphone fix from previous versions (Los-12,Los-14) does +not+ work on Lineage 16?
cochonez1312 said:
Thank you for your great work! Can´t wait to try the new rom!
Just a few questions on build 12.february.2021:
DRM not working -> So netflix, amazon prime etc. isn´t working yet?
clean install required -> coming from lineage 12, factory reset and flashing afterwards will work? Or do i have to wipe anything specific?
Cameras not working -> both of them ? Or maybe just camcorder like in the early versions of your Los12?
Wired headphones not working -> i guess the headphone fix from previous versions (Los-12,Los-14) does +not+ work on Lineage 16?
Click to expand...
Click to collapse
Try netflix and amazon and let me know if anything needs looking into, I have started a tasklist so we can add items there.
Factory reset should suffice for clean installation.
Cameras not working at all, more to come on this. I understand why they are not working and it's not great news I know. I'll do a more detailed post on this.
The headphone fix from cm-14.1 might work or be adaptable to work on this rom. I am looking into a permanent solution for this.
I have faced these issues so far
1) Directly after first boot, i get the error message "Your device encountered a problem. Please contact the manufacturer". Anyways, I can proceed after tapping on OK.
2) I can only flash pico Gapps, any package larger than that throw error 70 (Insufficient system space). In older builds, i was able to flash the nano package. The system partition (1.5 GB) should be large enough to fit Gapps packages larger than pico.
3) The start assistant prompts me to insert a SIM card, although this device does not have a SIM card slot.
4) The three softbuttons are broken, as shown in the picture
BeniS98 said:
I have faced these issues so far
1) Directly after first boot, i get the error message "Your device encountered a problem. Please contact the manufacturer". Anyways, I can proceed after tapping on OK.
2) I can only flash pico Gapps, any package larger than that throw error 70 (Insufficient system space). In older builds, i was able to flash the nano package. The system partition (1.5 GB) should be large enough to fit Gapps packages larger than pico.
3) The start assistant prompts me to insert a SIM card, although this device does not have a SIM card slot.
4) The three softbuttons are broken, as shown in the picture
Click to expand...
Click to collapse
Point 1: I forgot to mention this initial message after boot. This is due to fixing the persistent and repeated camera hal crash and the way in which I had to stop that from happening, hopefully as a temporary measure. I'll add this to the OP so everyone is aware.
Point 2 and 3: I'll add to the list
Point 4: already on the list todo
A few more issues:
1) HD videos in Youtube app are not working. The video either stops or i'm just getting a blackscreen. 480p works.
2) The graphics is not very fluent and a bit laggy, especially when opening apps and scrolling within them. It seems that there's no graphics acceleration.
@ggow is playready crashing (DRM)? If so try to debug the crash with https://github.com/douglas-developm...987d31da8cda42c03b53fb988c18d77f3e297fffd16c4
As for the graphic glitches try adding:
Code:
PRODUCT_PROPERTY_OVERRIDES += \
debug.hwui.renderer=opengl \
debug.hwui.use_partial_updates=false \
debug.sf.disable_backpressure=1 \
debug.sf.latch_unsignaled=1 \
persist.sys.display.clearMotion=1
That fixed Graphic Glitches in 16.0 for my MT8163 tablet.
*****in danks ggow
Lineage 16 = Android 9 !!
OMG, never ever expected to see this on a 7th Gen HD10
Big thanks to ggow for bringing new life to our old "crap". The tablet isn't bad at all, so definitely worth to receive an update. Have to have a drink first to celebrate this, maybe will try the update next week. (I'm still on Amazon stock version, so I'll have to unlock first)
@ggow I may have found some useful information regarding the camera. While exploring why SuperSU wasn't working, I unexpectedly came across some logs. I did not save them, but I'm still trying to fix supersu and will grab them the next time I'm attempting a fix. It might be the smoking gun I'm not sure though.
In regards to supersu, I have figured out why it will not hold root access. For some reason it fails to obtain a root user account.
Code:
Error stderr: null, stdout: null, exit_value: 1
according to root checker, that is the only issue now. I have managed, I think, to rewrite or remove the scripts or lines of script in the files that lineage superuser uses. I'm not sure why it's doing this though. Flashing in twrp just causes a neverending boot animation. @ggow that's where I came across the camera logs, because after rebooting from flashing, I still get an adb connection so I ran a logcat, but aside from the camera, I didn't find anything useful. I made sure the files have owner root:root. I do know KingoRoot doesn't have an issue rooting. So the investigation continues.
Why are we pushing SuperSU? That's been deprecated and I've used Magisk on 12.1 and 14.1 successfully.
for the 11 thousandth time dragon supersu is DEAD stop using it use magisk in core only mode if you need minimal root handling stop pinging ggow because you refuse to join us in the year 2021 and use magisk like everybody else on xda
DragonFire1024 said:
I think the lack of space for gapps has to do with mounts. It sems things are confused to an extent because technically nothing is where it should be. For example, on the lin14 rom, SuperSU won't work and that's because it can't find the boot.img (it's looking in the spot where the img was prior to the unlock hack). I don't know why it won't work as a system install though.
I got init.d to finally work (lineage uses their own so you have to write a script in /system/etc/init and modify a line in init.cm.rc (in root directory) because lineage disables androids init.d I think that's where some of the issues are and part of why SuperSU doesn't work (superuser.rc).
Click to expand...
Click to collapse
the issue for gapps is the system partition size after installing los 16, is set incorrectly, not a mounting issue. supersu dont work because its not compatible and wont be, use magisk. the camera dont work due to a lack of proper drivers not to mention the coding is completly missing from 14.1 and 16 so dont bother trying to fix it yourself unless your compiling a new rom. this is just the first release and will get better in time. it boots and thats a start.
Understanding the Camera Issue:
@daniel_hk made a good post on understanding this:
REF: https://forum.xda-developers.com/t/rom-7-1-2_r36-27jan2018-lineageos-14-1-custom-roms.3513466/
Relevant Extract of the information
III. The Camera
After my first ROM was out, the most eye catching in the log would be the stack corruption in libcam.halsensor.so.
Code:
11-24 21:53:55.967 490 490 F DEBUG : #08 pc 00017459 /system/lib/libcam.halsensor.so (_ZN12ImgSensorDrv13getResolutionEPP34ACDK_SENSOR_RESOLUTION_INFO_STRUCT+60)
After study the source for mt6735, I found it was called within the blob libcam.halsensor.so. In the function ImgSensorDrv::getResolution(), an ioctl() call was passed to the kernel. I was thinking it was caused by user space data handling in the kernel. After a series of trials and dumping, I remarked that part of code from the kernel. The crash persisted. That means it was from the blob itself. I tried a shim library to replace the function ImgSensorDrv::getResolution() but the result is the same. That means the callee was responsible.
After some digging, I was pretty sure it was caused by the alignment (address sanitize) of struct addresses. The latest blob from Lenovo dev.1631 (also the latest for mt6752 devices) were built with gcc 4.9 Clang 3.6. Nougat now use Clang 3.8 by default. Those blob already have alignment support in Clang 3.6 might have issues with the new Clang 3.8.
What is address alignment? In short, a 32 bit processor can handle 32 bit at a time. It would be a easier for the register to locate memories in 32 bits (4 bytes) cells (aligned). If the head or tail for a block of memory is not aligned, extra code would required to separately handle those loose ends. The new clang compiler would fill leading bytes with its own algorithm to make the pointer or variable aligned. Why is ImgSensorDrv::getResolution() being "affected"? The argument of it is a pointer to ACDK_SENSOR_RESOLUTION_INFO_STRUCT. Its definition can be found in the kernel. It is a struct of an array of pointers to another struct. The source from Mediatek use direct reference to the address of struct variables all the time. This is inappropriate in sense of address alignment. Early compilers didn't handle alignments and won't have problem with that. Newer compiler would use its own algorithm to align the structs and pointers. I guess Clang 3.6 didn't handle the above complex struct as argument well. Nougat linker and loader are all built with Clang 3.8. Local variables are allocated at load time which might be handled differently. Thus a call to ImgSensorDrv::getResolution() would cause the stack corruption.
** Those interested may read this article for detail. **
1. Work around
Using older blobs built by gcc 4.8 or earlier might work. Jiayu S3's AOSP were using those old blobs. I'm new to K3-note. I don't think I have the patience and experience to test all the existing blobs. That's the main reason I uploaded the last two test ROM. Trying blobs and hoping some combination would work is passive. Stlport is also obsolete for some time now. I rather deal with the problem directly.
2. The solution
Without the source, building the whole blob is impossible. Even if we have the source from other devices, those custom parameters are unique to each image sensor. It's impossible to guess or back engineer...
If we can change the way ImgSensorDrv::getResolution() is being called or didn't touch the argument within the function. It would avoid the crash. Unfortunately, the function need to fill a local struct within the ImgSensorDrv class. That means it is not seen outside ImgSensorDrv. The only way is to replace the whole ImgSensorDrv class. Fortunately, it is self contained. We can write a wrapper to replace the ImgSensorDrv class only. The source from mt6735 or mt6595 are a bit different and obviously can't be used directly. Most of the struct can be cross referenced to the kernel source. There are two local sturct left unknown. One is for the commands sent to the kernel. The other is some info. collected from the kernel.
With the wrapper, the crash was gone but still no preview. I wrote a test HAL to dump the values in stock ROM. Guessing the values against the names was not a decent job. Fortunately, there were only a few differences. After nights of trial and error, I finally pulled everything together. Camera is working now! Video recording is still not working. Seems codec related. Some say it's not a problem "again". Hoping there will be some real solutions and helps soon...
ggow said:
Understanding the Camera Issue:
@daniel_hk made a good post on understanding this:
REF: https://forum.xda-developers.com/t/rom-7-1-2_r36-27jan2018-lineageos-14-1-custom-roms.3513466/
Relevant Extract of the information
III. The Camera
After my first ROM was out, the most eye catching in the log would be the stack corruption in libcam.halsensor.so.
Code:
11-24 21:53:55.967 490 490 F DEBUG : #08 pc 00017459 /system/lib/libcam.halsensor.so (_ZN12ImgSensorDrv13getResolutionEPP34ACDK_SENSOR_RESOLUTION_INFO_STRUCT+60)
After study the source for mt6735, I found it was called within the blob libcam.halsensor.so. In the function ImgSensorDrv::getResolution(), an ioctl() call was passed to the kernel. I was thinking it was caused by user space data handling in the kernel. After a series of trials and dumping, I remarked that part of code from the kernel. The crash persisted. That means it was from the blob itself. I tried a shim library to replace the function ImgSensorDrv::getResolution() but the result is the same. That means the callee was responsible.
After some digging, I was pretty sure it was caused by the alignment (address sanitize) of struct addresses. The latest blob from Lenovo dev.1631 (also the latest for mt6752 devices) were built with gcc 4.9 Clang 3.6. Nougat now use Clang 3.8 by default. Those blob already have alignment support in Clang 3.6 might have issues with the new Clang 3.8.
What is address alignment? In short, a 32 bit processor can handle 32 bit at a time. It would be a easier for the register to locate memories in 32 bits (4 bytes) cells (aligned). If the head or tail for a block of memory is not aligned, extra code would required to separately handle those loose ends. The new clang compiler would fill leading bytes with its own algorithm to make the pointer or variable aligned. Why is ImgSensorDrv::getResolution() being "affected"? The argument of it is a pointer to ACDK_SENSOR_RESOLUTION_INFO_STRUCT. Its definition can be found in the kernel. It is a struct of an array of pointers to another struct. The source from Mediatek use direct reference to the address of struct variables all the time. This is inappropriate in sense of address alignment. Early compilers didn't handle alignments and won't have problem with that. Newer compiler would use its own algorithm to align the structs and pointers. I guess Clang 3.6 didn't handle the above complex struct as argument well. Nougat linker and loader are all built with Clang 3.8. Local variables are allocated at load time which might be handled differently. Thus a call to ImgSensorDrv::getResolution() would cause the stack corruption.
** Those interested may read this article for detail. **
1. Work around
Using older blobs built by gcc 4.8 or earlier might work. Jiayu S3's AOSP were using those old blobs. I'm new to K3-note. I don't think I have the patience and experience to test all the existing blobs. That's the main reason I uploaded the last two test ROM. Trying blobs and hoping some combination would work is passive. Stlport is also obsolete for some time now. I rather deal with the problem directly.
2. The solution
Without the source, building the whole blob is impossible. Even if we have the source from other devices, those custom parameters are unique to each image sensor. It's impossible to guess or back engineer...
If we can change the way ImgSensorDrv::getResolution() is being called or didn't touch the argument within the function. It would avoid the crash. Unfortunately, the function need to fill a local struct within the ImgSensorDrv class. That means it is not seen outside ImgSensorDrv. The only way is to replace the whole ImgSensorDrv class. Fortunately, it is self contained. We can write a wrapper to replace the ImgSensorDrv class only. The source from mt6735 or mt6595 are a bit different and obviously can't be used directly. Most of the struct can be cross referenced to the kernel source. There are two local sturct left unknown. One is for the commands sent to the kernel. The other is some info. collected from the kernel.
With the wrapper, the crash was gone but still no preview. I wrote a test HAL to dump the values in stock ROM. Guessing the values against the names was not a decent job. Fortunately, there were only a few differences. After nights of trial and error, I finally pulled everything together. Camera is working now! Video recording is still not working. Seems codec related. Some say it's not a problem "again". Hoping there will be some real solutions and helps soon...
Click to expand...
Click to collapse
Yeah after you fix that you'll get mediaserver libc fatal crashes as I do in douglas.
MOD ACTION:
Thread cleaned.
Friends, please do not lose the focus of the thread. Discussions about other issues and multiple persons posting multiple ways of solving such issues etc make the thread cluttered.
The OP is there and answering queries.
Thank you for understanding!
ggow said:
🛠 Worklist / Tasks
...
- [todo] Wired headphones not working
Click to expand...
Click to collapse
thank you, @ggow, for coming back to Fire HD 10!!! ur recent works on HDX makes me thinking about it but its still >5yo tab.
for the wired headset, there is a fix available already: https://forum.xda-developers.com/t/...4-1-26-sep-2019.3973703/page-29#post-81763775
i have used it on both HD8 and HD10. hope it saves u some work!

Categories

Resources