You can mod every aspect of your phone's software with root, but if you want to make changes at the hardware level, you'll need a custom kernel. If you've looked into custom kernels before, one name undoubtedly kept coming up: ElementalX. It's easily the best custom kernel out there, and the reason for that is its awesome developer, flar2, aka Aaron Segaert.
For the uninitiated, flar2 is an absolute legend in the Android root community. In addition to maintaining the ElementalX kernel for dozens of devices, Segaert is the sole developer of several popular modding apps like EX Kernel Manager, Button Mapper, and DevCheck. But he's more than just a coder — it's his expertise in other areas that lets Segaert see the bigger picture and helps propel his wares to success.
Segaert's background is intriguing. He has a doctorate in sociology, and though he did pursue formal education in computer science, it was mainly his enthusiasm for tinkering that led him to become the software developer he is today. In fact, he was initially resistant to the entire cell phone craze in the early 2000s, and it was only after being forced to pick one up that he realized his passion for coding Android kernels and apps.
Suffice it to say, Aaron Segaert has his finger on the pulse of the Android root community, and his perspective is a unique one. That's why we were enthused to get a chance to pick his brain — below is the interview text in full, with Segaert's lightly edited responses.
Gadget Hacks: We're huge fans of all your work here at Gadget Hacks. Are any of your projects personal favorites of yours?
Aaron Segaert: Thanks, I hope people find my software useful. EX Kernel Manager has always been my favorite. It was my first app and I've put a lot of work into it over the years to make sure it handles everything that users want.
GH: Are there any features in your apps or mods that you wish more people knew about?
AS: I wish more people realized that EX Kernel Manager can be used with any kernel, not just ElementalX kernel. I've worked hard to add hundreds of settings that aren't even part of ElementalX, and it's compatible with Kirin, Tegra, Exynos, and MediaTek as well as Qualcomm SOCs
I also wish more people knew about DevCheck. For some reason, that app has always struggled to get traction in the Play Store.
GH: DevCheck is a great app, it's a shame it hasn't taken off. Can you explain who should be using it that currently isn't? What are users missing out on?
AS: I think anyone interested in hardware or diagnostics should be using it. DevCheck digs deeper into the hardware, especially for root users. I think it stands out from the other sysinfo apps because the information is organized and presented in a much more clear and concise way. It doesn't just dump a bunch of stuff to the screen, I pick and choose what to show. I don't think any other apps show as much relevant detail about camera, network (especially dual SIM), Bluetooth, and RAM.
GH: What phone do you currently use as your daily driver? Do you have a favorite phone series that you always find yourself coming back to?
AS: I've been using the OnePlus 6 as my daily driver since it was released this spring. It's a really solid phone, very stable and fast. I've never had a single problem with it. Before that, I used the Pixel XL, which is also incredibly reliable. Other daily drivers were the HTC 10, Nexus 6, and HTC M8, M7 and One XL. I was a big HTC fan for many years, they were innovative and made great hardware. Now I think the Pixel line is the best, especially in terms of software. If OnePlus could match the Pixel camera, they would be the best.
For kernel and app testing, I rotate phones through my family members to make sure everything is stable and working well. I tend to use my daily driver when I'm out and about, and other phones when I'm at home.
GH: Can you expand on your thoughts about HTC's downfall? Anything in particular you think they should've done differently?
AS: It's unfortunate because HTC can still make a great phone. The U11 and HTC 10 were excellent devices, with great audio and camera and premium build quality. I haven't actually seen the U12+. The first generation Pixels were essentially HTC phones. The biggest problem is HTC came out with a really bad phone, the M9 (which had a terrible screen and heat problems), at a critical time. Samsung and others capitalized on that weakness and HTC never recovered. HTC no longer gets distribution from the major carriers in the US and Canada, so the average consumer doesn't even know they exist.
Aside from the M9 being a dud, HTC has always had poor marketing. I think they should have focused on making premium hardware. Instead, they tarnished their brand reputation by releasing a bunch of crappy low-end phones like the Desire series and confusing variants of their flagships.
GH: What root mods do you use on your own devices? Or do you even root at all?
AS: All my phones are rooted, it's the first thing I do when I get a new device. There are two root mods I can't live without: High Brightness Mode and sweep up to wake. I've implemented these mods on many devices. I also adjust vibration on some phones, usually to lower it. The vibrator in several newer devices has an annoying tone that I don't like, making the vibration a bit weaker cuts down on that, especially when typing. And I adjust headphone gain to boost the left channel, because my left ear is not as good as my right ear.
GH: What's your favorite tweak for Android? Root apps, non-root apps, flashable ZIPs, anything goes!
AS: Aside from HBM and sweep to wake, I always use Button Mapper to program a long press of volume down to toggle the flashlight. No root required for that. My tweaks are usually small, practical things that I use every day.
GH: ElementalX currently supports at least 26 different devices. When developing the kernel, do you have to get your hands on each of those devices? If so, how do you fund that?
AS: You need the actual hardware to do kernel development. The kind of stuff I do, like sound control, wake gestures, vibration adjustment, etc., needs to be tested on the device. I have over 30 phones. I've bought most of them at full price, so I've spent a lot on phones over the years. In the early days, I relied on donations. The HTC community on XDA raised $600 toward the HTC M8. Recently, I've received a few phones through XDA and OnePlus. Essential also sent me a free phone. The rest are funded through sales of EX Kernel Manager, which also supports server and other equipment costs.
GH: Interesting that OnePlus and Essential would send you phones — they're definitely modder-friendly devices, so I'm glad to see both OEMs are specifically targeting the root community. Are there any other manufacturers that have stood out as a pleasure to work with regarding answering your questions or helping out?
AS: OnePlus, Essential, and Google stand out as the easiest for kernel development. Each of these OEMs release kernel source code using git, which makes it simple to merge updates, and you can see the commit history. They allow bootloader unlocking, and they provide complete factory images. This is basically what I need to make a custom kernel.
There are big obstacles to developing for other brands. Some don't provide working kernel source code, or the release is not timely, or it is released as a blob with no commit history. It is often difficult to find system images and flashable firmware, and others make you jump through hoops to unlock the bootloader. On some devices, unlocking the bootloader or using a custom kernel or firmware can break certain features. These things make development frustrating. I'm probably sticking to OnePlus and Pixel devices for now.
GH: What were your priorities when fine-tuning the ElementalX governor? Speed? Battery savings? Increased speed without decreasing battery life?
AS: The ElementalX governor was meant to find a balance between responsiveness and battery life and provide top performance for gaming. It is based on HTC's custom ondemand governor, which was used in their flagships up until the M8. It is a demand-based governor (as opposed to interactive, which was developed specifically for Android). It tries to be context aware, which means different frequency levels depending on how sustained the load is. One unique feature is that it considers GPU load, and gives an extra boost when 3D graphics are used. Since big.LITTLE chips came out, and Google's development of Energy Aware Scheduling (EAS), I've stopped working on the ElementalX governor. EAS is better in many ways for modern chips.
GH: You mentioned gaming performance being a priority — are you a gamer yourself? Any particular games that you're into nowadays?
AS: Performance is something that users ask for and I've always found it a fun challenge to try to improve bottlenecks and reduce lag. I don't game on my phone or otherwise, I don't even own a gaming system. But I have always been into tweaking and modding computers. I was really into overclocking PCs back in the day, and I learned a lot about software optimization running and building Linux when I was young. I love smooth-running, super-optimized computers, and that has translated to phones.
GH: Google's A/B partitions (seamless updates) were a major hurdle for root, custom recovery, custom ROMs, and of course, custom kernels. Did you have to coordinate with developers of other mods to ensure ElementalX would remain compatible with things like TWRP and Magisk sharing space on the boot partition now?
AS: It was a big change, but definitely more of a challenge for root and TWRP than custom kernels. A lot of users still find it confusing because things need to be installed in a certain order. Early on, I modified the ElementalX installer to detect whether the device was rooted or not, and set a command line parameter to deal with it. This was based on the work of Chainfire (former SuperSU dev) who initially figured out how it all works. Instead of doing a binary patch like SuperSU (Magisk also does this), I made some changes in the initramfs kernel code which allowed ElementalX to be installed without losing root. More recently, I started using the AnyKernel2 installer by osm0sis, because it handles everything and it's much easier than maintaining my own installer.
GH: Interesting! That makes me curious about the root and modding community as a whole. Can you give us more insight on the scene itself, how you interact with other developers in it, and the major changes you've seen over the years?
AS: I'm actually not that involved in the community on a social level. I only occasionally chat with other devs. It's mainly a time constraint because I have a family, a few other hobbies, and I maintain a separate career in social research and public policy. All of this keeps me busy 24/7.
As for changes in the community, there are a few things going on. One is an overall decline in rooting and modding, which is partially due to the hardware becoming much better (and therefore less in need of tweaks) and the software getting more features and options. The second change is newer forms of social media have taken over from internet forums. The internet forum was ideal for sharing and archiving knowledge, and forming public-facing communities that really stuck to specific topics in great detail. Newer forms like Telegram, Twitter, Facebook, etc., are more ephemeral and closed. They are less searchable, posts and threads are basically lost in a sea of off-topic chat after a few days, which leads to less focused discussion and a fragmentation of the community. And finally, the other big thing I see is a shift from west to east. Development used to be centered in North America and Europe, now the most enthusiastic modding communities are in India and southeast Asia.
GH: Do you think Google will end up shutting down root-level tweaking on Android at some point in the future? The ability to unlock the bootloader is potentially a weak point in the secure boot chain, but they've so far preserved that ability while securing the boot process with things like the "OEM Unlocking" setting and the Titan M chip in their own devices.
AS: If they were going to do it, I think they would have done so already. There are still many users and many top-ranked apps that use root. The knowledge and effort required to root are probably sufficient barriers that unlocking the bootloader and rooting are not going to cause widespread problems. The people who unlock and root have their reasons.
That said, I don't think root will be allowed when Android is eventually replaced.
Unlocking the bootloader is a security threat mainly in the case that someone has physical access to the phone. Rooting obviously opens up the entire device to modification, but apps like Magisk Manager do a good job of managing access to SU. It all depends on what you install on your phone, and the access that you allow. Personally, I've never encountered anyone who has had a security problem from unlocking and rooting their phone. Just be careful what you install and grant root access to.
Security is obviously very important given all the personal info kept on our phones, but I do think that the threats have been exaggerated and used to serve the interests of carriers, advertisers, data gatherers, content providers, and to create a bigger market for anti-malware apps. I would say it's more to limit what you can do with your device than to protect you. It's about restricting your ability to remove ads and bloatware, stop you from hotspot tethering, things like that. It's a battle for control of your device.
GH: "When Android is eventually replaced" definitely piqued my interest! I assume you're talking about Andromeda or Fuchsia — do you think it's a certainty at this point that Google will eventually migrate the ecosystem over?
AS: Nothing lasts forever. It probably makes sense to build something from the ground up that is tailored to modern hardware and the latest computing ideas. Linux is nearly 30 years old, and Android has been around for 10 years, which is almost an eternity in terms of technology. I don't know much about Andromeda or Fuchsia yet, but it seems Google is thinking ahead. It will take a huge effort to duplicate all the features and capabilities of a mature OS like Android/Linux, and then there is the huge app ecosystem, so Android will probably be around for a while yet.
GH: What's the most challenging issue the root community is facing right now? What sorts of challenges do you see in the pipeline?
AS: Aside from the threat of OEMs like Huawei and Samsung locking the bootloader, I think the biggest issue right now is the subset of Android enthusiasts who feel root is not necessary anymore and that rooting is childish, something you grow out of. That type of negative attitude will kill rooting. It's fine if you don't need to or want to root, but I don't like it when when these users feel the need to state this in every discussion about rooting.
I can tell you that a large number of my users are not teenagers constantly flashing custom ROMs and kernels. These people are not necessarily active in Android forums and discussions. They are hobbyists, engineers, and IT professionals using Android devices for things like scientific testing and system administration that need root to run specific software or hardware. Android devices are very small, very cheap, Linux computers and there are people out there doing amazing things with this hardware. They need to build custom kernels and get root access to control their custom hardware and software.
So before people look down on rooting, they should remember that there are many people with good reasons to root, and they should be happy that Android still offers the freedom to fully utilize their hardware if they need to.
Helpful Links
If you'd like to learn more about Aaron Segaert, we recommend reading Part 1 and Part 2 of his interview with XDA from last year. There are lots of great insights we chose not to cover here since the topics had already been discussed.
If you're new to rooting, you can learn more about the concept with our root explainer, and you can see how to root many popular phone models, or read more about TWRP and Magisk. If you're interested in ElementalX after reading this, we have lots of coverage on the kernel, including installation guides and EX Kernel Manager tweaks, and the official ElementalX site is always a great resource.
This article was produced during Gadget Hacks' annual Tweaks & Hacks Celebration week. Read all of the Tweaks & Hacks Celebration stories.
Hot Deal: Set up a secure second phone number and keep your real contact details hidden with a yearly subscription to Hushed Private Phone Line for Android/iOS, 83%–91% off. It's a perfect second-line solution for making calls and sending texts related to work, dating, Craigslist sales, and other scenarios where you wouldn't want to give out your primary phone number.
1 Comment
Great article!
Share Your Thoughts