Some Hacking in Yoga Book - Lenovo Yoga Book Guides, News, & Discussion

Hi folks.
I'm an Android firmware developer (you can see my posts here in xda) that got a yoga book yesterday. For me it works at it should (by now) but my hacker soul speak to me and said: "at least take a look to see what you can get from this device". I don't have many time, so I can't spend time doing roms or fixing things by myself, but I can share with you some info I get and help you with my knowledge if someone is interested in "play" with this device.
First of all, I'm not responsable of anything that you can break following these steps. Almost all of them are tested and with some common sense you will not break anything, and if you break anything I will try to help you to fix it (if you are polite), but this is a work in progress and hacking and the possibility of brick the device is always there.
I only have the Android version without LTE, so I only tested in my Book.
So, here we go:
1) Secret codes:
I get this codes decompiling EngineeringCode.apk with apktool. Be carefull with them:
####0000# - Display version info
####7599# - Display hardware info
####8375# - Display baseband info
####1111# - Factory test
####2222# - Display SN
####7777# - Factory Reset???
####5993# - Display internal frameWork version
####7642# - Cut the power off to reload the PMIC - This command shutdowns the device. Just press the power button to reboot.
####5236# - Display LCD name
####2834# - ES close test
####8899# - open the ums mode default for debug
####3333# - offline log
####3334# - offline modem log
####9527# - Mediaplayer setting
####78646# - RunIn test
####6020# - switch country code
####59930# - Display current country code
####8746# - Enter engineering mode
####4227# - Enter engineer test
####357# - DLP_TEST
To use these codes, open the contacts app, press the search button and enter the code in the search bar.
2) OTA Images
You can get OTA images directly from lenovo servers. Just open your browser and paste this url:
http://fus.lenovomm.com/firmware/3....WW06_BP_ROW&action=querynewfirmware&locale=en
Change device model if needed (LenovoYB1-X90F or LenovoYB1-X90L)
Change curfirmwarever to a valid OLD firmware, this way you will get the next one in age.
Change locale if needed.
With this url you will get a download url at the end of the result page. In this case: http://tabdl.ota.lenovomm.com/dls/v...S000426_1705080316_WW06_BP_ROW_WC80C2A0F2.zip
These images are not full ota images, they are diff versions. This means that we can't use them to mod the image, or recover a bricked device, but this is a first step
3) Custom images
We don't have real sources to build a custom image (the lenovo's open source files are useless), but this doesn't mean that we couldn't modify stock images to take out useless apks or get better performance.
We can get this using an Android Kitchen and a full update image for the device.
As Android kitchen you can use SuperR kitchen (https://forum.xda-developers.com/ap...chen-superr-s-kitchen-v1-1-50-v2-1-6-t3597434)
As full image, I only tested the one here (https://easy-firmware.com/index.php?a=browse&b=category&id=19521) because I can't download any newer one.
I tested uncompressing it, deodexing the apks and doing a new image. But I don't test it in the device because I need to install twrp to flash the new image and I don't have time to test. But this should work, I did it many times so if someone is interested I can give steps to do it and support for testing.
If someone can get the latest full images, send then to me and maybe I can get some time to do some tests.
PD: Probably we could use this as a base to get LineageOS 14.1 working: https://github.com/latte-dev/android_device_xiaomi_latte/tree/cm-14.1
So, if you are interested in some hacking with the Yoga Book, contact me and we could team to get the most of this device.

First of all thank you for your post, it´s really useful
if you could somehow manage to boot windows on this machine it´s by far the greatest war we have right now.
Il promise you a lunch or dinner on Lisbon whenevere you want!

joao1979 said:
First of all thank you for your post, it´s really useful
if you could somehow manage to boot windows on this machine it´s by far the greatest war we have right now.
Il promise you a lunch or dinner on Lisbon whenevere you want!
Click to expand...
Click to collapse
Sorry, my knowledge of Windows is only user level . Install it in personal computer to play games .
But I really don't know why people wants to run Windows there, it will go slowly than Android and its less touch oriented... but I suppose that this is a chat for another thread

corvus said:
Sorry, my knowledge of Windows is only user level . Install it in personal computer to play games .
But I really don't know why people wants to run Windows there, it will go slowly than Android and its less touch oriented... but I suppose that this is a chat for another thread
Click to expand...
Click to collapse
in my particular case, i´l admit that is for football manager the touch version

joao1979 said:
in my particular case, i´l admit that is for football manager the touch version
Click to expand...
Click to collapse
Have you tried running it through Crossover? It may be in its infancy but i have got a few apps running OK with it.

I have the full "YB1-X90F_USR_S000196_1611040312_WW06_BP_ROW" I can upload somewhere if anyone can suggest a good site to do so without signing up? The file is about 2.5gb

It will be great if we could get the latest version, because maybe these older versions have older files that we have updated in our tablets.
Mixing files could give unknown problems

The current TWRP is based on the new Yoga Tab 3

I am starting to think they do not do full roms for this in the same way they do for a lot of their other devices.
We know the otas are available from tabdl.ota.lenovomm.com/dls/v6/ and are named according to the 2 builds that it bridges. As easy-firmware had the december full rom under the file name B1-X90F_USR_S000196_1611040312_WW06_BP_ROW-flashfiles.zip I had hoped that I could work out the file path to pull it down.
There were some interesting ideas here, https://forum.xda-developers.com/android/help/how-download-stock-roms-lenovos-ota-t3109507 but it seems there is a difference between phonedl.ota and tabdl.ota
Queries to full roms that work for phones, don't seem to work for the yoga book.
Anyone with more web knowledge able to pick this up? I am not sure the files are there but I feel they should be.
Good luck
Update: the downloads seem to be hosted via CloudFront. An Amazon service, but I can not find out a way of listing the available files. The latest full rom would be
http://tabdl.ota.lenovomm.com/dls/v6/YB1-X90F_USR_S000426_1705080316_WW06_BP_ROW_WC80C2A0F2.zip
But the Last 8 chars are random and we do not know what they are.
So we have two hopes. First work out the right query to the link from fus.lenovomm.com or two find a way of listing files available in tabdl.ota.lenovomm.com/dls/v6
Not sure I have got much further but ill keep trying when I can.

Hey, I should mention that I have some files that you may find helpful; I got them from the easy firmware website. They're all the .img files for each partition in Android (ie. boot.img, cache.img, config.img, factory.img, recovery.img, system.img) as well as: biosupdate.fv, bootloader, firmware.bin and gpt.bin. However, these of course aren't in the normal "flashable .zip ROM" format. So unless you know how to take apart these .img files they aren't very useful. If you need any more help or have any other questions about how far we've come on our own, feel free to ask. danjac also has great knowledge of our efforts.

Yes, I know how to use them, unpack, modify, etc. But what I want is the latest version, no a old version (I hav these files too). If you have them I can do some changes, debloat, etc.
Anyway, I see little interest in custom roms in this forum ( probably because it's not a device with a lot of users or the users are not the techy kind), so I prefer to help others with info than do a custom rom that only 2 or 3 people will use. Doing custom roms is a time hungry task and probably it doesnt worth the effort. Anyway this device is not full of bloatware like samsung ones, so it useable as it is.
As I said in my first post if anyone is interested I can give some hints and support to modify the full image (but only the latest one).

It's so sad that there are only a few interested owners of this tab - it's such a nice device but i fear the day lenovo decides to end their support for it. There will be no custom roms to switch to and keep the device alive - it will be a soon to be bit of old tech garbage BTW. I still use my Asus Transformer Prime because of the nice community

@NiffStipples I fully agree. This device is so powerful and its a suprise that it is invisible to the "market". In my humple opinion the normal ROMs aren't that bad besides missing updates but I would love to see all the power served through a custom rom. unfortunately programming is not my business
Stefan

Broomfundel said:
Have you tried running it through Crossover? It may be in its infancy but i have got a few apps running OK with it.
Click to expand...
Click to collapse
Interesting - is Crossover good (and does it require factory reset)?

Hi, It works well with some things and not others. Often the why and where are not obvious. It is basically "wine" the layer that allows some windows apps to run on a linux install. Tweeked to work with android. Just an install to put crossover on. Then another install (Within crossover), to put you app on crossover. If it doesn't work out of the box, there windows libraries you can switch out and dependencies you can install. (Eg: directx , .net) Even if your not technical. I would say get on the beta program and give it a try.

Hi! what do you mean by "lenovo's open source files are useless"? do you refer to this packet on lenovo's suppport site? download.lenovo.com/consumer/open_source_code/lenovo_yb1_x90f_l_osc_201608.zip
I've entered the Android YogaBook's BIOS and noticed that VT-X is enabled by default! With Limbo x86 we could get a fully working virtualized Windows or Linux, if it wasn't for... KVM. It seems like it's not enabled in Lenovo's default kernel. Could we get to recompile the kernel with this option on? i'm not a big android/ROM expert but i surfed the open_source_code folder from Lenovo and it seemed, to me, that we could rebuild the Kernel at least.
This could really change things!

morrolinux said:
Hi! what do you mean by "lenovo's open source files are useless"? do you refer to this packet on lenovo's suppport site? download.lenovo.com/consumer/open_source_code/lenovo_yb1_x90f_l_osc_201608.zip
I've entered the Android YogaBook's BIOS and noticed that VT-X is enabled by default! With Limbo x86 we could get a fully working virtualized Windows or Linux, if it wasn't for... KVM. It seems like it's not enabled in Lenovo's default kernel. Could we get to recompile the kernel with this option on? i'm not a big android/ROM expert but i surfed the open_source_code folder from Lenovo and it seemed, to me, that we could rebuild the Kernel at least.
This could really change things!
Click to expand...
Click to collapse
How did you enter the bios? Can you boot from usb?

anyone managed to use swiftkey keyboard?

Related

[Q] Can't a newbie like me understand anything about Android on smartphones?

I have read a few posts in this section, but it is totally impossible for someone like me (new to smartphones, flashing and the rest) to understand anything. Would you please explain some of the terminologies used here? Some of them are: kernel, 3g, port, system.ext2, BT... and thousands more.
Thank you very much!
you don't really "need" to understand any of that.
all you need to do is to learn how to download files, learn how to extract the downloaded file, learn how to copy them to an sd card, and learn how to run a program inside windows mobile.
if you can do all that, you should be set!!!
just follow steps 1-6 (ignore step 1b - the part about system.ext2) - http://forum.xda-developers.com/showthread.php?t=951962
Well noted AkumaX. Thank you very much!
XDAndroid is a project to port Android onto older HTC phones.
There are two main parts of XDAndroid, which combine to form a complete port:
Kernel/drivers: You can find packages to run Android on old HTC phones from a variety of sources, but whatever package you use, all rely upon the kernels/drivers created by the XDAndroid team to enable the basic hardware.
Android system: The Android system forms all of the parts of the phone's interface that you can directly interact with. Once the kernel/drivers have setup the hardware, you can add on an Android system port of your choice to form a complete build. Many system ports are available, both in terms of different versions (2.1 Eclair, 2.2 Froyo, 2.3 Gingerbread, etc.) and different starting points in the case of ports written by those outside of XDAndroid.
XDAndroid releases an "official" system port you can use, which is directly ported over by the XDAndroid team from the Android Open Source Project, and is very close to stock. Many of the alternative builds you come across are modifications of the XDAndroid system, containing customizations that deviate farther from stock Android, while others have different starting points altogether, and are ports of the ROMs found on official shipping devices that have already been customized (but still use the same basic kernel/drivers found here).
Android is a framework that runs on top of Linux. In order to get Android running on our devices, first we must get Linux running on the hardware with all drivers implemented, and then, we hook Android into these drivers. Thus, broadly viewed, the XDAndroid project is divided into two parts: the kernel/drivers and the Android port.
When you look at the files in your Android directory, you'll probably see something like the following:
zImage: The Linux kernel and drivers.
modules-###: Additional drivers for the kernel. Your system will load without this, but things like wifi may not work, or you may encounter instability.
initrd.gz: Used in the Linux boot process.
system.ext2: Most of the Android framework.
rootfs.img: Additional parts of the Android framework that are customized for our devices.
data.img: This file contains what would be your internal memory on a real Android device. Whenever you install a program it goes in to here. A new empty one will be automatically created if you don't have one.
haret.exe: Reboots you from Windows into XDAndroid.
startup.txt: Commands passed to XDAndroid on bootup that are customized by the user.
ts-calibration: Contains calibration information for the touch screen. If you don't have this file, you will be prompted to calibrate your screen on startup.
AndroidApps: A folder where if you copy any apks into it, they will be automatically installed on bootup.
manekineko said:
XDAndroid is a project to port Android onto older HTC phones.
-------.
Click to expand...
Click to collapse
Good explanation manekineko!...I believe this is what op was looking for.
there is light at the end of the tunnel, it wont take much longer if the devs keep up this good work, until there can be made stable and good builds with good battery life etc. when the time is there i will create an complete noob friendly installation guide (with pics and maybe even an vid).
I'm currently trying to figure out which one to install!
manekineko said:
XDAndroid is a project to port Android onto older HTC phones.
There are two main parts of XDAndroid, which combine to form a complete port:
Kernel/drivers: You can find packages to run Android on old HTC phones from a variety of sources, but whatever package you use, all rely upon the kernels/drivers created by the XDAndroid team to enable the basic hardware.
Android system: The Android system forms all of the parts of the phone's interface that you can directly interact with. Once the kernel/drivers have setup the hardware, you can add on an Android system port of your choice to form a complete build. Many system ports are available, both in terms of different versions (2.1 Eclair, 2.2 Froyo, 2.3 Gingerbread, etc.) and different starting points in the case of ports written by those outside of XDAndroid.
XDAndroid releases an "official" system port you can use, which is directly ported over by the XDAndroid team from the Android Open Source Project, and is very close to stock. Many of the alternative builds you come across are modifications of the XDAndroid system, containing customizations that deviate farther from stock Android, while others have different starting points altogether, and are ports of the ROMs found on official shipping devices that have already been customized (but still use the same basic kernel/drivers found here).
Android is a framework that runs on top of Linux. In order to get Android running on our devices, first we must get Linux running on the hardware with all drivers implemented, and then, we hook Android into these drivers. Thus, broadly viewed, the XDAndroid project is divided into two parts: the kernel/drivers and the Android port.
When you look at the files in your Android directory, you'll probably see something like the following:
zImage: The Linux kernel and drivers.
modules-###: Additional drivers for the kernel. Your system will load without this, but things like wifi may not work, or you may encounter instability.
initrd.gz: Used in the Linux boot process.
system.ext2: Most of the Android framework.
rootfs.img: Additional parts of the Android framework that are customized for our devices.
data.img: This file contains what would be your internal memory on a real Android device. Whenever you install a program it goes in to here. A new empty one will be automatically created if you don't have one.
haret.exe: Reboots you from Windows into XDAndroid.
startup.txt: Commands passed to XDAndroid on bootup that are customized by the user.
ts-calibration: Contains calibration information for the touch screen. If you don't have this file, you will be prompted to calibrate your screen on startup.
AndroidApps: A folder where if you copy any apks into it, they will be automatically installed on bootup.
Click to expand...
Click to collapse
Thank you so much for your explanations, manekineko. I believe that I am now ready to cruise through all the threads of this section without fear.
shatred said:
there is light at the end of the tunnel, it wont take much longer if the devs keep up this good work, until there can be made stable and good builds with good battery life etc. when the time is there i will create an complete noob friendly installation guide (with pics and maybe even an vid).
Click to expand...
Click to collapse
shatred, I am eagerly waiting for two things: (i) for the developers to release the perfect Android builds (my sincere encouragements to them by the way!!!) and (ii) for your installation guide.
gueyenono said:
I'm currently trying to figure out which one to install!
Click to expand...
Click to collapse
tell me your phone type, so an rhod-100? 200? 300? etc.
and tell me what you prefer more, an good battery life and an stable running system without camera support OR less stable system, bad battery life but with camera support.
Tell me and i will help you
shatred said:
tell me your phone type, so an rhod-100? 200? 300? etc.
and tell me what you prefer more, an good battery life and an stable running system without camera support OR less stable system, bad battery life but with camera support.
Tell me and i will help you
Click to expand...
Click to collapse
Uhm... You no longer have to choose. WisTilt2 pulled the latest commits from GIT into his test kernel.
arrrghhh said:
Uhm... You no longer have to choose. WisTilt2 pulled the latest commits from GIT into his test kernel.
Click to expand...
Click to collapse
yeah but if you activate the camera libs the phone wont go into deep sleep mode right? or is that fixed already?
shatred said:
yeah but if you activate the camera libs the phone wont go into deep sleep mode right? or is that fixed already?
Click to expand...
Click to collapse
Seems I was wrong about that. It was the other way around, if the libs are disabled the phone won't sleep.
However, with FRX05 there's no need for the libs. FRX05 + GIT kernel or WisTilt2's newest kernel is all you need for cam.
arrrghhh said:
Seems I was wrong about that. It was the other way around, if the libs are disabled the phone won't sleep.
However, with FRX05 there's no need for the libs. FRX05 + GIT kernel or WisTilt2's newest kernel is all you need for cam.
Click to expand...
Click to collapse
hmm yeah about that, i tried frx05 with wistilt2 latest kernels but it doesnt work for me, i think its an problem with my user conf... can you perhaps send me your user conf from frx05?
shatred said:
hmm yeah about that, i tried frx05 with wistilt2 latest kernels but it doesnt work for me, i think its an problem with my user conf... can you perhaps send me your user conf from frx05?
Click to expand...
Click to collapse
Same for FRX04... It's in my bundle.
If you remove all of the ln -s and bind mounts, should work just fine...

[Intensive Guide] Discovering your Mimmi -In progress-

For the Moderator who moved this thread, please contact me.
Click to expand...
Click to collapse
I am currently working on this: It is a work in progress. Many things will be updated as this goes on. I will publish it before it is ready mainly for you to know that I am doing this and to delete it before it is too late if you think it just isn't as good as I imagine it .
It could be useful to note that the dictionary may not be exactly correct, I can make mistakes and you can correct me too, if you are sure of what you say. Also, keep in mind that I define the concepts by what I understand from them and simplifying the language as much as I can for EVERYONE to understand every word.
Click to expand...
Click to collapse
Credits:
ShortFuse.org - SuperOneClick
ClockWorkMod Installer - rect2409, xda user
Contents:
1. Introduction
2. Dictionary -In permanent update as needed-
3. Getting started
/3.1 - Rooting
/3.2 - Getting your Recovery - CWM Recovery
/3.3 - Avoiding Baseband issues --Uncomplete--
1. Introduction:
Hey there, x10 Mini Pro community. First of all, the cheesy part, I would like to say thanks to the developers that have been in the main scenario since I came here, D4, slade, paul, nAa, TheMiltos, and lots of them whose usernames I should start looking for, but it is not like I do not recognize them. First, you may ask why would I make this thread if there is already another one, made by not less than one of the users I mentioned before. Well, I started on this community like on January 2011, when slade's Gingerbread was brand new and the Froyo ROMs were just getting a bit stable and ready for everyday use. I found it pretty difficult to start, since I've noticed that the support for newbies isn't kinda.. "the way" of xda. At least, when I was one of them, I felt pretty alone on this unknown roads, and also felt guilty to send a PM asking for help, not being able to post - and that was just when I finally decided to create an account... I spent hours and hours searching on Google, watching videos on Youtube, trying to understand what did they meant with all this technical language -disregarding the fact that my native language doesn't help at all (Luckily, my English is pretty good)-, reading blogs, and so on. I had to keep this intensive study for several weeks to, finally, get my very first custom recovery installed. And that was just the first step. Besides my own experiences -which are, by the way, the main reason for me to start thinking about a thread like this-, I noticed that all the particular problem solution threads just get lost within a month.
So, what am I looking for with this thread? What are the objectives?
-Full and friendly support for newbies to ask and be answered.
-Freedom to PM.
-Detailed step-by-step instructions, maybe even with screenshots later on.
-Some kind of a "dictionary" with words all over the Android development spectrum.
-Updated information.
-Make all of those lost tutorials and guides spread all over the x10 Mini Pro forums be compressed in one simple and extensive help center.
-End with the experienced ones complaining about newbies questions infinite cycle by creating this "encyclopedia".
-Maybe, just as an early idea, we could create a support team, whose purpose is pretty self-explanatory.
-Hope to add more objectives on the future.
2. Dictionary:
-Android Versions: Check Wikipedia for closer details on each version.
--> Cupcake 1.5: First public version of Android.
--> Donut 1.6: Initially the Stock version for our phones.
--> Eclair 2.1: Updated Stock version for our phones.
--> Froyo 2.2: Follow up to Eclair with some modifications
--> Gingerbread 2.3.x: Most widely used version by the moment.
--> Honeycomb 3.x: Version mostly for tablets
--> Ice Cream Sandwich: 4.0.x: Hybrid version, designed to unify Cellphones and Tablets OS.
--> Jelly Bean 4.1.x: It is still a rumor and it has not be released nor even confirmed yet, but it is still very likely to be true.
-APK: File extension used for Android-based applications. You can use them to install a specific application if you want to install it manually and not from the Market.
-Back-Up: It is a file made via Recovery that saves the ROM along with all the user data (Settings, applications, contacts, text messages...) on your SD to recover it later, just in case that something went wrong. It is sometimes referred as NAND Backup. NOTE: Every Back-Up is pretty heavy, and if you make another does not delete the previous one, so I recommend to delete the old/unneeded ones to save space on your SD.
-Boot: To turn on your phone.
-Bootloader: It is a part of the operating system that boots up your device and sets everything up to load Android, so your phone can boot and start as usual. Unlocking it allows us to flash custom kernel, which usually come with improvements compared to stock one.
-Brick: A Bricked device is a device that won't boot. It can be a full brick, when the phone just does not turns on, or a partial brick, where it turns on but it can not get to fully boot. A partially bricked phone can behave in many different ways while booting, for example, sometimes they get frozen at the Bootloader or sometimes they make a Bootloop. To Unbrick your phone means to get it back to normal from this state.
-CyanogenMod: Most commonly called by it's abreviation, CM. It is the most famous Android-based custom ROM, with both official ports to many devices and unofficial ports to almost every Android phone.
-Flash: To flash. It means to install something on your phone, this something can be a ROM, a Module for that ROM, can be almost anything. Any file we want to flash will be on a ZIP format, and it is made through your phones Recovery.
-Google Apps: Or GApps. Some of the apps developed by Google. They come in packages to flash them via Recovery. These apps include Android Market/Play Store, Google Maps, Youtube, Gmail, etc.
-Launcher: It is the application that is used by Android to show up your apps, homescreens, wallpapers, widgets, etc. Home Replacement Apps are alternative Launchers for you to install on your phone, and they can offer a major UI change (often used for more personalization).
-Overclocking: Commonly abbreviated OC. To overclock something means to make it run faster than the default speed set by the manufacturer. On computers, it can be applied to almost any component, on phones, it almost always is talking about the processor.
-OS: Short for Operative System. It is the "everything" of a computer. Mac and Windows are two really famous OS's you probably have used more than once. Well, Android is an OS too, and there are other OSs alternatives for phones too like Windows Phone, iOS and Symbian. The difference is much more than in the appearance thou, but it doesn't really matters to go further on this. Android haves different versions, and just like Windows haves Windoes 97, Windows XP, Windows Vista or Windows 7; Android has 1.6 Donut, 2.1 Eclair, 2.3 Gingerbread and 4.0 Ice Cream Sandwich (These are just examples, there are more).
-PC Companion, Flashtool, SEUS:
These are three common tools for your computer to update, flash or un-brick (alias revive) your phone.
--> PC Companion: Program by Sony Ericsson to update and save your Rom or parts (settings etc.) or to send media on your device
--> Flashtool: User-made program (credits to Androxyde and Bin4ry) to root, flash and set up many more things on your device.
--> SEUS (or Sony Ericsson Update Service): Program by Sony Ericsson to update or repair your official ROM. This is often the last chance to revive your bricked device, making me think if the "S.E.U.S." acronym is unintended or if it is actually made it to sound like the mythical god Zeus.
-Port: A ported ROM is a ROM, both custom or stock, that is available to some specific phone and someone manages to make it work for another device. Usually it includes changes like matching the desired device's screen and supporting it's own hardware.
-Reboot: Just turning off your device and then turning it back on, waiting patiently for it to completely load everything.
-Recovery: I usually call it a BIOS for my phone. It is not an application like Facebook or SMS, it is a program that can be optionally started while booting by pressing a certain key, in our case, we have to button-mash the "Back" button (Gamers will get that, it means to repeteadly tap the button). Your phone will enter a menu with black background and orange letters. Touch screen is not available here and the Menu button, the left one, serves no purpose at all. To control everything, you use the volume buttons at the side of your phone as Up/Down respectively, the Home button (the middle one) works as Enter and the Back button, the right one, is used to go back, as you might imagine. Recoveries are used to flash any flashable file to your phone. To exit and return your phone to normal, just back until the main menu and select Reboot Phone. It will reboot normally, and CWM will not show up unless you call for it with the back button.
-ROM: Its basically the OS that we install in our phones. It can be Custom or Stock: Stock ROM is the version that came with our phone, created by Google and then modified by your phone's brand company and then by your carrier, to go to your phone on it's original closed package. Also we have Custom ones, that are user-modified versions of Android. Every ROM in xda is a Custom ROM because they are developed by the user who uploaded it. We call it ROM because it resides in the ROM (Read-Only Memory) of our devices.
-Root: The first thing you must do over any Android device to get the full potential of itself, is rooting. Android, in basic terms, is based on Linux. Yes, that OS for computers you've probably heard of (If not, don't worry. You don't need to know about it.). And it is running just in your hand. On Linux, you need to get SuperUser permissions over a set password to make changes on the computer like installing programs and such things. On Android, you do not get his password and by default it is blocked, and rooting your phone means that you get this SuperUser access. Yes, if you are the one who goes exploring the phone 'till the last folder and modifying everything you possibly can, you will surely mess your phone up. But don't worry, if you just Root your phone and let TRUSTED apps to do their stuff, you are safe. What do I mean by trusted? With Root permissions you can do whatever you want on your phone, and so do Applications. You should just install applications whose developer you know you can trust, such as xda or market developed applications. Remember to always check the comments or posts people do reviewing their experience with that application, and beware if anyone tells so. Anyways, people is not that dumb and they have made the phone ASK for your permission before giving any new app the so called Root access.
-Run: To open a certain program or app. Can be used as "Running" for a certain program or app that is actually open, and so on.
-Stock: It refers to something that comes pre-installed on our devices, available when we just get them from the manufacturers.
-UI: The User Interface is the system shown on the screen of a device for you to interact with it.
-Undervolt: Usually abbreviated UV. It is the opposite of Overclocking, and, on phones, it consists of lowering the default voltage of the processor to make it run slower and thus decrease battery consumption.
3. Getting Started:
3.1 - Rooting
Steps:
-You can't imagine how easy and quick rooting can be. The first step, is to enable "USB Debugging" on your phone. I am going to be honest, I don't know what the **** is this, but keep it enabled. Always. Hehe. To do this, go to Settings and then under the Applications tab. Then, scroll down and go to Development. And there it is, you should tap "USB Debugging" once to get it checked and activated.
-Then, you need this software (Don't worry: it is free and very light, and you can just delete it after root). It is called SuperOneClick and this is the lastest version (2.3.3) until now. This is a screenshot of the interface that I grabbed from the original site. Install and open SuperOneClick, and continue to the next step.
-Now, with the USB Debugging enabled on the phone and SuperOneClick running on your computer, grab your USB cable that should have come along with your phone as your charger and connect with it your PC and your phone. On the phone it should show a message asking what to do, you should tap the option to charge the phone (This option is kinda "do nothing", it is the same as charging it from the wall). Now, go to SuperOneClick and click the big "ROOT" button. It should do all the work, so your task is to wait. Wait until it says it is ready and rooted, and then reboot your phone.
-Voile! Your phone is now rooted.
3.2 - Getting your Recovery - CWM Recovery
Steps:
-First, download this little program. It is a small Batch file (Commands for Windows) made by a user on this community called rect2409. On the original thread -Link under credits- you have a Linux version of this program, but I'm afraid have never used it and you will have to figure it out by yourself (Linux experienced-users encouraged to review over here). Extract the ZIP file and go into the folder you just extracted.
-Open install.bat. Batch files can be dangerous on the wrong hands but very useful on the right ones, so if any anti-virus or some kind of a security system tries to block this from working, tell them it is safe. You have my word (It wasn't even uploaded by me, so you can be sure I'm doing no trick here ). It will open a small black window with white text, follow it's instructions and answer it's questions. When it asks you for yes or no (Y/N), you have to write Y for yes or N for no and then press enter.
-When it says "If no errors are listed above then CWM has been installed. Finished.", you can close the window and delete everything you downloaded if you want. Everything you need on your phone is now there, so there's no problem if you want to delete this stuff.
-If you want to access CWM (That's how your new Recovery is called), you have to reboot your phone and at the "Sony Ericsson" text screen, press the "Back" button several times.
3.3 - Avoiding Baseband issues --Uncomplete--
Intro:
Your Baseband is a pretty large code that can be checked on your phone by going to settings and scrolling sown to "About phone". There, just like it says your Android version on a grey section, it should say your Baseband version on another. It should be a large code using both letters and numbers in a format like this ?????-????????-????? (? representing anything and - being itself, whatever it is called -I don't know it's english name-). What really matter are the last three digits, that have to be -015. If you have that, skip this step, because you are already done: The problem is when you have -006 (Like I had) or anything else, if it is possible. The point is that you NEED -015 Baseband version.
Steps:
-Of course, first make sure you have a wrong version of the Baseband, if you have the correct one, skip section.
-When you are sure you need to change your baseband, you have to change your "build.prop". Build.prop is a file hidden by the system, accessible via Root, that holds and manages some information and configuration about the phone. So, the first thing you need to do, is to get...
---To be continued---
Users who have helped:
karthiks.840 - ImInMunichBitch -
Click to expand...
Click to collapse
For Dictionary,
-ROM: Its basically the OS, we call it ROM because it resides in the ROM of our devices.
-Flashing: To install a new ROM. Basically any ROM will be in a zipped format. It can be flashed via any "Recovery".
-Recovery: A piece of program that can be optionally started on booting (In our devices by pressing "Back" button multiple times, when the device is turned on)
Just a quick suggestion: Everything you so far wrote is also applicable to the Robyn (X10Mini, E10i). If you keep it this general, you might consider posting this in the General Section, and maybe a mod could make it a sticky. Since this is not really about actual development, it looks kind of out of place in the development thread.
But keep up the good work
@nico444164: Thanks nico444164! This is probably the BEST thing I have ever seen on XDA - and I've been here since Mikevhl 's FroYo rom early 2011 (he was one of the main devs for x10 mini Pro) , followed by owain94 , slade87 , and paul-xxx who all slowly took over (over their predecessor's) one after another, slowly. I've never seen such a noob-friendly guide here at xda and I agree with your sentiment about it just not "being the way" it is here at xda. Frankly, it should be though and this thread by you is a hopefully a good indicator of/catalyst for xda slowly changing for the better. Cheers nico444164!
Suggestions for dictionary:
CyanogenMod:
Most famous Android-based custom rom of all times with many official and unofficial ports for many Android devices.
Brick:
Device doesn't boot anymore (fullbrick) or partially (halfbrick --> often bootloop to SE logo). Caused by wrong or incompatible changes in system related parts of Android (or many others as we know by now).
Stock:
--> Stock Rom: the operating system of our devices, how we get it from the manufacturer
--> Stock Kernel: same as Rom
Bootloader:
That part of the operating system, which boots up your device and sets everything on boot, so your Android can work as usual.
Unlock it allows us to flash custom kernel with improvements compared to stock one.
PC Companion, Flashtool, SEUS:
All three are tools for your computer to update, flash or revive your phone.
--> PC Companion: Programm by Sony Ericsson to update and save your Rom or parts (settings etc.) or to send media on your device
--> Flashtool: custom programm (credits to Androxyde and Bin4ry) to root, flash and set up many more things on your device
--> SEUS (or Sony Ericsson Update Service): Programm by SE to update your official rom (often the last chance to revive your bricked device)
Back Up:
Same as on a computer; saves the rom and its settings on your SD to recover it, when something went wrong (all usually via Recovery).
Android Versions:
--> Eclair 2.1: Stock version for our phones
--> Froyo 2.2: Follow up to Eclair with some modifications
--> Gingerbread 2.3: Mostly used version for our custom roms
--> Honeycomb 3.x: Version mostly for tablets
--> Ice Cream Sandwich: 4.x: Hybrid version for phones and tablets
APK:
File extension used for android based applications, if you want to install them manually and not from the market.
Launcher, Home Screen Replacement:
The application that is used by android to show up your apps, homescreens etc. Replacement apps take over those things (often used for more personalization).
A2SD, APP2SD, Link2SD:
Apps that allow you to free up your system memory by moving (non system) apps to your SD. Many custom roms implemented this in native settings.
GAPPS:
Commonly used google apps. Often in packages to flash them via recovery after installing a custom rom.
(Market/Playstore, Maps, Youtube etc.)
OC, UV:
-->Overclock (OC): used to get higher cpu values (decrease battery life but may increase performance).
-->Undervolt (UV): used to get better battery life by decreasing the voltage used by the cpu.
Just a few suggestions for this thread here.
I like the idea, would be a good sticky to new users, because this forum is
so high under development that many users forget that new ones may never heard of basic android knowledge.
Corrections are always welcome, hope my english is not that bad
Keep it up.
Marius
karthiks.840 said:
For Dictionary,
-ROM: Its basically the OS, we call it ROM because it resides in the ROM of our devices.
-Flashing: To install a new ROM. Basically any ROM will be in a zipped format. It can be flashed via any "Recovery".
-Recovery: A piece of program that can be optionally started on booting (In our devices by pressing "Back" button multiple times, when the device is turned on)
Click to expand...
Click to collapse
Added! Just changed some words I just thought should make a section for the users that help. Will do that in a few minutes.
SmG67 said:
Just a quick suggestion: Everything you so far wrote is also applicable to the Robyn (X10Mini, E10i). If you keep it this general, you might consider posting this in the General Section, and maybe a mod could make it a sticky. Since this is not really about actual development, it looks kind of out of place in the development thread.
But keep up the good work
Click to expand...
Click to collapse
Actually, that rooting process is kinda global. I thought about making this post a bit more general, but I wanted to start by little and taking my time, so maybe in the future I will ask someone to change it to General and I will add some info about each phone in details, if this gets to grow enough.
Also, I thought maybe this wasn't the place since it is not development, but:
-As a noob, I just checked this thread since I thought the others were exclusive for the Robyn.
-This is still particular to Mimmi.
-I have seen several tutorials and guides related to this on the Mini Pro development section, so I thought that if I am not the only one and it doesn't really hurts to have it here, it should be no problem. Besides, if this didn't work and get to be a real fail, it will just be forgotten with every other old posts out there
nightwing369 said:
@nico444164: Thanks nico444164! This is probably the BEST thing I have ever seen on XDA - and I've been here since Mikevhl 's FroYo rom early 2011 (he was one of the main devs for x10 mini Pro) , followed by owain94 , slade87 , and paul-xxx who all slowly took over (over their predecessor's) one after another, slowly. I've never seen such a noob-friendly guide here at xda and I agree with your sentiment about it just not "being the way" it is here at xda. Frankly, it should be though and this thread by you is a hopefully a good indicator of/catalyst for xda slowly changing for the better. Cheers nico444164!
Click to expand...
Click to collapse
Thanks for your message and support! And yeah, I hope noobs can find their basic ways here on xda, at a single and simple thread, as you might have wanted. I did, at least It would be only better if we could include all this novice people into this real complex world of development, even just as users.
ImInMunichBitch said:
Suggestions for dictionary:
CyanogenMod:
Most famous Android-based custom rom of all times with many official and unofficial ports for many Android devices.
Brick:
Device doesn't boot anymore (fullbrick) or partially (halfbrick --> often bootloop to SE logo). Caused by wrong or incompatible changes in system related parts of Android (or many others as we know by now).
Stock:
--> Stock Rom: the operating system of our devices, how we get it from the manufacturer
--> Stock Kernel: same as Rom
Bootloader:
That part of the operating system, which boots up your device and sets everything on boot, so your Android can work as usual.
Unlock it allows us to flash custom kernel with improvements compared to stock one.
PC Companion, Flashtool, SEUS:
All three are tools for your computer to update, flash or revive your phone.
--> PC Companion: Programm by Sony Ericsson to update and save your Rom or parts (settings etc.) or to send media on your device
--> Flashtool: custom programm (credits to Androxyde and Bin4ry) to root, flash and set up many more things on your device
--> SEUS (or Sony Ericsson Update Service): Programm by SE to update your official rom (often the last chance to revive your bricked device)
Back Up:
Same as on a computer; saves the rom and its settings on your SD to recover it, when something went wrong (all usually via Recovery).
Android Versions:
--> Eclair 2.1: Stock version for our phones
--> Froyo 2.2: Follow up to Eclair with some modifications
--> Gingerbread 2.3: Mostly used version for our custom roms
--> Honeycomb 3.x: Version mostly for tablets
--> Ice Cream Sandwich: 4.x: Hybrid version for phones and tablets
APK:
File extension used for android based applications, if you want to install them manually and not from the market.
Launcher, Home Screen Replacement:
The application that is used by android to show up your apps, homescreens etc. Replacement apps take over those things (often used for more personalization).
A2SD, APP2SD, Link2SD:
Apps that allow you to free up your system memory by moving (non system) apps to your SD. Many custom roms implemented this in native settings.
GAPPS:
Commonly used google apps. Often in packages to flash them via recovery after installing a custom rom.
(Market/Playstore, Maps, Youtube etc.)
OC, UV:
-->Overclock (OC): used to get higher cpu values (decrease battery life but may increase performance).
-->Undervolt (UV): used to get better battery life by decreasing the voltage used by the cpu.
Just a few suggestions for this thread here.
I like the idea, would be a good sticky to new users, because this forum is
so high under development that many users forget that new ones may never heard of basic android knowledge.
Corrections are always welcome, hope my english is not that bad
Keep it up.
Marius
Click to expand...
Click to collapse
Adding them right now And about the last thing you said, yes, it is so hard to join this community as you may all know, at least for users with no knowledge at all over any complex computer language. I consider myself an advanced-user, and even as that I had troubles at getting started. I can't imagine how hard it would be for a non-geek to flash something on their phones! EDIT: Added!
A very good guide for newbies! Will help a lot of people here! Ah, the old days, I remember, the first time I tried installing xREC I messed up and it wouldn't boot, scared the **** outta me xD had to do some reasearch before I could get back to normal. So this would be of great help!! Keep up the effort!
P.S: debugging mode is actually development mode. It allows transfer of data between the PC and the mobile. That's how you are able to run adb commands ( things like rooting, pushing APKs etc.) through the PC onto the phone!
Sent from my U20i using XDA
Wow... The guide is so complete... Even I don't know what I can add there xD
Hmm... How about adding some simple default tricks ?
I found that several user are asking how to backup their data... How about telling them how to upload their phonebook data to gmail and backup their apps through titanium backup ?
I think we can have some "unlocking bootloader" infos in here, as latter ROMs need to have custom kernel installed...
You can refer about the steps to unlocking bootloader in here :
http://forum.xda-developers.com/showthread.php?t=1462278
Hope that helped everyone
speedsys said:
A very good guide for newbies! Will help a lot of people here! Ah, the old days, I remember, the first time I tried installing xREC I messed up and it wouldn't boot, scared the **** outta me xD had to do some reasearch before I could get back to normal. So this would be of great help!! Keep up the effort!
P.S: debugging mode is actually development mode. It allows transfer of data between the PC and the mobile. That's how you are able to run adb commands ( things like rooting, pushing APKs etc.) through the PC onto the phone!
Sent from my U20i using XDA
Click to expand...
Click to collapse
Yees! That old days haha! I did exactly the same, me and my friend got our pretty new phones bricked
, so we were kinda.. O.O! Oh, divine SEUS. And about the Debugging stuff, I will add it tomorrow - Its kinda 2am here and tomorrow is another fun Wednesday to keep the awesome routine, hurray.
StardustGeass said:
Wow... The guide is so complete... Even I don't know what I can add there xD
Hmm... How about adding some simple default tricks ?
I found that several user are asking how to backup their data... How about telling them how to upload their phonebook data to gmail and backup their apps through titanium backup ?
I think we can have some "unlocking bootloader" infos in here, as latter ROMs need to have custom kernel installed...
You can refer about the steps to unlocking bootloader in here :
http://forum.xda-developers.com/showthread.php?t=1462278
Hope that helped everyone
Click to expand...
Click to collapse
It is not a bad idea to add the tricks, but this is quite a big job and I would like to finish keep my objectives clear and then start thinking of adding something else haha And bout the bootloader, yes, it will be added, my plan is to cover every single change available to your phone from complete Stock, Rooting and Installing Recoveries already written. Next I will introduce Custom ROMs, flashing aditional features like Hotfixes or Modules for specific ROMs, unlocking Bootloader, Custom Kernels, and so on. And maybe reviews about the best ROMs for the user to choose from what he best likes. Something like that is what I have in mind by now.
Sent from my U20i using XDA
Install CWM : error: protocol fault (no status)
rooted xperia X10 mini.
USB debug on
phone connected to pc in charge mode.
When I run install.bat for CWM (3.2 in manual), I get an error during first exploit. Here's the complete trace from install.bat:
Code:
ClockWorkMod Recovery Installer for X10 Mini Pro by rect2409.
Requirements and credits are listed in the README.txt file.
Please make sure requirements are met before continuing.
Please make sure that your phone is connected to your PC and USB debugging is en
abled.
Press any key to continue...
Is your device ROOTed? (Y/N):y
Starting ADB Server.
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
Pushing exploit to gain ROOT access.
426 KB/s (585731 bytes in 1.341s)
error: protocol fault (no status)
Mount system as R/W.
Do you already have a recovery installed? (Y/N):n
Pushing recovery tar file.
1898 KB/s (5027840 bytes in 2.586s)
Pushing chargemon.
130 KB/s (1341 bytes in 0.010s)
Pushing busybox.
2175 KB/s (735308 bytes in 0.330s)
Setting permissions for recovery tar file.
Setting permissions for chargemon.
Setting permissions for busybox.
Mount system as read only.
Reboot phone.
Stopping ADB Server.
If no errors are listed above then CWM has been installed.
Finished.
After the error is displayed, I got sounds on my pc and phone just like when I disconnect usb then reconnect it. Then the program continue (ask whether a recovery is already installed).
I don't think CWM has been installed: actually, when i press back many times on my phone while starting, nothing happens : normal boot from SE.
Can anybody help ?
Looks like you haven't got the adb drivers so its not actually pushing anything. Can't remember how to install the, now but I think its a package included in flash tool that you use.
X10man
Sent from my Nexus 7 using xda premium
x10man said:
Looks like you haven't got the adb drivers so its not actually pushing anything. Can't remember how to install the, now but I think its a package included in flash tool that you use.
Click to expand...
Click to collapse
I have installed drivers found in flashtool drivers 1.0.2, but still get that same error :
Code:
Pushing exploit to gain ROOT access.
1111 KB/s (585731 bytes in 0.514s)
error: protocol fault (no status)
Please help.

[Q] Cooking ROMs... I still don't get it

Hello,
I'm willing to try and build a custom rom, but I've been diving through the site for a few days and I still don't get it. I believe I do have the required background to do this: programming, linux, etc. and I have wide experience as a phone user, etc. It's just that either I'm not reading what I need or the way I want it. The problem, I believe, is that all I find are guides telling me to install this and those tools and then open this and that and voila! you got your rom. But they're not explaining WHAT exactly goes into those roms, or what is expected to go there, what's the purpose of those contents, etc., and I can't really catch with that. I feel at a loss and hate wasting my time turning around for nothing.
1. I don't understand the difference between a flashable rom and one that is meant to be installed through recovery, although I can see they're different. Do they both models contain the same kind of data? Is there any restriction to what one model can contain over the other one? If so, how would I convert from one to the other? But please, don't tell me to use this or that tool. I just need the theory behind it. Something of sorts like: "You need to extract this or that from this tarball, then mount this image, then the directory tree there goes in that directory over the other model of rom"
2. update-binary: Okay I guess this is run when installing from recovery, and this takes care of installing the rom, right?wrong?. Is this a per-rom thing, per-device thing? generic? If it's per-rom, how to generate it? do I need to compile something? Is there any generic source code that can be used as a start?
3. Although I have a basic understanding of how the Linux directory tree works, I know Android works on top of a heavily modified Linux. So can you explain briefly how the directory tree works? For instance, I believe /data/data is where Android apps install to, in /system/bin or xbin I can find busybox binaries/symlinks if present. /dev and /proc look the same as in Linux. I don't know about /sys. Also how are both rom models deployed to this tree? What is basically being copied?
4. If I were to compile a kernel, where do I find the Android kernel sources? or is it just a generic Linux kernel? where can i get a basic config for the device? Last time I checked my device hadn't /proc/config.gz but maybe I could get it from another rom with it enabled or something. What toolchain and where to get it? Oh and if you know of a native arm version of gcc or whatsnot, I'd prefer that. Setting up IDEs or toolchains is a nightmare. I don't like crosscompiling. But crosscompiling or not, a directory with all needed binaries without needing to set up system variables nor other stuff, would be amazing.
I surely have a lot more questions that I can't get from the back of my mind now, and I'll have yet more as you explain. But the point of my questions was mainly trying to explain the degree of the loss I'm at, so you can assist me better.
If it looks like a foolish petition, well, that's because I'm quite stubborn and can't catch things that don't go my way. I really need to understand the basics before I can move into actually doing something. I want to build a rom for the right reasons(to me). It's not just about packing a set of apps or themes with it, but about learning and doing other stuff like trying to fix things that are not supposed to work for the device in that Android version, etc.
If you can't help, congrats for reading through here anyways But any help is greatly appreciated :good:
oxiroxt said:
Hello,
I'm willing to try and build a custom rom, but I've been diving through the site for a few days and I still don't get it. I believe I do have the required background to do this: programming, linux, etc. and I have wide experience as a phone user, etc. It's just that either I'm not reading what I need or the way I want it. The problem, I believe, is that all I find are guides telling me to install this and those tools and then open this and that and voila! you got your rom. But they're not explaining WHAT exactly goes into those roms, or what is expected to go there, what's the purpose of those contents, etc., and I can't really catch with that. I feel at a loss and hate wasting my time turning around for nothing.
1. I don't understand the difference between a flashable rom and one that is meant to be installed through recovery, although I can see they're different. Do they both models contain the same kind of data? Is there any restriction to what one model can contain over the other one? If so, how would I convert from one to the other? But please, don't tell me to use this or that tool. I just need the theory behind it. Something of sorts like: "You need to extract this or that from this tarball, then mount this image, then the directory tree there goes in that directory over the other model of rom"
2. update-binary: Okay I guess this is run when installing from recovery, and this takes care of installing the rom, right?wrong?. Is this a per-rom thing, per-device thing? generic? If it's per-rom, how to generate it? do I need to compile something? Is there any generic source code that can be used as a start?
3. Although I have a basic understanding of how the Linux directory tree works, I know Android works on top of a heavily modified Linux. So can you explain briefly how the directory tree works? For instance, I believe /data/data is where Android apps install to, in /system/bin or xbin I can find busybox binaries/symlinks if present. /dev and /proc look the same as in Linux. I don't know about /sys. Also how are both rom models deployed to this tree? What is basically being copied?
4. If I were to compile a kernel, where do I find the Android kernel sources? or is it just a generic Linux kernel? where can i get a basic config for the device? Last time I checked my device hadn't /proc/config.gz but maybe I could get it from another rom with it enabled or something. What toolchain and where to get it? Oh and if you know of a native arm version of gcc or whatsnot, I'd prefer that. Setting up IDEs or toolchains is a nightmare. I don't like crosscompiling. But crosscompiling or not, a directory with all needed binaries without needing to set up system variables nor other stuff, would be amazing.
I surely have a lot more questions that I can't get from the back of my mind now, and I'll have yet more as you explain. But the point of my questions was mainly trying to explain the degree of the loss I'm at, so you can assist me better.
If it looks like a foolish petition, well, that's because I'm quite stubborn and can't catch things that don't go my way. I really need to understand the basics before I can move into actually doing something. I want to build a rom for the right reasons(to me). It's not just about packing a set of apps or themes with it, but about learning and doing other stuff like trying to fix things that are not supposed to work for the device in that Android version, etc.
If you can't help, congrats for reading through here anyways But any help is greatly appreciated :good:
Click to expand...
Click to collapse
I am not terribly knowledgeable about all of this, but I will take a crack at it. Others can feel free to correct me.
1. "Flashing" is usually done through the recovery from a zip with an update script inside. That script is in a language called "edify". Read more about Edify Here and Here.
The only other common way that I know of installing a ROM is through fastboot in the bootloader, but that is normally only used with official factory images. Also, I think Samsung ROMs are often flashed with a proprietary program called Odin.
2. I think that the update-binary is standard across all recent devices. I think it is just an interpreter for the Edify scripting language. Old versions of android used a somewhat different scripting language and required a different file. You can probably pull the binary out of another recent zip and use that. The main thing you have to worry about is the update script (instructions for what the zip does) and the folder structure of the zip.
3. I am not confident to explain much here, but the apps and their data are stored in different places. User apps are stored in /data/app with app data stored in /data/data, I think. System apps are installed in /system/app. There is more files stored on the "sdcard" partition which can be internal or external, depending on the device.
4. Kernel sources are usually provided in the source code from whatever repo you are using. Different ROMs use different bases. Here is some info about grabbing the AOSP kernel sources with git: http://source.android.com/source/building-kernels.html
Many of the more popular ROMS have specific build instructions on their individual github pages (Cyanogen, Paranoid Android, etc), so you might what to look at those, too. Also, depending on the individual devices, there might be proprietary binaries sourced from the device or hardware manufacturers for things like camera drivers, graphics chips, etc.
If you want a walk through of the basic build process google has a tutorial. The last time I checked there seemed to be some outdated info, but it might give you a general idea of the build process. http://source.android.com/source/initializing.html
Hopefully someone more knowledgeable can give you more info, but that is all I got
synesthete said:
I am not terribly knowledgeable about all of this, but I will take a crack at it. Others can feel free to correct me.
1. "Flashing" is usually done through the recovery from a zip with an update script inside. That script is in a language called "edify". Read more about Edify Here and Here.
The only other common way that I know of installing a ROM is through fastboot in the bootloader, but that is normally only used with official factory images. Also, I think Samsung ROMs are often flashed with a proprietary program called Odin.
2. I think that the update-binary is standard across all recent devices. I think it is just an interpreter for the Edify scripting language. Old versions of android used a somewhat different scripting language and required a different file. You can probably pull the binary out of another recent zip and use that. The main thing you have to worry about is the update script (instructions for what the zip does) and the folder structure of the zip.
3. I am not confident to explain much here, but the apps and their data are stored in different places. User apps are stored in /data/app with app data stored in /data/data, I think. System apps are installed in /system/app. There is more files stored on the "sdcard" partition which can be internal or external, depending on the device.
4. Kernel sources are usually provided in the source code from whatever repo you are using. Different ROMs use different bases. Here is some info about grabbing the AOSP kernel sources with git: http://source.android.com/source/building-kernels.html
Many of the more popular ROMS have specific build instructions on their individual github pages (Cyanogen, Paranoid Android, etc), so you might what to look at those, too. Also, depending on the individual devices, there might be proprietary binaries sourced from the device or hardware manufacturers for things like camera drivers, graphics chips, etc.
If you want a walk through of the basic build process google has a tutorial. The last time I checked there seemed to be some outdated info, but it might give you a general idea of the build process. http://source.android.com/source/initializing.html
Hopefully someone more knowledgeable can give you more info, but that is all I got
Click to expand...
Click to collapse
OMG Finally some light! THANK YOU, THANK YOU, THANK YOU for all the info. I didn't get much right now, I'll need to read through your post a few times before I get it all, haha. I'll be sure to check the links too. Thank you!

[ROM][27Aug][GNU/Linux] Sailfish OS 1.1.6.27 (community port)

Announcing Sailfish for the Sony Xperia SP
This is not Android!
This should be thought of as a development experiment. It may be useful if you are a developer and want to write/port apps the the Sailfish operating system. It is not an end-user product, however, if you wish to experiment and try something different then feel free!
Please do not contact Jolla Care or Jolla Developer Care, as this is not the Jolla phone
Update 15 Feb 2016
I've uploaded a new version of SailfishOS 2.0.0.10 to the Mega folder, called sailfishos-huashan-release-2.0.0.10-1.zip. This is again based off CM-12.1, the same release as stated below. This release fixes a kernel bug which lets a lot of the Sailfish system crash. This also fixes the wlan connectivity, startup-wizard which sets the themes, on-screen keyboard not popping up, and SIM unlock never asked. I've got a fix for the backlight in the works.
Update 14 Feb 2016
A very experimental CM-12.1 based SailfishOS 2.0.0.10 build is uploaded to the Mega folder linked below.
This version is based off cm-12.1-20160212-NIGHTLY-huashan.zip. I want to stress that many things in this build are broken.
Update 05 Feb 2016
This port is heavily outdated. I do not have much spare time on my hands to continue porting but I will try to post a nightly version soon.
This version was based on Sailfish 1.1.6 and CM-11.0, but the world has moved on to Sailfish 2.0 and CM-12.1, and so must this port.
There's a photo up on imgur:
http://i.imgur.com/Vg3SZ6w.jpg
Special thanks to:
All Cyanogenmod devs, since SailfishOS uses drivers from Cyanogenmod to talk with the phone's hardware
Everyone from the SailfishOS team/community, sledges and mal- in particular.
Known issues:
Half the backlight doesnt work, this is clearly visible at the top of the screen
Bluetooth isn't turned on, cause i've put no effort in for that so far
Camera doesn't work, cause it's not hooked up to interface.
No recovery inside hybris bootimage (you need to flash manually to return to cm/use recovery)
Settings hangs for few seconds on first start (this seems to be related to bluetooth not being set up)
What works:
Texting, calling, data over mobile network (2g and 3g tested, 4g should work but is untested)
Wifi, GPS (does take a while to get a fix though), most of the sensors (proximity, lightsensor etc)
The half of the display backlight that does work is adjusted based on lightsensor input.
Charging, bottom ledbar basic functionality, audio works, audio via 3'5 jack also works.
Installation:
Insert default warranty void message here. Your warranty is now void
I have not tested this on locked bootloaders, but since I needed to modify the kernel, I guess that you need an unlocked bootloader.
Note this is not an offical Sailfish OS build, and the Xperia SP is not the Jolla phone, so please don't report bugs to Jolla. If you want to report a bug, search for it first on bit.ly/port-bugs, if your bug is not yet there, you can add it there or post it in this thread (I'll try to keep the xda thread and bugzilla in sync).
The Sailfish OS image does not provide recovery, and since the Xperia SP does not have a recovery partition, you need a seperate bootimage with only recovery on it to flash cm/stock/sailfishos upgrade.
The Sailfish OS image is based on a specific version of Cyanogenmod 11, which you will need to flash first.
You can find all the required files in a Mega folder: http://mega.nz/#F!7YhSTDIA!Akpjs8s3qT5_nEkN04fQ-Q
You can find a bootimage with only TWRP recovery in it called recoveryboot.img
This image can be flashed with fastboot (with phone turned off, hold vol up and plug in usb), then `fastboot flash boot recoveryboot.img`. After that reboot the phone (fastboot reboot), and it will boot into recovery. If you already have recovery from cm, then you can use that as well.
First do a full wipe (make a backup first if needed, TWRP can do this , then install CM11, the specific version you need is called: cm-11-20150712-NIGHTLY-huashan.zip
There is no need to reboot cause you wont use CM11 anyway, so just proceed and flash the Sailfish OS image, which is called: sailfishos-huashan-release-1.1.6.27-UNOFFICIAL-maikel-201508201214.zip
Flashing Sailfish OS is not as fast as flashing cm11, but it shouldn't take more than 10 minutes.
Then reboot. The first boot may take some time, during which the Sony logo is not displayed (WIP).
If the boot takes more than, lets say five minutes, try a reboot. You can power off the device by holding the power button until the LED bar turns red or the display brightness goes back to full, when the leds and display turn off the device is powered off.
If this doesn't work you can remove the back cover and press the little button in the little hole for 5 seconds, the device will vibrate thrice and the phone will be forced off.
If you want to return to your previous rom or restore a backup, use the recoveryboot.img using the commands stated at the top of this document, to boot into TWRP.
FAQ
You can find a FAQ which mentions most common user questions for SailfishOS here: http://forum.xda-developers.com/jolla-sailfish/general/qa-sailfish-n4-thread-devices-t2727330 . It's mainly aimed to the Nexus 4 and 5, but it's fairly applicable for all other ports as well.
Sources
In order to comply with the GPL, the kernel sources used for this port are available here:
CM-11.0 based port: https://github.com/maikelwever/android_kernel_sony_msm8x60
CM-12.1 based port: https://github.com/maikelwever/android_kernel_sony_msm8960t
edit: make links + sailfish 2.0 notice, kernel sources, 2.0 link
You rock! Very interesting project. Sailfish is an unknown world for me (and for most of us I think), I might try this ROM out sooner or later.
Why do we need to install CM11 first? Is it based on it?
Goob job bro!!!!
But I'll try this port later since it's kinda buggy
Hope you will fix those bugs.
Tomoms said:
Why do we need to install CM11 first? Is it based on it?
Click to expand...
Click to collapse
SailfishOS uses libhybris to communicate with the hardware, which in turn is talking to the Android HAL (like hwcomposer), to avoid having to write drivers for each phone, which would be pretty much impossible due to the proprietary blobs used on almost every phone.
The libhybris build included in this SailfishOS port is based on CM11, so that's why you need that.
CM12 based SailfishOS is currently experimental, when that gets more stable I will try to make a CM12 based build.
I tried the earliest version that was available on your git earlier this month, working great, just that it gets frustrating when Settings try to crash when you just opened and i just can't seem to install openrepos Warehouse from the command line...
boylush said:
I tried the earliest version that was available on your git earlier this month, working great, just that it gets frustrating when Settings try to crash when you just opened and i just can't seem to install openrepos Warehouse from the command line...
Click to expand...
Click to collapse
Installing packages from command line was fixed in the version linked in this thread. This had to do with some repositories that were unavailable (cause they pointed to local disk of buildmachine), causing zypper to hang on updating.
Those packages have been moved to the community buildserver, which hosts the packages online, thus fixing the hang you experienced while trying to install openrepos. If you still experience problems with the latest build: try a 'zypper rr adaptation0' before installing an app. If it complains about missing libsailfishapp, do a 'zypper ref' and try installing again.
Ninja edit: I'm considering bundling the openrepos warehouse with the zip, since I use it a lot myself as well, and we are in the process of enabling the official Jolla store (without Android support though), which should smooth out installing apps as well.
maikoool said:
Installing packages from command line was fixed in the version linked in this thread. This had to do with some repositories that were unavailable (cause they pointed to local disk of buildmachine), causing zypper to hang on updating.
Those packages have been moved to the community buildserver, which hosts the packages online, thus fixing the hang you experienced while trying to install openrepos. If you still experience problems with the latest build: try a 'zypper rr adaptation0' before installing an app. If it complains about missing libsailfishapp, do a 'zypper ref' and try installing again.
Ninja edit: I'm considering bundling the openrepos warehouse with the zip, since I use it a lot myself as well, and we are in the process of enabling the official Jolla store (without Android support though), which should smooth out installing apps as well.
Click to expand...
Click to collapse
OMG Sailfish uses zypper? I must try this thing ASAP!
Can we install Android apps in it somehow?
Tomoms said:
OMG Sailfish uses zypper? I must try this thing ASAP!
Can we install Android apps in it somehow?
Click to expand...
Click to collapse
Yes Sailfish uses zypper, and also has pkcon (from PackageKit) available as a frontend. Sailfish is based on Mer, which is it's own Linux distro, so don't expect the huge amount of packages that are available on desktop Linux systems that use zypper. Multiple community members provide repositories with builds of common unix tools that are not bundled by default (openrepos) though. As far as I know, Mer is closest to OpenSUSE with the package guidelines (I'm no expert on this though).
Android apps are supported on the official Jolla hardware using AlienDalvik. AlienDalvik is proprietary and not gratis software and thus not available for community ports like this one. I just added a link to a XDA thread with a Sailfish user FAQ to the startpost, which goes into this subject in more detail and provides anwers to other common questions.
There are multiple community projects going on to provide support for running Android apps, which I'll look into when all the Sailfish native stuff works properly.
There's apkenv, which is a very basic way to run some Android games on Sailfish ports.
There's some way to run full Android in a chroot and pipe the UI to a Sailfish app window.
And then there's shashlick, from the KDE team, which tries to map Android UI to QT.
I have not tested any of these three (yet), and there may be more options than this available.
maikoool said:
Yes Sailfish uses zypper, and also has pkcon (from PackageKit) available as a frontend. Sailfish is based on Mer, which is it's own Linux distro, so don't expect the huge amount of packages that are available on desktop Linux systems that use zypper. Multiple community members provide repositories with builds of common unix tools that are not bundled by default (openrepos) though. As far as I know, Mer is closest to OpenSUSE with the package guidelines (I'm no expert on this though).
Android apps are supported on the official Jolla hardware using AlienDalvik. AlienDalvik is proprietary and not gratis software and thus not available for community ports like this one. I just added a link to a XDA thread with a Sailfish user FAQ to the startpost, which goes into this subject in more detail and provides anwers to other common questions.
There are multiple community projects going on to provide support for running Android apps, which I'll look into when all the Sailfish native stuff works properly.
There's apkenv, which is a very basic way to run some Android games on Sailfish ports.
There's some way to run full Android in a chroot and pipe the UI to a Sailfish app window.
And then there's shashlick, from the KDE team, which tries to map Android UI to QT.
I have not tested any of these three (yet), and there may be more options than this available.
Click to expand...
Click to collapse
man i was waiting for this thing :fingers-crossed:
A small review of this OS:
The flashing process isn't very short, but in my case the OS booted in less than 30 seconds
There are only 10 - 12 installed apps: Settings, Contacts, Camera, Telephone etc.
The terminal emulator is fully-featured but it has got a bug: the screen orentation is the opposite of the real one (when the phone is horizontal, the terminal is vertical and vice versa). But as I've just said, it happens only in terminal.
WiFi doesn't seem to be working, but SIM card signal works (2G and 3G - no LTE); mobile data - I don't know.
The GUI is shiny and transparent and the whole OS is based on gestures. There's a little tutorial after the first boot thats help you understand how to use the phone fastly. I didn't open the Jolla store as I couldn't use mobile data at that moment.
During my 10-minute-long test, the screen randomly locked by itself; there is another bug: when the screen is locked, backlight doesn't turn off unfortunately.
A strange thing of Sailfish is that the app you're using is always fullscreen, there's no notification/status bar at all. The navbar also doesn't exist, as you can go back and to homescreen with gestures.
The developer mode is also interesting, it lets you connect to your phone remotely over the network.
Basically, this port of Sailfish at the moment is a very early alpha, but it's the dream of the geek: a full Linux experience with command-line package manager etc. I hope to see improvements in the future
will follow this thread closely...........
finally something new and different to use.
cheers
avi.singh9993 said:
will follow this thread closely...........
finally something new and different to use.
cheers
Click to expand...
Click to collapse
And now the Jolla Store should be enabled! \o/ Please try it out and tell us 
This looks really good, if it will ever be in daily driver state this will be my go to rom
sledges said:
And now the Jolla Store should be enabled! \o/ Please try it out and tell us 
Click to expand...
Click to collapse
yeah i would love to try, but i need my phone as a daily driver many important work related.
why don't you all post on official facebook page, i'm sure 90 percent people do not know about this and are willing to try and submit bug reports which in turn helps in faster development of this project.
avi.singh9993 said:
yeah i would love to try, but i need my phone as a daily driver many important work related.
why don't you all post on official facebook page, i'm sure 90 percent people do not know about this and are willing to try and submit bug reports which in turn helps in faster development of this project.
Click to expand...
Click to collapse
Why don't you post please? DIT - doing it together!
sledges said:
Why don't you post please? DIT - doing it together!
Click to expand...
Click to collapse
well i asked my friend to post it,
many people saw it but unfortunately not much of a positive feedback.
now it's onto developer and his hardwork to develop and make it atleast daily driver. then some people will be interested in trying it
Tomoms said:
A small review of this OS:
The flashing process isn't very short, but in my case the OS booted in less than 30 seconds
There are only 10 - 12 installed apps: Settings, Contacts, Camera, Telephone etc.
The terminal emulator is fully-featured but it has got a bug: the screen orentation is the opposite of the real one (when the phone is horizontal, the terminal is vertical and vice versa). But as I've just said, it happens only in terminal.
WiFi doesn't seem to be working, but SIM card signal works (2G and 3G - no LTE); mobile data - I don't know.
The GUI is shiny and transparent and the whole OS is based on gestures. There's a little tutorial after the first boot thats help you understand how to use the phone fastly. I didn't open the Jolla store as I couldn't use mobile data at that moment.
During my 10-minute-long test, the screen randomly locked by itself; there is another bug: when the screen is locked, backlight doesn't turn off unfortunately.
A strange thing of Sailfish is that the app you're using is always fullscreen, there's no notification/status bar at all. The navbar also doesn't exist, as you can go back and to homescreen with gestures.
The developer mode is also interesting, it lets you connect to your phone remotely over the network.
Basically, this port of Sailfish at the moment is a very early alpha, but it's the dream of the geek: a full Linux experience with command-line package manager etc. I hope to see improvements in the future
Click to expand...
Click to collapse
I agree totally that it's the dream of a geek. I've noted all your comments and will try to fix them. Thank you very much for taking the time to test!
Spasik said:
This looks really good, if it will ever be in daily driver state this will be my go to rom
Click to expand...
Click to collapse
That's what I'm aiming for too!
avi.singh9993 said:
yeah i would love to try, but i need my phone as a daily driver many important work related.
why don't you all post on official facebook page, i'm sure 90 percent people do not know about this and are willing to try and submit bug reports which in turn helps in faster development of this project.
Click to expand...
Click to collapse
Sorry, but I couldn't care less about Facebook. I'm pretty convinced that everyone that is willing to try something like this is already on XDA anyway. Hopefully the work related part will be better possible when Android app emulation or something similar finally makes it to community Sailfish builds.
PS: I've been a bit busy with other things lately, sorry for not responding that fast. I'll try to roll a build with fixes and the latest Sailfish (1.1.7.28) asap.
This has changed the mac of my device
can I ask how's the development going?
If someone could port the only rom i would like to be ported on the SP: ColourOS, it will be AMaZING

[How-To] Install Windows on Android version [YB1-X90L/F]

Hello guys!
I'm starting this thread as I managed to install win10 on my X90L (Android) YogaBook
It was not easy to find a way to fix the ACPI error but it is possible!
Will update this post in a few hours with a guide on how to do it yourself.
UPDATE: link to the guide -> poz1.com/windows-on-android-lenovo-yogabook/
PLEASE NOTE THAT IF YOU CONTINUE YOU WILL END UP WITH A YOGABOOK WITHOUT INPUT DEVICES!!!
(EXTERNAL KEYBOARD WILL BE NEEDED) AND NO ANDROID INSTALL!!!​
So far i got almost everything working except:
- Touchscreen
- Keyboard
- Webcam in the keyboard panel (the other one works fine)
- NFC
- Backlight Control (added 25/5/2018)
I'm getting very near to have the touch and the keyboard working though
P.s. In attach you find the outputs from 3DMark - IceStorm Extreme (default settings), would be much appreciated if someone with the real Win version shared its score
Any chance of posting you work to date. Got an X90F just crying out for Windows.
Broomfundel said:
Any chance of posting you work to date. Got an X90F just crying out for Windows.
Click to expand...
Click to collapse
I have added the link to the guide! If yo have any issues let me know but keep in mind that currently no input devices (touchscreen or keyboard) work!
Thanks for posting this. I am really so impressed. Will be trashing my X90F tomorrow. Just got to dig out a powered USB hub. Ill report back, and lets see what happens.
(Hopefully not a brick)
OK,
So far so good. I get to the amending of the of aml. But keep getting.
Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version 20180508
Copyright (c) 2000 - 2018 Intel Corporation
iASL: Segmentation Fault
iASL: Terminating
To clarify the process. Decompile the DSTDroid.aml, then insert the OperationRegion (GNVS, SystemMemory, 0x7B3CF000, 0x0369)
Field (GNVS, AnyAcc, Lock, Preserve)
{ etc.. } section from the DSTDroid.dsl and use it to replace the equivalent section in the DSTWin.dsl in your files.
Then compile the DSTWin.dsl with the
iasli -ta DSDTWin.dsl
command.
This is how I am reading it, but have not managed to get it to work yet.
It decompiles with the two errors you mention, but wont recompile no matter how I try it.
I am using Notepadd++ so its not hidden characters.
Any thoughts, and thanks again for your efforts on this.
Broomfundel said:
OK,
So far so good. I get to the amending of the of aml. But keep getting.
Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version 20180508
Copyright (c) 2000 - 2018 Intel Corporation
iASL: Segmentation Fault
iASL: Terminating
To clarify the process. Decompile the DSTDroid.aml, then insert the OperationRegion (GNVS, SystemMemory, 0x7B3CF000, 0x0369)
Field (GNVS, AnyAcc, Lock, Preserve)
{ etc.. } section from the DSTDroid.dsl and use it to replace the equivalent section in the DSTWin.dsl in your files.
Then compile the DSTWin.dsl with the
iasli -ta DSDTWin.dsl
command.
This is how I am reading it, but have not managed to get it to work yet.
It decompiles with the two errors you mention, but wont recompile no matter how I try it.
I am using Notepadd++ so its not hidden characters.
Any thoughts, and thanks again for your efforts on this.
Click to expand...
Click to collapse
Hello Broomfundel,
I never got that error, but it seems to be a problem of the ASL Compiler build not of your file.
I am using Mac so I have another build, if you want to post the file I can compile it for you .
Otherwise you can try an older release or to build the tool from source maybe?
Poz1 said:
Hello guys!
I'm starting this thread as I managed to install win10 on my X90L (Android) YogaBook
It was not easy to find a way to fix the ACPI error but it is possible!
Will update this post in a few hours with a guide on how to do it yourself.
UPDATE: link to the guide -> poz1.com/windows-on-android-lenovo-yogabook/
PLEASE NOTE THAT IF YOU CONTINUE YOU WILL END UP WITH A YOGABOOK WITHOUT INPUT DEVICES!!!
(EXTERNAL KEYBOARD WILL BE NEEDED) AND NO ANDROID INSTALL!!!​
So far i got almost everything working except:
- Touchscreen
- Keyboard
- Webcam in the keyboard panel (the other one works fine)
- NFC
I'm getting very near to have the touch and the keyboard working though
Click to expand...
Click to collapse
Hi, i have the Lenovo Yoga Book Windows version, im crying to install Stock Android on it, can you PLZ write a guide about doing it, or at least if there is a way to install the kernelflinger.efi or the fastboot mode on YB windows it will be great.
to fix the whole bugs you faced, try to reinstall windows 10 using this methode https://forum.xda-developers.com/yoga-book/how-to/windows-guide-creating-windows-10-t3718823
Thanks
THE MAXIMUM POWER said:
Hi, i have the Lenovo Yoga Book Windows version, im crying to install Stock Android on it, can you PLZ write a guide about doing it, or at least if there is a way to install the kernelflinger.efi or the fastboot mode on YB windows it will be great.
to fix the whole bugs you faced, try to reinstall windows 10 using this methode https://forum.xda-developers.com/yoga-book/how-to/windows-guide-creating-windows-10-t3718823
Thanks
Click to expand...
Click to collapse
Hi,
KernelFlinger is opensource and come with an installer, it should be pretty simple to install it.
Right now I don't have my YogaBook as I am travelling but I can try in the next few days
OK, Older release worked, but I get a .hex file, your instructions talk about a new aml file. Do I use the .hex file or is there another option other than the -ta one that would create the aml.
BTW. I am enjoying this. So thanks again.
Broomfundel said:
OK, Older release worked, but I get a .hex file, your instructions talk about a new aml file. Do I use the .hex file or is there another option other than the -ta one that would create the aml.
BTW. I am enjoying this. So thanks again.
Click to expand...
Click to collapse
With the -ta option I get both the .hex and the .aml file but you can try -tc if it doesn't work. Maybe due to the different build
P.s. (for other people that may incur in this) If you don't get the output files check that you have as last line of the terminal
"Compilation complete. 0 Errors"
OK, I am getting 7 errors. My current theory is that the DSTDWin.dsl will only compile with the same version number of the compiler it was decompiled with. I have attached my DSDTDroid.dsl so you can have a go. At least it will prove I got things right up to that point. Might be worth posting the original DSTDWin.aml for me to try this end.
If we are lucky it might turn out that the patched DSTDWin.aml files are consistent across the same model devices.
So... It seems both pen mode and keyboard mode of holo keyboard won't work... Am I right?
It's sad that if they won't work even we install the drivers from the lenovo website
Poz1 said:
Hi,
KernelFlinger is opensource and come with an installer, it should be pretty simple to install it.
Right now I don't have my YogaBook as I am travelling but I can try in the next few days
Click to expand...
Click to collapse
can after installing Windows booting to kernelflinger? if you can make a thread about how can you install/reinstall kernelflinger will be amazing?
Thank you
Poz1 said:
Hello guys!
Click to expand...
Click to collapse
Have you tried with the ISO from this forum with the Windows injected drivers? Here https://forum.xda-developers.com/yoga-book/how-to/windows-guide-creating-windows-10-t3718823
As Poz1 is obviously busy at the moment. Can anyone else get the DSTDWin.aml file for me to try and decode?
Thanks
Sorry guys I've been busy with university
Broomfundel said:
OK, I am getting 7 errors. My current theory is that the DSTDWin.dsl will only compile with the same version number of the compiler it was decompiled with. I have attached my DSDTDroid.dsl so you can have a go. At least it will prove I got things right up to that point. Might be worth posting the original DSTDWin.aml for me to try this end.
If we are lucky it might turn out that the patched DSTDWin.aml files are consistent across the same model devices.
Click to expand...
Click to collapse
There you go I'm also updating the files DSTDWin of my blog with one with some fixes Well they depend on the settings you use in your Bios (that's why Windows may not boot after install, it changes some parameters (the wait time of the bios and the default boot partition)). When you use the builtin one is the bios that "updates" it for you but for now we need to do it by hand If we are going to end with everything working we can release a patched "Win" bios and everything will be simpler
Riskypedia said:
So... It seems both pen mode and keyboard mode of holo keyboard won't work... Am I right?
It's sad that if they won't work even we install the drivers from the lenovo website
Click to expand...
Click to collapse
I know There something in the DSDT (the file that tells the os which and where your pc components are) that has to be fixed to make Windows see these parts correctly
THE MAXIMUM POWER said:
can after installing Windows booting to kernelflinger? if you can make a thread about how can you install/reinstall kernelflinger will be amazing?
Thank you
Click to expand...
Click to collapse
Didn't try Will do as soon as I have some free time :fingers-crossed:
Kinyapiplele said:
Have you tried with the ISO from this forum with the Windows injected drivers? Here https://forum.xda-developers.com/yoga-book/how-to/windows-guide-creating-windows-10-t3718823
Click to expand...
Click to collapse
Yep, but the problem is in the DSDT Thanks fot the input anyway
Poz1 said:
Sorry guys I've been busy with university
Click to expand...
Click to collapse
Don't worry, we all have real lives as well. I'm in the UK and we have a bank holiday on Monday. So this weekend, Ill get stuck in again.
Thanks for all your doing on this. You have already got further than anyone else who tried.
let me know if you have more problems
I have added a 3DMark test in the first post for those that are interested in how it performs
Poz1 said:
let me know if you have more problems
I have added a 3DMark test in the first post for those that are interested in how it performs
Click to expand...
Click to collapse
Just another Question, you as a Advance user, do you believe that we (yoga book Windows owners) can boot Android yb STOCK ROM ( i mean not the Android x86 based distros)?
Yes, but I think you would have to do the "reverse" DSDT injection (from win to android) as the official ROM has drivers for that components.
This means that, if you're lucky you would end up with our same problems (keyboard, pen and touch). If we don't fix that before
The problem with Android is that it is meant to be flashed on rom instead of being installed and this makes things more difficult.
It should be possible to flash the rom on an USB key, add grub and use it for DSDT injection like we do and see what happens.
Another problem is that the provided kernelflinger seems to have most of the security options enabled so 99% it will refuse to boot anyway.
Since it is opensource it should be possible to fix this anyway.
So yes, but it a loooong journey

Categories

Resources