Related
Unfortunately Niantic contacted me to abort this mod. More info: http://forum.xda-developers.com/showthread.php?p=42027875#post42027875
TL;DR version: I have created an Ingress app mod, it is awesome and will make you coffee. You can download it below.
OVERVIEW
Hi,
after more than a 2 years of inactivity in the modding field I'm back with a new mod. This time it's Ingress app. I think and hope it'll be much greater and more advanced than Google Maps mod. There are a lot of things to improve and I think some of them won't be ever added by Niantic, so it's a good idea to mod this app.
First I want to clarify I will never add any kind of cheating to this mod. My goal is to make Ingress game more enjoyable, not less. Questions about location faking, items cloning, etc. are not welcome here. I'm serious. Still if you think this mod is a bad thing and/or if you're from Niantic then please read a section about my motivations below and feel free to ask, suggest or criticize. I make it for Ingress players and I'm very interested in their opinions.
DOWNLOAD
First: you do this at your own risk! I'm sure it won't brick your phone, but remember you may be banned by Niantic. My mod doesn't do any kind of cheating behavior, it doesn't do anything that original app doesn't do, but there is always the risk.
Also if you downloaded apk from different site then check sha1 of this file to make sure it's ok. Unfortunately such mods create good opportunity to inject some malware, because users search for an application in the internet and anyone can redistribute it. I sign this app with my own keys, so if you have installed my mod earlier, now you have downloaded newer version from the internet and Android says it has different certificates then don't install it!
"Mute" variant has all sounds removed, so apk is ~2.5 times smaller and most likely it uses less memory.
ingress-1.26.1-broot-0.2.0-mute.apk
SHA1: 976342081c963998f8a6e56b735fe97581ab335f
ingress-1.26.1-broot-0.2.0.apk
SHA1: dce5399802c8f11287a7cf399c1bb5265f8251e2
Older versions:
ingress-1.26.0-broot-0.1.0.apk
SHA1: ea95d8e36324c6c4a175e0cf254cd65a4797049f
If you have original Ingress app installed then you have to uninstall it first. Same if you want to install original app over a modded one.
FEATURES / TODO LIST
I know simplifying and automation of too many things may be considered cheating, so I have divided all features into several categories: from the most "innocent" ones to some smart assistants. As I stated above, if you think some of them are just too much then feel free to write about it. For me features up to 3. category are ok. Category 4. may be controversial and I'm not sure if I want to implement it. I'm glad for your opinions. Some features (e.g. 2.11., 3.7.) aren't actually related to category descriptions, but I "feel" them as category 2., 3., etc.
I don't want to force people to use every modification, I'll try to make them all opt-in, so modded app will work exactly as the original one until you change this in the mod menu. If you see e.g. "Fullscreen" feature below then read it as "An option to enable fullscreen mode".
Below is just a list of features to make it clear. Descriptions, notes, statuses, implementation proposals, etc. are here.
Legend:
green - completed
orange - not sure about it
red - rejected
black - waiting / todo
1. Changes strictly technical and/or 4fun - they don't affect gameplay at all:
UI for small screens, but this is never ending task
Disable some graphics effects to make it less GPU consuming:
portal particles
xm particles
Fullscreen.
Remove globe intro.
Change colors of factions.
Exit confirmation dialog - it's good for low memory devices.
Keep sceen on.
Disable vibrator.
2. UI changes: new screens, shortcuts, etc. - it makes things easier, but it won't do anything for you:
New screen with mod settings, credits, etc.
New inventory screen with items presented as a clear table.
Number of all items in the inventory - it's very important because of items limit.
New portal keys screen.
Remove original items screen.
Shortcuts to various actions from the main screen.
Modify chat to make it easier to read and harder to accidentally send private message to public channel.
Link to portals from system messages in the chat.
Real-time distance to portal on details and upgrade screen - its necessity is obvious to anyone who played Ingress
Additional info about the portals directly on the map screen.
Logging and statistics.
Circles around the player similar to one at 40m - just for better feeling of the distance.
Number of keys on portal info, upgrade and linking screens.
Config: update interval.
Config: maximum scanner zoom out.
Deploy button uses highest available resonator, not lowest.
3. Automation of some more complicated or repetitive tasks - it delegates multi-clicking to the squad of highly trained monkeys, but it won't think for you:
Dropping/recycling multiple items of the same type at once.
Firing multiple XMP
Picking up all items in the range - with above it's very easy to give items to other agents.
Hacking all portals in range - not very useful because of timers
Auto deploy resonators using a template.
Templates specific to a portal.
Other agents presence detector.
4. Smart assistants:
Hacking timers for each portal: both 5m and 4h ones.
Auto hacking portals in range while moving (using timers).
Smart auto-deploy.
XMP damage assistant.
Linking assistant for optimum CFs in a specific area.
Continuous linking assistant.
Bugs:
The maps are gray when submitting new portals or reporting bad ones.
NEWS
v1.26.1-broot-0.2.0 has been released!
2013.05.26
Updated Ingress to 1.26.1.
Added layouts for small screens: Eugene's 1.26.0.20130526
Added mute version - for smaller size and likely smaller memory usage.
Added fullscreen mode.
Added option to disable portal particles and xm particles.
Added restart button - it's useful for reloading UI changes (fullscreen mode, layouts, etc.).
Fixed gray maps problem.
v1.26.0-broot-0.1.0 has been released!
2013.05.22
Initial version.
New screen with mod settings, credits, etc.
New inventory screen with items presented as a clear table.
Number of all items in the inventory.
CREDITS
Eugene Kartashov - layouts for small screens.
Of course Niantic Project for this awesome game!
Thanks!
FEATURES DESCRIPTION AND NOTES
1.5. Change colors of factions.
I did this before and it's kind of cool: https://plus.google.com/u/0/106080343103638200670/posts/a9krpWApjz5
2.4. New portal keys screen.
I have some ideas, e.g.:
keys grouping/tagging
group/tag keys manually or automatically by their location, name, etc.
filters and sorting by: name, distance, level, owner, etc.
, but I think Niantic want to improve keys management, so I wait for their move.
2.5. Remove original items screen.
For now even if you prefer new items screen the original one is still needed to access portal keys. We can wait for 2.4. or at least add an option to limit original items screen to portal keys and rename it accordingly.
2.6. Shortcuts to various actions from the main screen.
I think it's one of the most important additions, so it has to be well designed. I see it as a HUD-like buttons similar to "FIRE XMP" when you long-press on a map, but much smaller, probably square with icons. Things to consider:
toolbar at the top or the bottom of the screen - I think it's better than left/right
fixed with 5-6 icons (4" screen) or scrolling horizontally
fixed icons or customize them and their positions
an option to open a full semi-transparent menu with all available actions
Actions could be:
fire last XMP
fire highest/lowest XMP
fire XMP of specific level
same for power cubes
hack portal - click button then click portal. This way you don't have to enter portal details screen which is faster and you don't lose the map.
link portal - same as above
set target? It's in a long-press menu already, but we can add it here for consistency and maybe to remove long-press menu.
actions from other mod additions
2.7. Modify chat to make it easier to read and harder to accidentally send private message to the public channel.
Current problems are:
is there anyone who has never sent a private message to the public channel? Is there anyone who did this only once or twice?
it's hard to read conversations between agents, especially public ones, because they're mixed up with system messages
I was considering adding some kind of filters to select which types of messages you want to see, but it doesn't fix first problem. Now I think of something else - 4 tabs/channels:
faction - as normal
public - public conversation only, so system messages won't disturb you and you don't accidentally respond [secure] messages
system - you can't send a message here
all - all above, so it's similar to current "All", but you can't send a message here - you have to choose proper channel intentionally. It can have additional filters to select messages to show.
This feature may be hard to do or even impossible, because most probably Ingress server doesn't have API to filter messages as above. Of course I can read "All" channel and filter it on the app side, but it may not be that good.
Also I won't be surprised if Niantic itself will redesign chat in the near future, because it's definitely wrong.
2.10. Additional info about the portals directly on the map screen.
E.g.: level, if you have a key (how many?), etc. It could be customizable and there could be a shortcut to toggle showing this info.
2.11. Logging and statistics.
I love this one I can log all kind of actions like: hacking, attacking, dropping and picking up items and XM, deploying resonators and portal mods, adding custom "snapshot points" to organize above, etc. and then create a lot of various statistics:
how many hacks did you do (faction, enemy, neutral) today, in last week or month?
how many items did you get from these hacks?
what were the levels of hacked portals and items?
how many XM did you get?
how did you spend this XM?
how many resonators did you deploy and what were their levels?
how many resonators did you destroy, how many portals did you capture?
how many links and CFs did you create/destroy, what were their MU values?
which portals do you hack/attack/build most often?
how much time you was playing?
what items did you spend to build up a farm and what items did you get from it?
Statistics could be tabular, graph, pie and very flexible. I'm also considering two things:
sending some of above statistics to my server to create global statistics for all users. It would let us do some research, e.g.: what is the probability to get L7 item from L6 portal, etc. Of course sending these statistics would be fully optional, you would have to enable it by yourself.
optional paid application to read these statistics - in addition to the free one. It could let you remove ads or just say "thank you" (i.e. it would be the same as free one), but I don't want to piss off someone in Niantic. I think it would be fair, because statistics app would be quite complicated and time consuming and there will be free version, but you never know what's the opinion of other people.
What do you guys think about above two things?
3.5. Auto deploy resonators using a template.
Agent can configure multiple templates and choose one of them when doing an auto-deploy. Template could be defined by:
its name
minimum and maximum level for each resonator
prefer lower/higher level for each resonator
Examples:
"Lowest portal" - each resonator set to L1-L8 and prefer lower for all - it's the same as clicking "deploy" 8 times.
"Highest portal" - L1-L8 and prefer higher for all
"Highest <L7" - L1-L6, prefer higher for all
"Standard L4" - L1-L6, L1-L4, L1-L5, L1-L4, L1-L6, L1-L4, L1-L5, L1-L4, prefer higher for all - it's standard 4xL4 2xL5 2xL6 and it'll use lower resonators if you don't have all of them
another "Standard L4" - same as above, but L6-L6, L5-L5 and L4-L4 - it won't automatically downgrade resonators, but warn you about the lack of resonators
Also some templates could be predefined by default.
It won't work well with existing resonators, it won't choose optimal way to upgrade them, but this is how it should be - it's just: "do it using a template", not: "Calculate optimal situation".
3.6. Templates specific to a portal.
Extension to above: sometimes you know that e.g. NE resonator of some portal is harder to destroy, so you want to place highest resonator there. You can create a template specific to a portal, so it won't mess up main list of templates and it will be auto selected when doing auto deploy for this portal.
3.7. Other agents presence detector.
It read system messages log to find the last actions and positions of other agents (actually positions of portals they've built/attacked). This information could be used to e.g.:
show last position and action of specific agent
show a list of nearby agents: allied or enemy
alert if some other agent will show up below specific distance from you
4.3. Smart auto-deploy.
E.g.:
calculate max level of a portal that you can build alone - depending on your inventory and already deployed resonators
deploy minimum number and optimum resonators to get to specific portal level
prioritize excess resonators and save scarce ones
deploy high and low resonators evenly to make attacking a little harder
if upgrading existent resonators, prefer to upgrade ones with low XM
4.4. XMP damage assistant.
E.g.:
approximate damage dealt using specific XMP in current position
calculate the best spot to fire XMP of some level
4.5. Linking assistant for optimum CFs in a specific area.
You select a group of nearby portals, assistant build links and guide you through place to get as many CFs and AP as possible.
4.6. Continuous linking assistant.
You see an icon near the portal if it's possible to create a link(s) from it to create a CF. It let you create this CF with few clicks.
It may be not possible to do, because it would have to scan big area to know if there are a link between remote portals.
MOTIVATIONS AND FEW WORDS TO NIANTIC
As I stated above my goal is to make Ingress game better and more enjoyable for people. If you think it's evil then please read my motivations and explanation below:
There aren't and never will be features for cheating: location faking, sending same action several times, automatic passcode submitter, etc.
As I said above I have divided mod features into categories of different "dirtness level". I focus on "clean" features and I'm open to suggestions or criticism from players or even from Niantic itself.
I don't share my code and I obfuscate it to not make Ingress easier to hack by other people.
A whole game and world of Ingress is about hacking and reading between lines. I think my mod fits this world perfectly. There are some people who leak Ingress app from NIA and there is some guy somewhere in the internet who tries to get even more from it. It makes perfect sense
I think there are many good features that will be never added by Niantic. I see several reasons: statistics won't be added because it doesn't make much sense for storyline. Why NIA would add such feature? Intro skipping or new items screen won't be added because these features prioritize quick access over a nice look. Niantic can't do the same because Ingress would look like a game for nerds. But there are many people who don't care about the look because... they're nerds ;-P
And finally: I won't fight Niantic, so if they don't like my mod and decide to react then there will be no mod anymore.
If you're from Niantic then please think what is the best for Ingress users. If you don't like one or two of my features then I'll remove them and keep the valuable ones. If you still think this mod isn't good and it's a matter of time before you react then please do it sooner, not later. Mod won't be very popular yet, Ingress players won't be disappointed so much and I won't lose a lot of my time
FINAL NOTES FOR USERS
Once more: feel free to suggest new features or changes to existent ones. You can also criticize a whole mod idea. I want to know what do you guys think about it.
If you get a force close then post a logcat and mod version here.
If something doesn't look ok then post a screenshot. I have a 320x480 and 480x800 devices, but I can't test it on 240x320 and >480x800 resolutions.
You can also report language faults in the app or even here. English isn't my native and I often write something that doesn't seem natural even to me. I would be happy if someone would suggest better names or descriptions for configuration options, etc.
Of course you can redistribute this mod, but please don't do that if you don't have a good reason. I just want to know how popular it is. Also if you redistribute it then please add a link to this thread to give users a full context.
If you want to make a donation then link is in my signature, but remember that this mod may be killed by Niantic at any time.
[RESERVED]
[RESERVED2]
Very amazing
I'm gonna try it out on a new account just to be safe, but I love the work and holy cow you did a lot and I can't believe it.
Niantic better sit down and learn some must needed features and options. The globe one for sure
Sent from my MI 2 using Tapatalk 2
Keep up outstanding work. I just installed this mod and I confirm that it works flawless.
I'm looking forward to future updates.
iBotPeaches: I did a lot? But you have noticed that above features list is mostly a TODO and for now there are just new items screen and intro skipping? I'm not sure if this is clear from above posts.
I wanted to release it early to get some ideas from people.... or be banned
What about a nosound version? It reduces the app size and removes the annoying sounds for people that are tired of hearing those squeaks
Please find attached a nosound version prototype.
it will be possible to have screen: "exit. are you sure?" when accidentally using back button?
Brut.all said:
iBotPeaches: I did a lot? But you have noticed that above features list is mostly a TODO and for now there are just new items screen and intro skipping? I'm not sure if this is clear from above posts.
I wanted to release it early to get some ideas from people.... or be banned
Click to expand...
Click to collapse
Ahh, I thought you did all that stuff that was bolded in the features list Guess I didn't read it well enough.
Hi, on mine HTC Desire it crash suddnly..
EDIT: Reinstalled, work like a charm..
One thing possibly worth pointing out: I think this version will not handle the new push messages, as I believe those are restricted by the certificate used to sign the app. Are you able to confirm this?
Otherwise, very cool work
phyreskull said:
One thing possibly worth pointing out: I think this version will not handle the new push messages, as I believe those are restricted by the certificate used to sign the app. Are you able to confirm this?
Otherwise, very cool work
Click to expand...
Click to collapse
They do work for me, at least the "@" notifications
Needs further testing.
Jackos said:
What about a nosound version? It reduces the app size and removes the annoying sounds for people that are tired of hearing those squeaks
Click to expand...
Click to collapse
Usually more variants = more problems, but I think mute version may be worth it. It's almost 3 times smaller and space is crucial on many devices. It might also use less RAM and start up faster, because sfx are usually preloaded into memory. I'll do some benchmarks.
ataru said:
it will be possible to have screen: "exit. are you sure?" when accidentally using back button?
Click to expand...
Click to collapse
Sure, but what for? If you accidentally exit application, you can return to it in no time.
phyreskull said:
One thing possibly worth pointing out: I think this version will not handle the new push messages, as I believe those are restricted by the certificate used to sign the app. Are you able to confirm this?
Click to expand...
Click to collapse
I'm not sure about it. I got comm notification today, but I was using Ingress just moments earlier, so it might be background service, not push. We'll see.
Brut.all said:
Usually more variants = more problems, but I think mute version may be worth it. It's almost 3 times smaller and space is crucial on many devices. It might also use less RAM and start up faster, because sfx are usually preloaded into memory. I'll do some benchmarks.
Click to expand...
Click to collapse
Exactly my point of view
However it's a pity that the app uses this same amount of RAM. It might get better if you remove corresponding baksmali lines, I just removed the sound files.
Brut.all said:
Sure, but what for? If you accidentally exit application, you can return to it in no time.
Click to expand...
Click to collapse
I guess it's because on low ram devices the app gets closed instantly. So a back fail-safe button would save him the app loading time.
Impressions and suggestions
Nice mod!
I am an addicted Ingress player and I really appreciate your work!
The new item tab is awesome!!
I only want you to know that there is a G+ user that is modding Ingress too:
Have a look here.
He did a version even for 240x320 screen.
Maybe you can have a look at his work
I hope you can keep this up to date
Works perfectly!
I'll keep an eye on that, your features list sounds extremely promising!
ingress-1.26.1-broot-dev1.apk
It's muted and should work on all screen sizes. Layouts for 240x320 and 320x480 were created by Eugene Kartashov (thanks!), but I have integrated them into single universal apk. It's just ~0.5MB larger than Eugene's separate apks. I can't test it on 240x320 because I don't have such device. Please confirm if it's ok or not. I'll add fullscreen feature before 0.2.0 release, so upgrade button won't overflow on some devices.
Also I can confirm sounds are loaded on demand, they aren't preloaded, so muted version shouldn't boot up faster. It should take less memory though.
Is there anyone who miss these sounds? As I said I would like to avoid fragmentation and I think muted version is just better.
And if you have 240x320 device then please tell me if new items screen looks ok, especially if you have 100+ items of one type. 320x480 seems to be ok.
Hello there, I figured since we can't unlock the boot loader we need to take every advantage we can for speed. First, even though it's a low resource launcher, I replaced it was apus and have had great results on open ram.
2. There are many services you can disable from Motorola and Verizon without negative effects. This can be done through the running processes menu in apps,I recommend disabling first then uninstalling if possible. I wish I had a list of the ones I disabled but I wasn't taking notes at the time.
3. If the moto notification tool is still running after installing apus them disable it in settings, even with the Google launcher I recommend doing this.
4. Enable developer options, and move the animations to .5 or off.
5. Reboot to recycle your ram and see how your experience is. Hope this helps someone, I am much happier with the performance now.
These are my disabled services, + Verizon navigator
Free RAM during normal usage to compare
Need list for disabled app ..
Hey guys, G4 is a great device, right? But it is relatively weak in its software department. So I am creating this thread so that you can share yr wish which should be in G4 & I will try to gather & post them on a regular basis. Someday some devs may port or create those for us, right? Nothing to lose. So here's the TOP FEATURES I & others would love to have in G4:
1. Root & unlocked bootloader obviously
2. Swipe to sleep on nav bar
3. Integrated theme engine
4. HQ FB profile pictures sync
5. Long press back button to kill app.
6. Bluetooth audio volume fix
7. Overall RAM optimization
Dont know about top 5 but root is a must, themes would be really nice, better battery saver options really big plus and long press app kill would be nice. One other would be just general optimisation of apps and batterylife and a fix for that horrible bluetooth audio. There are now too many stupid mistakes and hindsights.
regarding back to kill...
does the stock rom you're running allow enabling of developer settings via multi clicking the build date? or is that only on custom roms? you can enable back to kill in there if you can access it.
yeah, i haven't run any stock software for years so i don't even know if dev settings is accessible. ?
VR32 said:
regarding back to kill...
does the stock rom you're running allow enabling of developer settings via multi clicking the build date? or is that only on custom roms? you can enable back to kill in there if you can access it.
yeah, i haven't run any stock software for years so i don't even know if dev settings is accessible. ?
Click to expand...
Click to collapse
I am still waiting for the root & custom recovery, let alone the custom Roms. There is no option in stock lollipop ROMs to kill app by long pressing back button.
This thread is for the fortunate subset of 5th Gen Fire devices that are rooted and rocking a custom ROM. It should also work on rooted FireOS (5.3.1 and below) that have both ads and OTA updates blocked.
There have been numerous posts regarding uneven performance while multitasking along with sluggish response after waking the device from a long slumber. Most recognize this is due to excessive swapping associated with limited user addressable RAM. While there are a number of incremental 'tweaks' that can marginally improve this behavior my objective was to realize a more substantial improvement with minimal effort, knob turning and side effects. To date I have realized the benefit (minimal lag; responsiveness approaching devices with twice the RAM; woohoo!) but still working on the automation that will make it largely transparent. Lacking the time to work on the latter I thought it best to toss out the high level config and let others, if interested, work through both validation and implementation details.
As an aside, I have used the same technique on a 2nd gen HD running CM 11 that had been shelved for many months due to the same issues. It now hums along at a respectable pace and is once again a joy to use.
The secret sauce is simple: expand zram space allocation and add a small, secondary swap file in a normally unused location in permanent storage.
Tools (or adb/shell/terminal commands for those with furry chests):
- EX Kernel Manager (EXKM) or other tool/technique that can manage zram parameters (note: I find current builds of Kernel Adiutor too unstable for this work)
- Apps2SD Pro or other tool/technique that can create/manage traditional swap files and swap space priorities
- BusyBox Installer (v1.27.2+) or other tool/technique to insure startup scripts are properly executed
- L Speed (optional) - for ease of implementing a few discretionary performance tweaks
- DiskInfo PRO (optional) - visualize partition utilization
- RAM Truth (optional) - simple app to visualize RAM utilization
Technique (highly abbreviated):
- boot device to rooted ROM; install above tools or equivalents
- use EXKM to resize zram to 128 MB (note: zram must be temporarily disabled)
- use Apps2SD to:
* add a static, 128 MB swap file in the cache partition which remains largely unused with custom ROMs
* important: reassign swap file priorities (button at top right): 0 for the static file; 1 for zram
* increase swappiness to 100 if necessary (EXKM can also be used to set swappiness and other VM parameters)
* verify both swap spaces are enabled via sliders
Note to geeks: I understand how swappiness, vcache pressure and other virtual memory tunings really work; let's not debate that here. Same with the merits of running a static swap file in combination with zram or the 'dangers' of placing that file in the volatile cache partition. We're talking a hand held device with very modest resources...not the server room with a 99.9x SLA. Yes, zswap would be better. However ...
Optional tweaks:
- use EXKM or L Speed to set LMK parameters to: 24, 32, 40, 48, 56, 64
- use EXKM or L Speed to set write deferral (aka 'laptop mode') to 5 sec
- toggle KSM off/on in L Speed (sets performance enhancing parameters)
- with zram disabled enable zram tweak in L Speed which will establish a 96 MB space along with other optimizations; I find the smaller size ideal for my workflow; YMMV zRAM size can be set with EXKM or another kernel manager.
Challenges:
While the options exist none of the tools noted above can reestablish custom zram space or automatically create a static swap file on boot. I believe this is a kernel issue but have not ruled out interference by Lineage 12.1 which is the ROM I have been testing with. Unfortunately, I lack the time (and quite frankly motivation) to toss Nexus or another ROM on to a spare device to verify the culprit. I might do a bit more testing my my HD 7 which uses a different kernel and ROM. --> Turns out an old version of BusyBox was the culprit; updating to 1.27.2 solved the problem allowing the suggested configuration to be automatically reestablished on reboot. I added my favorite BusyBox installer to the prerequisite tools.
Another issue is the potential for maintaining 'stale' annon pages in zram for a period of time but that's a left field item that probably won't effect most users. A quick fix is occasionally swiping away all apps.
Provide discussion/feedback in this thread. I may or may not respond depending on available time. I love a deep dive (shared above) but once the goal has been reached my interests move elsewhere.
Edit: struck-out references to L Speed after developer/maintainer acknowledged "cooperation" with Kingo Root team (borderline malware).
Quick follow-up: I continue to enjoy benefits noted in the OP with a dual cache configuration. Device remains responsive after waking and typically returns to 'full' performance within a few seconds. I can easily switch between a handful of apps (browser, mail, Play Store, XDA labs, etc) with minimal lag and context preservation; no reloading web pages after switching away. No notable impact on battery life. Really no disadvantages at all - at least with my work flows.
Regardless of tuning one has to keep in mind the modest hardware resources on Fire 7s. Load up a game or two or a couple heavy Amazon/Google apps and things go south pretty quick. That said, responsiveness far better than any stock config, even when the device is clearly overburdened.
Another quick note. Simply adding a classic swap file (suggest 128 GB) to the largely unused cache partition can yield a decent improvement in multi-tasking performance without the complexity of tinkering with zRAM. All steps can be accomplished with the free tool Apps2SD or equivalent. Happy to document if there is sufficient interest.
Note: Be sure to change zRAM swap priority to "1" so it receives preferential treatment over the classic swap file. zRAM will almost always be faster than classic swap but there is only so much if it. The swap file will be used once zRAM is fully utilized (not entirely accurate but generally true).
FWIW - depreciated references to L Speed app in OP after developer acknowledged "cooperation" with Kingo Root team. While nefarious behavior is unlikely there are other options that avoid any potential conflict of interest.
Davey126 said:
...
Technique (highly abbreviated):
- boot device to rooted ROM; install above tools or equivalents
- use EXKM to resize zram to 128 MB (note: zram must be temporarily disabled)
- use Apps2SD to:
* add a static, 128 MB swap file in the cache partition which remains largely unused with custom ROMs
* important: reassign swap file priorities (button at top right): 0 for the static file; 1 for zram
* increase swappiness to 100 if necessary (EXKM can also be used to set swappiness and other VM parameters)
* verify both swap spaces are enabled via sliders
Note to geeks: I understand how swappiness, vcache pressure and other virtual memory e)
Click to expand...
Click to collapse
When you say Cache partition for the swap file are you referring to "/cache" or the second partition for app2sd?
rjmxtech said:
When you say Cache partition for the swap file are you referring to "/cache" or the second partition for app2sd?
Click to expand...
Click to collapse
"/cache" partition which resides on faster internal storage. Anything on external storage will be significantly slower due to interface limitations.
@Davey126 it has been about a day or two and I can confirm that by following these instructions it has brought new life into my KFFOWI 5th gen. This paired with some L Speed Tweaks (even though you say not to trust them, I opted to use it for a few performance tweaks) and the Lineage ROM from @ggow makes my user experience on the device quite pleasing.
rjmxtech said:
@Davey126 it has been about a day or two and I can confirm that by following these instructions it has brought new life into my KFFOWI 5th gen. This paired with some L Speed Tweaks (even though you say not to trust them, I opted to use it for a few performance tweaks) and the Lineage ROM from @ggow makes my user experience on the device quite pleasing.
Click to expand...
Click to collapse
Thanks for the feedback.
As for L Speed I don't distrust the current developer/maintainer but no longer feel comfortable providing an implicit endorsement. Who you associate with makes a difference IMHO. Each person needs to make their own call. There is no magic in L Speed; it simply offers a convenient UI to various well publicized system 'tweaks' that can be implemented using other tools/techniques.
Davey126 said:
Optional tweaks:
- use EXKM or L Speed to set LKM parameters to: 24, 32, 40, 48, 56, 64
- use EXKM or L Speed to set write deferral (aka 'laptop mode') to 5 sec
- toggle KSM off/on in L Speed (sets performance enhancing parameters)
- with zram disabled enable zram tweak in L Speed which will establish a 96 MB space along with other optimizations; I find the smaller size ideal for my workflow; YMMV zRAM size can be set with EXKM or another kernel manager.
Click to expand...
Click to collapse
Thanks for the guide, it already seems to have helped a lot with smoothness but I wanted to know how to set these options using EXKM.
I'd never heard of the app before today and I've had a good look through the menus but can't seem to find somewhere to set these values. I'm guessing these are the usage % values used by the CPU governor to jump up and down power states?
NeuromancerInc said:
Thanks for the guide, it already seems to have helped a lot with smoothness but I wanted to know how to set these options using EXKM.
I'd never heard of the app before today and I've had a good look through the menus but can't seem to find somewhere to set these values. I'm guessing these are the usage % values used by the CPU governor to jump up and down power states?
Click to expand...
Click to collapse
No, governor tunning is a different beast not addressed in the OP (although I do that on some higher end devices).
With regard to EXKM:
- LMK values can be set under memory -> low memory killer
- KSM toggle can also be found in the memory section
- it appears laptop mode can not be set in EXKM (not that important)
As an alternative to laptop mode you can twiddle 'dirty ratio' and 'dirty background ratio' in EXKM. Suggest setting to 30 and 15, respectfully.
Edit: you may also want to take a peek at Kernel Adiutor (correct spelling). While I find it a bit flaky it exposes more controls vs EKKM and costs less too.
Davey126 said:
No, governor tunning is a different beast not addressed in the OP (although I do that on some higher end devices).
With regard to EXKM:
- LMK values can be set under memory -> low memory killer
- KSM toggle can also be found in the memory section
- it appears laptop mode can not be set in EXKM (not that important)
As an alternative to laptop mode you can twiddle 'dirty ratio' and 'dirty background ratio' in EXKM. Suggest setting to 30 and 15, respectfully.
Edit: you may also want to take a peek at Kernel Adiutor (correct spelling). While I find it a bit flaky it exposes more controls vs EKKM and costs less too.
Click to expand...
Click to collapse
Ah, LMK, not LKM. Thanks again.
Also, just a small suggestion but wouldn't it be better to remove the references to L-Speed and leave an edit message at the bottom rather than having the red, striked through text in the middle?
NeuromancerInc said:
Ah, LMK, not LKM. Thanks again.
Also, just a small suggestion but wouldn't it be better to remove the references to L-Speed and leave an edit message at the bottom rather than having the red, striked through text in the middle?
Click to expand...
Click to collapse
Thanks for noting LKM/LMK typo in OP - fixed that.
I will likely clean-up the OP at some point as there are other refinements (eg: tweaking dirty ratios) that may prove beneficial to a larger community.
Davey126 said:
Thanks for noting LKM/LMK typo in OP - fixed that.
I will likely clean-up the OP at some point as there are other refinements (eg: tweaking dirty ratios) that may prove beneficial to a larger community.
Click to expand...
Click to collapse
I was wondering what differences need to be made for a 7th gen hd 10. I know this guide is written for a 5th gen (1gig RAM, 8 gig drive), but I have a 7th Gen (2gig RAM, 32GIG drive) with 2gig zram (priority 1) and 4 gig swap on the /data partition (priority 2). What would be the best LMK values? Also, is it ok to have the swap on /data vs /cache (my /cache only has 400mb)?
Thanks for any help!
edit: in the OP, it says to set laptop mode using L-speed, and then L-speed is crossed out (I understood why), but no alternative is listed for doing this. I just wanted to add that you can use kernel adiutor to change laptop mode. It's on virtual memory settings.
mistermojorizin said:
I was wondering what differences need to be made for a 7th gen hd 10. I know this guide is written for a 5th gen (1gig RAM, 8 gig drive), but I have a 7th Gen (2gig RAM, 32GIG drive) with 2gig zram (priority 1) and 4 gig swap on the /data partition (priority 2). What would be the best LMK values? Also, is it ok to have the swap on /data vs /cache (my /cache only has 400mb)?
Thanks for any help!
edit: in the OP, it says to set laptop mode using L-speed, and then L-speed is crossed out (I understood why), but no alternative is listed for doing this. I just wanted to add that you can use kernel adiutor to change laptop mode. It's on virtual memory settings.
Click to expand...
Click to collapse
It appears you have priorities reversed. Higher values receive preference. The magnitude of the difference is irrelevant. zRAM is considerably faster than eMMC based storage; the latter should only be used when zRAM is exhausted or momentarily unavailable for whatever reason.
The container sizes also seem excessive. 2 GB of zRAM effectively leaves no uncompressed memory on a HD 10 which is highly inefficient. I wouldn't go over ¼ available RAM or ~½ GB. Toss in a 500 MB of eMMC based (overflow) swap file and you're good to go. If you regularly use more than 1 GB of swap on a relatively low end Android device then something else is amiss.
I am aware Kernel Adiutor can set laptop mode but did not want to introduce another tool into the mix...especially one that has demonstrated inconsistent behavior. FWIW - recent testing suggests 1-2 sec may be a better choice vs the 5 sec mentioned in the OP as the latter may trigger lockouts during sustained writes (eg: large file download on a fast connection). I currently use 1 sec and happy with the results. I will likely update the OP with this info once satisfied that the benefit is worth the effort.
All things being equal I see no reason to change LMK values suggested in the OP. Especially given the availability of zRAM and swap.
Thanks for these instructions, Davey126!
I just tried this process on my 5th Gen Fire 7" which I recently installed with the LineageOS ROM. I was not familiar with the EX Kernel Manager and Apps2D Pro tools, but it was reasonably clear how to make the settings changes you recommend.
I added the 128Mb swap under /cache and increased the zram swap to 128Mb, setting it to priority 1. Maybe it's my imagination but my device does seem a lot snappier when switching between running applications, and better at returning to previously displayed data in applications instead of reloading pages.
Cheers!
Matrey_Moxley said:
Thanks for these instructions, Davey126!
I just tried this process on my 5th Gen Fire 7" which I recently installed with the LineageOS ROM. I was not familiar with the EX Kernel Manager and Apps2D Pro tools, but it was reasonably clear how to make the settings changes you recommend.
I added the 128Mb swap under /cache and increased the zram swap to 128Mb, setting it to priority 1. Maybe it's my imagination but my device does seem a lot snappier when switching between running applications, and better at returning to previously displayed data in applications instead of reloading pages.
Cheers!
Click to expand...
Click to collapse
Thanks for sharing first impressions. Time will tell if the benefits are durable; certainly have been for me with no adverse side-effects.
Another suggestion to reduce wake lag: install Greenify (or similar tool) and add commonly used apps to the action list even if not flagged as background abusers (you may need to override Greenify's sensible defaults via the gear icon). This prevents multiple apps from becoming simultaneously 'active' on wake which is a huge contributor to lag on lower end devices with limited resources (CPU and RAM). Hibernated apps will launch when needed with minimal delay and NO loss of context. Works a treat.
Be sure to add your favoriate browser, mail, messaging and social media apps to the hibernation list as all like to 'check in' after a long slumber.
Although Greenify can auto-hibernate apps on most devices (works best with Xposed Framework) I use an automated approach that invokes Greenify's widget when the screen goes off. There's still some momentary lag on wake but the device remains responsive which is a huge improvement.
Hi Davey126,
thx for the guide, it seems to work awesome.
However, i have the one problem thats the settings in EXKM regarding to "zRAM Size", "dirty ratio" and "dirty background ratio" are lost after rebooting the device. Is there a way to make the settings reboot proof? Interestingly for the "LKM" settings there is an option "Apply at bootime", which does the trick for me, but only for the LKM options.
Kind regards,
Stephan
IronMan1977777 said:
Hi Davey126,
thx for the guide, it seems to work awesome.
However, i have the one problem thats the settings in EXKM regarding to "zRAM Size", "dirty ratio" and "dirty background ratio" are lost after rebooting the device. Is there a way to make the settings reboot proof? Interestingly for the "LKM" settings there is an option "Apply at bootime", which does the trick for me, but only for the LKM options.
Kind regards,
Stephan
Click to expand...
Click to collapse
Likely BusyBox is missing or outdated. Try installing this (I use the pro version).
Davey126 said:
Likely BusyBox is missing or outdated. Try installing this (I use the pro version).
Click to expand...
Click to collapse
Ok. I bought BusyBox Pro and updated to Version 1.28.1-Stericson. Still all settings in EXKM besides LMK get lost after rebooting the device ...
IronMan1977777 said:
Ok. I bought BusyBox Pro and updated to Version 1.28.1-Stericson. Still all settings in EXKM besides LMK get lost after rebooting the device ...
Click to expand...
Click to collapse
- verify BusyBox is property installed w/no conflicting builds
- uninstall/reinstall EXKM
- test if behavior can be duplicated with another (free) kernel manager like KA
My X2 broke again few days ago and this time im up for new Phone because the cost of repair is to high compared for the value. Also i need more battery & a (better) working Camera. Also i need to re-new my Phone Contract, so i can get a new Phone cheap. Before i leave i wanted to share my experiences for new or senior users which use/plan to update to 8.1. This Phone is very tricky, so it may save you a lot of work ^^
--- HOW-TO: Get best 8.1 battery/experience + gps fix ---
~ During my time with victara, I tested all 8.1 ROMs for a long time, gone thru log's, tested a lot of other stuff's and this is my result: (if you want to use X2 as an daily driver) ~
~ This applies to mostly all 8.1 based ROMs ~
1. From system/vendor/lib/hw/ delete power.msm8974.so = this lib is not used by anything since long and it just constantly crashes EVERY damn time you touch the screen. After deleting, reboot device and feel the speed increase instantly.
2. If you're a not playing RAM intensive games, use the SwapTorpedo Magisk module, it gives much more speed by disabling zRAM, which in turn saves a lot of CPU uptime. Our 2Gb RAM are enough to run even 3-5 heavy or more Apps simutanesly.
3. In developer settings at the bottom there is "background check" you can disable it for allmost ALL user Apps like fb etc. Notifications will still work no worry, they go thru Play Services. Also don't disable background check for Playstore & GServices = will result in crashing loops (internally), also you should keep all the calendar and contacts sync open if you want that feature.
4. Greenify has not much power on Oreo, dont use it. Use Naptime for great standby! ( keep "disable on charger" for GoogleSync to work properly)
5. footej Camera delivers best results on this semi broken camera...
6. Put as much Apps into /system partition, because they are faster then (use "stock" GApps package) and reflash it with an updated GApps package every now & then if you update your ROM (maybe once or twice a month)
--> on startup Android automaticly detects if there's a newer version of app in /system & deletes the one in /data ^^
7. If you want fast and fixed GPS then replace the file in /system/etc with my attached one. (unzip it 1st!) Works on all ROMs for victara!
8. Our APNs list file is outdated as hell, i suggest manually edit your settings. --> in "type" add: "default,mms,supl,ims" (supl is for location services and ims for things like VoLTE config)
9. There is a wifi config file missing in /system/vendor/firmware ... /prima/HERE [i dont remember extact location], but you will see WCNSS.conf (or similar name) file which is 0 bytes... copy the original one from /system/vendor/etc/wifi/prima to that location & reboot
10. Bad in-call sound quality & low volume fix: open build.prop in /system
Code:
persist.audio.fluence.voicecall=true
change value to
Code:
persist.audio.fluence.voicecall=false
Code:
ro.config.vc_call_vol_steps=7
change value to
Code:
ro.config.vc_call_vol_steps=8
(stock default)
--> save & reboot. Profit.
12. Allways look if you can disable unused Apps in Settings BEFORE deleting them from /system/app or ../priv-app -> it can cause loops (drain)
13. for getting another hour SOT (tested on new battery, non original but legit one) use Swift black substratum theme for anything. "make use of your amoled"
... will maybe update list later
Most stable, bugless 8.1 ROM? IMO: MokeeOS, why? (good stuff)
-> based on latest LineageOS 15.1 sources, even tho they dont merge every commit from LOS (?)
-> updates every day, even for our chipset
-> EXT4 is allmost 3 times faster than f2fs
-> its rock stable, just no NFC, less flashlight toogle bug, best camera performance of all 8.1 ROMs with footej camera.
BUT YOU NEED TO MOD IT! AFTER EVERY UPDATE. (bad stuff)
- STOP it collecting YOUR usage/location data: download the App i attached. (they removed the option to stop it and added their own location & data miner lol)
-> in system tab -> MokeeSettings -> disable all of its services (stats updating & uploading services etc). It will not affect system, but theres no other way, because they really try to hide it from the user
-> you can also disable analytics from Mokee Pay App
-> after disabling the services, you can uninstall "disable service" app
Dont get me wrong, i dont like many things how they "manage" their ROM & source. Moreover they push their users to donate, for FOSS (=FreeOpenSourceSoftware, get it?). with the work others did, but rebranding, "kanging" it as theirs. (atleast they give credits to Lineage on github). Anyway if your are looking for a stable 8.1 ROM, this is your only choice...
Thank you all in Moto X 2014 forum, i will possibly go for OPO 6 (bad Camera) or S9 (bad Software support by Samsung), cant decide
peace! :fingers-crossed:
Thanks man! i followed your instructions! but i dont know how to do point 2, since i dont know how to install magisk.
Sad to see you go. Thanks for all your works to this aging phone. I still keep mine and I have moved to Moto Z2 Play. Hopefully,I can afford One Plus 6. But,it's not available here. Good luck with your new phone. I'm sure you will enjoy it more.
aBixler said:
Thanks man! i followed your instructions! but i dont know how to do point 2, since i dont know how to install magisk.
Click to expand...
Click to collapse
You simply look for Magisk v16 zip file on xda and flash it in recovery
bejunk said:
You simply look for Magisk v16 zip file on xda and flash it in recovery
Click to expand...
Click to collapse
That's all??? Woow, I looked up on Google and found a couple of complicated tutorials, thanks man.
aBixler said:
That's all??? Woow, I looked up on Google and found a couple of complicated tutorials, thanks man.
Click to expand...
Click to collapse
Yeah. And then you open the app & look for modules. You can test them - and thats the great thing about Magisk - if you dont like them, you can easily uninstall them like an app.
bejunk said:
My X2 broke again few days ago and this time im up for new Phone because the cost of repair is to high compared for the value. Also i need more battery & a (better) working Camera. Also i need to re-new my Phone Contract, so i can get a new Phone cheap. Before i leave i wanted to share my experiences for new or senior users which use/plan to update to 8.1. This Phone is very tricky, so it may save you a lot of work ^^
--- HOW-TO: Get best 8.1 battery/experience + gps fix ---
~ During my time with victara, I tested all 8.1 ROMs for a long time, gone thru log's, tested a lot of other stuff's and this is my result: (if you want to use X2 as an daily driver) ~
~ This applies to mostly all 8.1 based ROMs ~
1. From system/vendor/lib/hw/ delete power.msm8974.so = this lib is not used by anything since long and it just constantly crashes EVERY damn time you touch the screen. After deleting, reboot device and feel the speed increase instantly.
2. If you're a not playing RAM intensive games, use the SwapTorpedo Magisk module, it gives much more speed by disabling zRAM, which in turn saves a lot of CPU uptime. Our 2Gb RAM are enough to run even 3-5 heavy or more Apps simutanesly.
3. In developer settings at the bottom there is "background check" you can disable it for allmost ALL user Apps like fb etc. Notifications will still work no worry, they go thru Play Services. Also don't disable background check for Playstore & GServices = will result in crashing loops (internally), also you should keep all the calendar and contacts sync open if you want that feature.
4. Greenify has not much power on Oreo, dont use it. Use Naptime for great standby! ( keep "disable on charger" for GoogleSync to work properly)
5. footej Camera delivers best results on this semi broken camera...
6. Put as much Apps into /system partition, because they are faster then (use "stock" GApps package) and reflash it with an updated GApps package every now & then if you update your ROM (maybe once or twice a month)
--> on startup Android automaticly detects if there's a newer version of app in /system & deletes the one in /data ^^
7. If you want fast and fixed GPS then replace the file in /system/etc with my attached one. (unzip it 1st!) Works on all ROMs for victara!
8. Our APNs list file is outdated as hell, i suggest manually edit your settings. --> in "type" add: "default,mms,supl,ims" (supl is for location services and ims for things like VoLTE config)
9. There is a wifi config file missing in /system/vendor/firmware ... /prima/HERE [i dont remember extact location], but you will see WCNSS.conf (or similar name) file which is 0 bytes... copy the original one from /system/vendor/etc/wifi/prima to that location & reboot
10. Bad in-call sound quality & low volume fix: open build.prop in /system
Code:
persist.audio.fluence.voicecall=true
change value to
Code:
persist.audio.fluence.voicecall=false
Code:
ro.config.vc_call_vol_steps=7
change value to
Code:
ro.config.vc_call_vol_steps=8
(stock default)
--> save & reboot. Profit.
12. Allways look if you can disable unused Apps in Settings BEFORE deleting them from /system/app or ../priv-app -> it can cause loops (drain)
13. for getting another hour SOT (tested on new battery, non original but legit one) use Swift black substratum theme for anything. "make use of your amoled"
... will maybe update list later
Most stable, bugless 8.1 ROM? IMO: MokeeOS, why? (good stuff)
-> based on latest LineageOS 15.1 sources, even tho they dont merge every commit from LOS (?)
-> updates every day, even for our chipset
-> EXT4 is allmost 3 times faster than f2fs
-> its rock stable, just no NFC, less flashlight toogle bug, best camera performance of all 8.1 ROMs with footej camera.
BUT YOU NEED TO MOD IT! AFTER EVERY UPDATE. (bad stuff)
- STOP it collecting YOUR usage/location data: download the App i attached. (they removed the option to stop it and added their own location & data miner lol)
-> in system tab -> MokeeSettings -> disable all of its services (stats updating & uploading services etc). It will not affect system, but theres no other way, because they really try to hide it from the user
-> you can also disable analytics from Mokee Pay App
-> after disabling the services, you can uninstall "disable service" app
Dont get me wrong, i dont like many things how they "manage" their ROM & source. Moreover they push their users to donate, for FOSS (=FreeOpenSourceSoftware, get it?). with the work others did, but rebranding, "kanging" it as theirs. (atleast they give credits to Lineage on github). Anyway if your are looking for a stable 8.1 ROM, this is your only choice...
Thank you all in Moto X 2014 forum, i will possibly go for OPO 6 (bad Camera) or S9 (bad Software support by Samsung), cant decide
peace! :fingers-crossed:
Click to expand...
Click to collapse
Thanks man, specifically for the power.msm file to delete. The speed boost is amazing!!
Why the **** are developers not merging these changes with their roms? do they just not care?
Galaxyninja66 said:
Why the **** are developers not merging these changes with their roms? do they just not care?
Click to expand...
Click to collapse
Because they are hacks and not the properly way to fix
1.Ext4 is only for System,f2fs is much more faster
2.all other hacks can cause issues...
linckandrea said:
Because they are hacks and not the properly way to fix
1.Ext4 is only for System,f2fs is much more faster
2.all other hacks can cause issues...
Click to expand...
Click to collapse
I do not understand, because some dev say that ext4 is faster and others say it is actually f2fs ... I understand the velocity that f2fs has, but this also brings instabilities to the system, while ext4 is more stable but not is fast as f2fs ... even so they still say ext4 may be faster than f2fs on some devices.the question is, for our victara, what is the best file system?
Leonardoliveira said:
I do not understand, because some dev say that ext4 is faster and others say it is actually f2fs ... I understand the velocity that f2fs has, but this also brings instabilities to the system, while ext4 is more stable but not is fast as f2fs ... even so they still say ext4 may be faster than f2fs on some devices.the question is, for our victara, what is the best file system?
Click to expand...
Click to collapse
F2fs is generally more faster than ext4,
The firstly versions of f2fs(2012-2013) aren't very stable but now f2fs is very stable on the majority of device.
In other words
In general f2fs is a bad idea only if the original kernel isn't shipped with it(not our case)
linckandrea said:
Because they are hacks and not the properly way to fix
1.Ext4 is only for System,f2fs is much more faster
2.all other hacks can cause issues...
Click to expand...
Click to collapse
I have yet to notice a solid speed improvement when switching from f2fs on ANY android device I have owned, plus this isn't the android chef's choice, the user is the one who decides this.
"Not the proper way to fix" - This is irrelevant and only applies if we have a proper way to fix these issues, the fact of the matter is that there is no official fix and these have yet to show any signs of conflicting with anything.
Most "developers" I notice are just creating a real quick build using pre-set instructions then sometimes cherry picking from other device's github sources. I am greatful that work is being done but it makes me want to boot into my old development desktop environment and show these cat's how to make something spicy. It's as easy as adding these fixes into your environment and then building the system image with these changes included, you don't even need to use the terminal to add most of these.
linckandrea said:
F2fs is generally more faster than ext4,
The firstly versions of f2fs(2012-2013) aren't very stable but now f2fs is very stable on the majority of device.
In other words
In general f2fs is a bad idea only if the original kernel isn't shipped with it(not our case)
Click to expand...
Click to collapse
Just wanted to add my 2cents, about f2fs. I generally agree with you and also i read some deep-dive articles in the last few years. To keep it short: To be able to really benefit from f2fs,
you need to have HW (storage (eMMC) chip) which is optimized for it as well as the System/Kernel. f2fs was long in development like you say until it was really better than EXT4. But i think in the case of the Moto X2,
either the HW dont plays well or there is some other problem (i dont know which version of f2fs this phone uses). But what i know, from testing (a lot) and comparing results with an EXT4 ROM, EXT4 was ALLWAYS faster.
In (storage) benchmark apps, especially the random r/w, which is quite important, EXT4 was allways better. When i runned apps like SDmaid, (collecting garbage and doing DB optimizing) it was faster (allmost 2-3 times). Same for games like GTA or others which loaded data. I even mesured it to be sure, took many SS to compare because at that time i wanted to build myself, so i was interested whats better... (than my 2nd X2 broke:crying Anyway try it for yourself & you will see. On my old S3 mini, long ago the dev also updated f2fs version, but it still wasnt better than EXT4, i remember (Lollipop times)
To adress, "that these are hacks": I dont think so because those are doing much good and nothing bad. Maybe its not the most professional way to fix it (commit it properly), but it was the best i could do by then..
- delete power.msm8974.so - really this lib was not used by anything, i spend much time digging the Mokee Sources and doing logs etc... We used the AOSP HAL and the Qualcomm one was just bugging around... It didnt affect anything to delete it by then.. (dont know about now)
- setting "persist.audio.fluence.voicecall=false" its cleaning the sound when you speak to someone in a call using the 2nd mic - but it needs that all plays nicely together. I tested it using 2 phones from friends and off was much better, maybe on stock it works well, but on 8.1 custom that was not the case. Also i found by searching a lot around that many more maintainers disabled it on their ROMs because it wasnt working properly.
- setting "ro.config.vc_call_vol_steps=8" -> its the default value in stock ROM, which i extracted...
- GPS fix was inspired by commit to many devices, which pulled settings via framework - this is the "lazy" version, direct edit. Anyway it was way faster (navigation in maps) no bad stuff in log and secure now.
- about APN file - it was really outdated... & about the wifi file, this is the only one i wasnt sure, but for G3 and S5 (which both are msm8974, custom 8.1) the full file was there?!
ALL the other things are recommendations from me (like IMO), thats why the title of this thread. Last thing, for disabling zRAM (SWAP) it was allready discussed in many tech sites that this is absolutely useless in times of 4+ gb RAM. Also it sucks CPU. In Pie its disabled now. We are on the border with 2gb so its up to personal preferences....
Anyway nice to see you working again on this great device, which i really miss I wanted to better "fix" those, with patches, builds and commits, but my knowledge was to limited to do that so i opted for a diffrent way. Also our source was to messy back then, couldnt really get anything done... and im still learning. Then it broke and that was the end for me on X2.
I wish you all the best, maybe you can do some magic on that device. Peace!
EDIT: Sorry the grammar, its late here and just saw this and had to answer..
bejunk said:
Just wanted to add my 2cents, about f2fs. I generally agree with you and also i read some deep-dive articles in the last few years. To keep it short: To be able to really benefit from f2fs,
you need to have HW (storage (eMMC) chip) which is optimized for it as well as the System/Kernel. f2fs was long in development like you say until it was really better than EXT4. But i think in the case of the Moto X2,
either the HW dont plays well or there is some other problem (i dont know which version of f2fs this phone uses). But what i know, from testing (a lot) and comparing results with an EXT4 ROM, EXT4 was ALLWAYS faster.
In (storage) benchmark apps, especially the random r/w, which is quite important, EXT4 was allways better. When i runned apps like SDmaid, (collecting garbage and doing DB optimizing) it was faster (allmost 2-3 times). Same for games like GTA or others which loaded data. I even mesured it to be sure, took many SS to compare because at that time i wanted to build myself, so i was interested whats better... (than my 2nd X2 broke:crying Anyway try it for yourself & you will see. On my old S3 mini, long ago the dev also updated f2fs version, but it still wasnt better than EXT4, i remember (Lollipop times)
To adress, "that these are hacks": I dont think so because those are doing much good and nothing bad. Maybe its not the most professional way to fix it (commit it properly), but it was the best i could do by then..
- delete power.msm8974.so - really this lib was not used by anything, i spend much time digging the Mokee Sources and doing logs etc... We used the AOSP HAL and the Qualcomm one was just bugging around... It didnt affect anything to delete it by then.. (dont know about now)
- setting "persist.audio.fluence.voicecall=false" its cleaning the sound when you speak to someone in a call using the 2nd mic - but it needs that all plays nicely together. I tested it using 2 phones from friends and off was much better, maybe on stock it works well, but on 8.1 custom that was not the case. Also i found by searching a lot around that many more maintainers disabled it on their ROMs because it wasnt working properly.
- setting "ro.config.vc_call_vol_steps=8" -> its the default value in stock ROM, which i extracted...
- GPS fix was inspired by commit to many devices, which pulled settings via framework - this is the "lazy" version, direct edit. Anyway it was way faster (navigation in maps) no bad stuff in log and secure now.
- about APN file - it was really outdated... & about the wifi file, this is the only one i wasnt sure, but for G3 and S5 (which both are msm8974, custom 8.1) the full file was there?!
ALL the other things are recommendations from me (like IMO), thats why the title of this thread. Last thing, for disabling zRAM (SWAP) it was allready discussed in many tech sites that this is absolutely useless in times of 4+ gb RAM. Also it sucks CPU. In Pie its disabled now. We are on the border with 2gb so its up to personal preferences....
Anyway nice to see you working again on this great device, which i really miss I wanted to better "fix" those, with patches, builds and commits, but my knowledge was to limited to do that so i opted for a diffrent way. Also our source was to messy back then, couldnt really get anything done... and im still learning. Then it broke and that was the end for me on X2.
I wish you all the best, maybe you can do some magic on that device. Peace!
EDIT: Sorry the grammar, its late here and just saw this and had to answer..
Click to expand...
Click to collapse
I agree with you, f2fs in itself is faster than then many applications fail to draw the benefits is another fact (however I'm trying to do a f2fs backport from 3.10y (not very simple because motorola has done many changes departing a lot from the original)),
to talk about the fixes
in PIE I changed the powerHAL to QTI version (which solves the problem)
about wifi config no need to copy it from elsewhere that oreo and pie only see it in / vendor
for the other things i see them as optimization that the user can do only and i have nothing in contrary
Good stuff. Thanks for this. Latest mokee seems to be bug ridden, but I flashed unofficial LOS, and I'm applying these tips. Substratum won't work for me, but otherwise I'm happy so far.
Thanks again.