Related
This is an experiment - project. It is about adding off-mode alarm clock to the HD2.
(If you don't have cLK installed (at least v1.5.1.4), then this is not applicable for you)
kokotas said:
Is it even possible to include something like auto-power-on in cLK, for alarm clock purposes?
Click to expand...
Click to collapse
After ~10 months, zicoxx asked more or less the same thing:
zicoxx said:
i want to suggest a feature for clk and our hd2..offline alarms
Click to expand...
Click to collapse
So lets see what we have so far...
This project depends on 3 factors, (1)Kernel, (2)Android application, (3)Bootloader.
Kernel
The kernel has a function in arch\arm\mach-msm\pm.c which handles the reboot reason:
Code:
static int msm_reboot_call(struct notifier_block *this, unsigned long code, void *_cmd)
{
if((code == SYS_RESTART) && _cmd) {
char *cmd = _cmd;
if (!strcmp(cmd, "bootloader")) {
restart_reason = 0x77665500;
} else if (!strcmp(cmd, "recovery")) {
restart_reason = 0x77665502;
} else if (!strcmp(cmd, "eraseflash")) {
restart_reason = 0x776655EF;
} else if (!strncmp(cmd, "oem-", 4)) {
unsigned code = simple_strtoul(cmd + 4, 0, 16) & 0xff;
restart_reason = 0x6f656d00 | code;
[COLOR="YellowGreen"]
//This is the proposed patch to our kernel
//(thanks Rick_1995 for suggesting it to bypass the time limit of 255 min)
} else if (!strncmp(cmd, "S", 1)) {
unsigned code = simple_strtoul(cmd + 1, 0, 16) & 0x00ffffff;
restart_reason = 0x53000000 | code;
[/COLOR]
} else if (!strcmp(cmd, "force-hard")) {
restart_reason = 0x776655AA;
} else {
restart_reason = 0x77665501;
}
}
return NOTIFY_DONE;
}
Not being able to compile a new kernel with a change like the green text in the above function, I just used the "oem-" prefix in the reboot reason passed from the application. The downside of this is that we can't set an alarm for more than 255 min from the current time.
Application
The application is able to:
reboot the device using the PowerManager class since it is signed and placed in /system/app:
Code:
//MinutesToSuspend is set using a TimePicker
mPowerManager.reboot("oem-" + MinutesToSuspend);
[COLOR="YellowGreen"]
//In case we have a kernel with the above patch included
mPowerManager.reboot("S" + MinutesToSuspend);[/COLOR]
play the alarm when the device has booted usind the BroadcastReceiver class that will get the BOOT_COMPLETED action.
Bootloader
The bootloader (in this case cLK):
detects the boot reason and decodes the MinutesToSuspend from it and enters a sort of suspend mode with a timeout equal to MinutesToSuspend converted to msec
Code:
if(target_check_reboot_mode() == (target_check_reboot_mode() | 0x6f656d00)) {
char str[16];
char *endptr;
unsigned MinutesToSuspend;
unsigned msecToSuspend = 0;
// Decode the MinutesToSuspend from the reboot_mode
sprintf(str, "%i", (target_check_reboot_mode() ^ 0x6f656d00));
MinutesToSuspend = strtol(str, &endptr, 16);
if (MinutesToSuspend < 3)
msecToSuspend = (MinutesToSuspend * 60000);
else
msecToSuspend = (MinutesToSuspend * 60000) - (120000);
suspend_time = msecToSuspend;
show_multi_boot_screen = 0;
boot_into_recovery = 0;
}
[COLOR="YellowGreen"]
//In case we have a kernel with the above patch included
#define MARK_ALARM_TAG 0x53000000
if(target_check_reboot_mode() & 0xFF000000 == MARK_ALARM_TAG) {
uint32_t MinutesToSuspend;
// Decode the MinutesToSuspend from the reboot_mode
MinutesToSuspend = target_check_reboot_mode() ^ MARK_ALARM_TAG;
if (MinutesToSuspend > 3)
MinutesToSuspend -= 2;
suspend_time = MinutesToSuspend * 60000;
show_multi_boot_screen = 0;
boot_into_recovery = 0;
}
[/COLOR]
if(suspend_time) {
msm_acpu_clock_init(1); // 384MHz (acpu_freq_tbl[0])
//Could try setting cpu clock at 245...
//msm_acpu_clock_init(0); // 245MHz (acpu_freq_tbl[0])
htcleo_suspend(suspend_time);
}
the suspend mode is implemented using this function
Code:
#define DS2746_SAFE_CHG_VOLTAGE 4200 // mV
void htcleo_suspend(unsigned timeout)
{
uint32_t voltage;
//int16_t current;
bool usb_cable_connected;
time_t start_time;
start_time = current_time();
if (timeout)
htcleo_panel_bkl_pwr(0);
do {
//current = ds2746_current(DS2746_I2C_SLAVE_ADDR, 1200);
voltage = ds2746_voltage(DS2746_I2C_SLAVE_ADDR);
usb_cable_connected = htcleo_usb_online();
if (usb_cable_connected) {
if (voltage < DS2746_SAFE_CHG_VOLTAGE) {
// If battery needs charging, set new charger state
if (htcleo_ac_online()) {
if (htcleo_charger_state() != CHG_AC ) {
writel(0x00080000, USB_USBCMD);
ulpi_write(0x48, 0x04);
htcleo_set_charger(CHG_AC);
}
} else {
if (htcleo_charger_state() != CHG_USB_LOW ) {
writel(0x00080001, USB_USBCMD);
mdelay(10);
htcleo_set_charger(CHG_USB_LOW);
}
}
// Led = solid amber
if (htcleo_notif_led_mode != 2)
thread_resume(thread_create("htcleo_notif_led_set_mode_2",
&htcleo_notif_led_set_mode,
(void *)2,
HIGH_PRIORITY,
DEFAULT_STACK_SIZE));
} else {
// Battery is full
if(timeout) {
// Set charger state to CHG_OFF_FULL_BAT
if (htcleo_charger_state() != CHG_OFF_FULL_BAT ) {
writel(0x00080001, USB_USBCMD);
mdelay(10);
htcleo_set_charger(CHG_OFF_FULL_BAT);
}
// and turn led solid green
if (htcleo_usb_online() && (htcleo_notif_led_mode != 1))
thread_resume(thread_create("htcleo_notif_led_set_mode_1",
&htcleo_notif_led_set_mode,
(void *)1,
HIGH_PRIORITY,
DEFAULT_STACK_SIZE));
} else {
// exit while if we don't have a timeout
break;
}
}
} else {
// Set charger state to CHG_OFF
if (htcleo_charger_state() != CHG_OFF ) {
writel(0x00080001, USB_USBCMD);
mdelay(10);
htcleo_set_charger(CHG_OFF);
}
// and turn off led
if (htcleo_notif_led_mode != 0)
thread_resume(thread_create("htcleo_notif_led_set_off",
&htcleo_notif_led_set_mode,
(void *)0,
HIGH_PRIORITY,
DEFAULT_STACK_SIZE));
}
// While in loop keep tracking if POWER button is pressed
// in order to (re)boot the device
for (int i=0; i<6; i++) {
if(keys_get_state(KEY_POWER)!=0) {
target_reboot(0);
return;//:)
}
mdelay(96);//total delay ~500ms per loop
}
// And check if timeout exceeded in order to reboot
if (timeout && (current_time() - start_time >= timeout))
target_reboot(0);
} while ( (usb_cable_connected) /* && current >= 0) */
||(timeout) ); // If we have a timeout this while-loop never breaks if we don't reboot.
// Double check voltage
mdelay(10);
voltage = ds2746_voltage(DS2746_I2C_SLAVE_ADDR);
if (voltage < DS2746_SAFE_CHG_VOLTAGE) {
// If battery is not full then
// EITHER the cable is unplugged
// OR the double check of voltage gave us
// a value less than the safe voltage.
// Set charger state to CHG_OFF
writel(0x00080001, USB_USBCMD);
mdelay(10);
htcleo_set_charger(CHG_OFF);
} else {
// If battery is full
// set charger state to CHG_OFF_FULL_BAT
writel(0x00080001, USB_USBCMD);
mdelay(10);
htcleo_set_charger(CHG_OFF_FULL_BAT);
// and turn led solid green
if (htcleo_usb_online() && (htcleo_notif_led_mode != 1))
thread_resume(thread_create("htcleo_notif_led_set_mode_1",
&htcleo_notif_led_set_mode,
(void *)1,
HIGH_PRIORITY,
DEFAULT_STACK_SIZE));
// While usb cable is connected
// keep tracking if POWER button is pressed OR timeout exceeded
// in order to (re)boot the device
while (htcleo_usb_online()) {
if(keys_get_state(KEY_POWER)!=0)
target_reboot(0);
/* if (timeout && (current_time() - start_time >= timeout))
break; */
}
}
// If we've set a timeout and reached it, reboot the device
/* if (timeout && (current_time() - start_time >= timeout))
target_reboot(0); */
// Shutdown the device
enter_critical_section();
platform_exit();
msm_proc_comm(PCOM_POWER_DOWN, 0, 0);
for (;;) ;
}
Any suggestions or observations are welcomed!
This is open for everyone to use or contribute. Source is available at https://github.com/n0d3/HD2_Alarm_Clock
If you have to ask for an apk to test, then you may download this example's apk from here.But don't consider this as an application release thread.
Bazinga
Should I say first or something? Anyway, testing with ~.7 clk now
Thank you!
THANKS KOKOTAS to make it possible also if it is an experiment..
almost you try if it's possible to use it in our beloved hd2
now i try it,and test this version..
however there is an app for samsung phone developer from chainfire team nomoarpowah that use offline charging mode for alarm..
maybe you can check that app to see if can use something
i hope that OUR WONDERFUL DEVELOPER can do another miracle..
I think since Android is between us, make a wake up alarm is really hard to do. Because we need a sub level software such as a boot loader, that listen the internal clock to turn on the device when established. I hope that you will win this challenge bro
All the best !
Although I think this Will be difficult...
zicoxx said:
THANKS KOKOTAS to make it possible also if it is an experiment..
almost you try if it's possible to use it in our beloved hd2
now i try it,and test this version..
however there is an app for samsung phone developer from chainfire team nomoarpowah that use offline charging mode for alarm..
maybe you can check that app to see if can use something
i hope that OUR WONDERFUL DEVELOPER can do another miracle..
Click to expand...
Click to collapse
Chainfire use the charging deamon to include his project. Because we doesnt see source which are availible for the HD2 we couldnt build something like this. Another point would be that the device comes original by windows Mobile so the process completly differs like bootloader/ init by spl/ availible functions !
If you Test chainfire app and read the thread you readout that most of them completly new written coded.
Alarm is integrated into new charging deamon so it doesnt fire device to boot up normal android ...
See it like another very small System work completly alone if device is off (charging)
Sent from my GT-I9300 using xda app-developers app
tb-killa said:
Chainfire use the charging deamon to include his project. Because we doesnt see source which are availible for the HD2 we couldnt build something like this. Another point would be that the device comes original by windows Mobile so the process completly differs like bootloader/ init by spl/ availible functions !
If you Test chainfire app and read the thread you readout that most of them completly new written coded.
Alarm is integrated into new charging deamon so it doesnt fire device to boot up normal android ...
See it like another very small System work completly alone if device is off (charging)
Sent from my GT-I9300 using xda app-developers app
Click to expand...
Click to collapse
If you look closely, It should work already and NOT require any of chainfire's work. cLK is open source, Linux is open source, Android is open source (atleast the part related to this). The only issue you might think of is that the core will be in wfi state instead of pc, unless kokotas has fixed pc in clk.
kokotas said:
Code:
unsigned code = simple_strtoul(cmd + 1, 0, 16) & 0xff000000;
Click to expand...
Click to collapse
Don't you think it should be
Code:
unsigned code = simple_strtoul(cmd + 1, 0, 16) & 0x00FFFFFF;
That's a good point.
I think booting into android to have a ring might be an issue in some cases
(bootloop, long time to boot android itself)
Using a recovery mode to quickly boot into and initiate an alarm that would be more reliable.
... at least I think
nerveless, good job and keep up the good work
Very nice work, seems like more and more people are learning to dev.
Rick_1995 said:
If you look closely, It should work already and NOT require any of chainfire's work. cLK is open source, Linux is open source, Android is open source (atleast the part related to this). The only issue you might think of is that the core will be in wfi state instead of pc, unless kokotas has fixed pc in clk.
Click to expand...
Click to collapse
I think we doesnt have sources of charging deamon for the HD2 right?
If we checked different threads we could read that htc doesnt public sources for Desire, others!
I agree that C(LK) could also do the Same job!
Sent from my GT-I9300 using xda app-developers app
tb-killa said:
I think we doesnt have sources of charging deamon for the HD2 right?
If we checked different threads we could read that htc doesnt public sources for Desire, others!
I agree that C(LK) could also do the Same job!
Sent from my GT-I9300 using xda app-developers app
Click to expand...
Click to collapse
code for charging daemon is not needed....
@kokotas, Why aren't you entering WFI state ?
You should do something like this:
Create a suspend thread and ensure there is no other thread with a higher (or the same) priority.
Inside the thread handle, there should be an infinite loop with something like this:
Code:
int suspend_task(void *args) {
int timeout_ms = (uint32_t) args;
htcleo_panel_bkl_pwr(0);
while( ! (key_pressed(KEY_POWER) && (timeout_ms <= 0)) ) {
if(usb_is_connected())
charge_device();
else
arch_idle(); // WFI
timeout_ms -= 10;
}
reboot();
return 0;
}
#define MARK_ALARM_TAG 0x53000000
void board_init(void) {
.........
uint32_t MinutesToSuspend = target_check_reboot_mode();
if((MinutesToSuspend & 0xFF000000) == MARK_ALARM_TAG) {
MinutesToSuspend &= 0x00FFFFFF;
if (MinutesToSuspend > 3)
MinutesToSuspend -= 2;
thread_create("suspend", suspend_task, (void *) (MinutesToSuspend * 60000) , HIGHEST_PRIORITY, DEFAULT_STACK_SIZE)
}
.........
}
Rick_1995 said:
@kokotas, Why aren't you entering WFI state ?
Click to expand...
Click to collapse
Honestly, never thought of Wait For Interrupt state
I'll rewrite the code based on your example and I'm thinking of creating a new branch in git in order to upload the complete source of latest cLK.
Regards!
kokotas said:
Honestly, never thought of Wait For Interrupt state
I'll rewrite the code based on your example and I'm thinking of creating a new branch in git in order to upload the complete source of latest cLK.
Regards!
Click to expand...
Click to collapse
Thanks, was wanting to update too. Just remember to create a new branch instead of an entirely new repository.
Regards
FYI.
Kernel patch arch\arm\mach-msm\pm.c in the first post has already added into my git.
It was included in my latest ICS kernel r3.6.
https://github.com/tytung/android_k...mmit/23357b2a9d64a076f1b9ac664dae209748fd5ece
tytung said:
FYI.
Kernel patch arch\arm\mach-msm\pm.c in the first post has already added into my git.
It was included in my latest ICS kernel r3.6.
https://github.com/tytung/android_k...mmit/23357b2a9d64a076f1b9ac664dae209748fd5ece
Click to expand...
Click to collapse
Thank you tytung:good:
I changed the relevant source in the application (also updated git repo) and tested successfully.
This also gave me the chance to try something else. Since it makes "oem-" prefix available to be used for other purposes, I've written another application which uses that prefix in reboot_reason for rebooting directly to any extra boot partition, with no need to press any buttons during boot-up.
Will post more info in a separate thread.
EDIT1:
Link
EDIT2:
Rick_1995 said:
Thanks, was wanting to update too. Just remember to create a new branch instead of an entirely new repository.
Regards
Click to expand...
Click to collapse
Just created new branch here.
Regards!
Thank you for your great work.I am trying to make offmode alarm work in clk 1.5.1.5 and nand rom nexushd2 v2.8
After i press set alarm device reboots but then it gives message "error:boot selection not found.an irrecoverable error found" and it boot in clk menu and stays there.I have boot,sboot partition and i select from default kernel the boot partition
clio94 said:
Thank you for your great work.I am trying to make offmode alarm work in clk 1.5.1.5 and nand rom nexushd2 v2.8
After i press set alarm device reboots but then it gives message "error:boot selection not found.an irrecoverable error found" and it boot in clk menu and stays there.I have boot,sboot partition and i select from default kernel the boot partition
Click to expand...
Click to collapse
Hi clio94,
Did you download the SysAlarm2.apk or you're still using the first one (SysAlarm.apk)?
Now that I think of it, I should remove the first one cause it will not work as expected with the last cLK.
Regards!
I tried the first version.The second version work ok.Thank you
clio94 said:
I tried the first version.The second version work ok.Thank you
Click to expand...
Click to collapse
Have you try in nand rom or nativesd ROM?
Thanks!!
Inviato dal mio multiboot HD2
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I am proud to present first Dualboot project For Redmi Pro. This will allow any number of ROMs to be installed at the same time. It works by patching the secondary ROM's installation scripts and boot image to load the ROM files from an alternate location (/system/multiboot, /cache/multiboot, and /data/multiboot). Because of the way this is implemented, no changes to the primary ROM are necessary
What is DualBootPatcher?
DualBootPatcher is an open-source app that allows multiple ROMs to be installed on a single Android device. It does its best to work with existing code and does not require explicit support from ROMs. There are currently 200+ supported devices and their variations.
Information:
I have managed to support for Redmi Pro to the DualBootPatcher App, I am not the creator, just the supporter.
It's awesome and useful for testing out roms or if you want, switching ROMS.
Disclaimer:
Code:
Your warranty is now void.
I am not responsible for bricked devices, dead SD cards, thermonuclear war, or you getting fired because the alarm app failed. Please do some research if you have any concerns about features included in this ROM before flashing it! YOU are choosing to make these modifications, and if you point the finger at me for messing up your device, I will laugh at you. Hard. A lot.
Requirements:
1. A Custom Recovery (TWRP)
2. A ROM
3. Dual Boot Patcher app and the DualBootUtilities.zip from the download section below.
What does the app do ?:
It patches...
Custom kernels for dual boot support
ROMs so that they can be installed as secondary
Google Apps packages for AOSP-based ROMs
SuperSU so that it can be used in the secondary ROM
What's supported ?
Except Toaster and Alarm clocks pretty much everything is supported.
Click to expand...
Click to collapse
How to use the App?
- Download, install and open the app.
- Swipe to the right to open the menu. Click "ROMS". Now if this is the first time you use it, it will ask you if you want to set kernel. Do so!
- After it has finished go to ROM Settings (primary ROM 3 dot menu) and select Update Ramdisk. It will update it and will ask you to reboot. Press Reboot Now, or Reboot later.
- Now Download any ROM you like and open the app again and open the menu and open Patch Zip File from the menu. Ensure that your Device is set to (eyeul) and under Partition configuration select secondary (will install 2nd ROM in /system) or data slot.
- Click continue and select where to save the patched file.
- You should see the file is being put in "Queue". Just click the confirm button to the upper right.
Note: If you want to go back, just swipe the ROM in queue to right and start over.
- The app will patch the zip. When done, go back to "ROMs".
- Click "Flash zip files" (the big pink button on the lower right). Click the pink plus button to add your previously patched zip file.
- Locate the file you have patched in step 7. Unless you have changed the name there, it should be something like ROM_name_partition_config_ID.zip (like RR-N-v5.8.3-20170707-omega-Unofficial_dual.zip).
- Click on that file and choose "Keep location". Now confirm the flash with the button on the upper right side.
Note: You can also install the patched zip files in recovery.
- It will now open the terminal and begin flashing the file. This requires some patience. After it has flashed the file you'll see success message in green.
- Now click back and you should see your newly installed ROM along with the Primary ROM.
Note: You can find more options by clicking on the three buttons on each ROM.
- Now reboot and wait till finishing 2nd ROM first boot. install DualBootPatcher apk so you can easily switch ROMs, there is another way to change ROMs: flash DualBootUtilities.zip and switch ROM manually.
Note: Using Bootui:
- Open app then select settings and press install (update) bootui. then Swipe to the right to open the menu. Click "ROMS" again and open secondary ROM Settings) and select Update Ramdisk, Now you can change ROMs simply using boot ui (something like grub bootloader but it works like twrp)
Partitions Configurations:
The patcher offers several locations for installing ROMs:
Primary: This is normally used for installing a zip to the primary ROM. It is not required, but is strongly recommended because it has code to prevent the zip from inadvertently affecting other ROMs.
Dual: Dual/Secondary is the first multiboot installation location. It installs to the system partition. This is a good spot for installing a second ROM because it doesn't take any space away from the internal storage.
Multi-slots: There are 3 multislots: multi-slot-1, multi-slot-2, multi-slot-3. These install to the cache partition. This is specifically for devices, like the Galaxy S4, that have a massive cache partition.
Data-slots: There can be an unlimited number of data slots. These install to the data partition and eat up space on the internal storage. This is useful for devices where the system partition is nearly full and the cache partition is tiny. These slots are named "data-slot-[id]", where "id" is something you provide in the app.
Extsd-slots: There can be an unlimited number of extsd slots. These install to the external SD card, which is useful as it keeps the ROMs off of the internal storage. Note that the ROM's data files are still stored on the data partition.
How to boot to another ROM ?
This is simple ... There is no reboot to primary, secondary or whatever. So all you have to do is:
1) Go to ROMs section of the App.
2) Click on the ROM you want to boot to. You should see "Switching ROM" message. After few seconds, you should see a report message saying that "ROM successfully switched".
3) Now just do a normal reboot of your device. See the magic! It should boot to the ROM you have switched on step 2.
Note: You can find more options by selecting the three buttons on each ROMs (like creating reboot widgets for directly rebooting to specific rom).
You also need to install the App to all of the ROMs you install. Otherwise, you want be able to boot to other ROMs!
Apps and Data sharing:
DualBootPatcher very recently got support for sharing apps and their data across ROMs. Maybe sharing is somewhat of a misleading term. The feature actually makes Android load the shared apps and data from a centralized location, /data/multiboot/_appsharing. So you're not sharing apps from one ROM to another per se. The ROMs are just loading the apps from one shared location. Let me make this clearer with an analogy.
Think of the people in a company office as ROMs. You want to share with your coworkers some documents (apps). Instead of telling them to come over to your desk to see those documents (sharing apps from one ROM to another), everyone goes to the conference room to look at the documents together (loading apps from a shared location). That's how app and data sharing is implemented.
Click to expand...
Click to collapse
To use app sharing, follow these steps in every ROM that you want to use app sharing: (doesn't work with JB ROMs)
Install the app you want to share
Open DualBootPatcher and go to "App Sharing" in the navigation drawer
Enable individual app sharing
Tap "Manage shared applications" and enable APK/data sharing for the app
Reboot
When you uninstall an app that's shared, it simply become unshared for the current ROM. That way, other ROMs are not affected. To continue the analogy above, if you quit your job, you won't shred the documents that everybody else was looking at.
If you unshare an app's data, it will go back to using the data it had before it was shared. In other words, you leave the conference room and go back to work on your own documents at your desk.
Click to expand...
Click to collapse
Other How to ?
Wipe /cache, /data, /system, or dalvik-cache?
The easiest way is to do it from the app while booted in another ROM. Just go to "Roms" in the navigation drawer, tap the 3 dots options menu for the ROM you want to wipe, and tap "Wipe ROM".
Update the primary ROM?
Patch the zip for primary and flash it. The "primary" installation target is designed so that other ROMs won't be affected when you want to flash something for the primary ROM.
Update a non-primary ROM?
Patch and flash the zip exactly like how you did it the first time.
Flash a mod or custom kernel for the primary ROM?
Patch it for primary before flashing. If the zip does not wipe /cache, it is also safe to flash it directly.
Flash a mod or custom kernel for a non-primary ROM?
Just patch and flash it
Downloads:
All Downloads HereCheers ! we are officially supported
Note: You can download any version since "9.2.0.r295.g3b684238"
Screenshots:
No Screenshots, I need some
Sources:
DualBootPatcher: https://github.com/chenxiaolong/DualBootPatcher
DualBootUtilities: https://github.com/chenxiaolong/DualBootZips
Build instructions: https://github.com/chenxiaolong/DualBootPatcher/tree/master/docs
Redmi Pro Support:
https://github.com/chenxiaolong/DualBootPatcher/pull/707
Known issues:
- You tell me !
Credits:
@chenxiaolong for the awesome DualBootPatcher.
XDA:DevDB Information
[PATCHER][APP][OFFICIAL] Dualboot/Multiboot For Redmi Pro, Tool/Utility for the Xiaomi Redmi Pro
Contributors
yshalsager, chenxiaolong
Source Code: https://github.com/chenxiaolong/DualBootPatcher
Version Information
Status: Stable
Current Stable Version: 9.2.0.r295.g3b684238
Created 2017-08-19
Last Updated 2017-10-03
Notes
1- If flashing Custom ROM Fail (like LOS 14.1):
you have to edit "updater-script" and remove assert lines like:
Code:
assert(getprop("ro.product.device") == "omega" || getprop("ro.build.product") == "omega" || abort("E3004: This package is for device: omega; this device is " + getprop("ro.product.device") + "."););
ifelse(is_mounted("/system"), unmount("/system"));
2- To Flash AROMA ROMs flash patched zip from TWRP
Changelogs
-19/08/2017
Initial Release, waiting for adding officially
Much thanks
yshalsager said:
1- If flashing Custom ROM Fail (like LOS 14.1):
you have to edit "updater-script" and remove assert lines like:
2- To Flash AROMA ROMs flash patched zip from TWRP
Click to expand...
Click to collapse
Pls help me when trying to patch my ROM (Los 13) it says that it need documents enabled from settings. The problem is I already have...
Please help me I'm very keen to be the first to try
yshalsager said:
1- If flashing Custom ROM Fail (like LOS 14.1):
you have to edit "updater-script" and remove assert lines like:
2- To Flash AROMA ROMs flash patched zip from TWRP
Click to expand...
Click to collapse
daffa ZRN said:
Pls help me when trying to patch my ROM (Los 13) it says that it need documents enabled from settings. The problem is I already have...
Please help me I'm very keen to be the first to try
Click to expand...
Click to collapse
Here are the screenshots
yshalsager said:
-19/08/2017
Initial Release, waiting for adding officially
Click to expand...
Click to collapse
Ok now it works but when rebooting to enter secondary rom (using bootUI) it just boots to twrp.
I'm using resurrection remix as the secondary ROM, also when it's flashing (through the app) the message is red not green which means a fail. Maybe the that's the problem. Pls help so I can test it out and report back
daffa ZRN said:
Ok now it works but when rebooting to enter secondary rom (using bootUI) it just boots to twrp.
I'm using resurrection remix as the secondary ROM, also when it's flashing (through the app) the message is red not green which means a fail. Maybe the that's the problem. Pls help so I can test it out and report back
Click to expand...
Click to collapse
Yep red message means it didn't flash successfully. Can you take a look at second post? You need to remove assert lines
daffa ZRN said:
Pls help me when trying to patch my ROM (Los 13) it says that it need documents enabled from settings. The problem is I already have...
Please help me I'm very keen to be the first to try
Click to expand...
Click to collapse
You can choose zip using any explorer app like ES File
yshalsager said:
Yep red message means it didn't flash successfully. Can you take a look at second post? You need to remove assert lines
Click to expand...
Click to collapse
Sorry but can you show me how(I'm a noob)
Wow, dual boot patcher stops working when pressing ROMs, I am in a redmi note 3 pro kate, since version 277 no longer works but in 257 down function without errors, someone else happens to this?
Error log:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'Xiaomi/kate/kate:6.0.1/MMB29M/V8.2.4.0.MHRMIDL:user/release-keys'
Revision: '0'
ABI: 'arm64'
pid: 13581, tid: 14315, name: pool-1-thread-1 >>> com.github.chenxiaolong.dualbootpatcher.snapshot <<<
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0xdeadbaad
Abort message: 'invalid address or address of corrupt block 0x7fa60f0090 passed to dlfree'
x0 0000000000000000 x1 0000007faf7ba7d0 x2 0000000000000001 x3 00000000007fabf9
x4 0000000000000000 x5 00000000deadbaad x6 0000000000000000 x7 0000000000000010
x8 7f7f7f7fffff7f7f x9 6471656b631f6e73 x10 7f7f7f7f7f7f7f7f x11 0101010101010101
x12 0000007faf7ba7c8 x13 58934240ef78b85e x14 58934240ef78b85e x15 0030f907887041ba
x16 0000007faf7b4a58 x17 0000000000000000 x18 0000007faca2a000 x19 0000007fa60f0090
x20 0000007faf7bb000 x21 0000007fa60f00a0 x22 0000007faf7bba70 x23 00000055995187e8
x24 0000000000000002 x25 0000005599529258 x26 0000000000000000 x27 0000000032e3dbe0
x28 00000055995a5860 x29 0000007f93a7f060 x30 0000007faf753580
sp 0000007f93a7f060 pc 0000007faf753588 pstate 0000000060000000
backtrace:
#00 pc 0000000000047588 /system/lib64/libc.so (dlfree+408)
#01 pc 00000000000195a8 /system/lib64/libc.so (free+20)
#02 pc 0000000000029054 /data/app/com.github.chenxiaolong.dualbootpatcher.snapshot-2/lib/arm64/libmbcommon.so
#03 pc 0000000000029224 /data/app/com.github.chenxiaolong.dualbootpatcher.snapshot-2/lib/arm64/libmbcommon.so
#04 pc 0000000000011b40 /data/app/com.github.chenxiaolong.dualbootpatcher.snapshot-2/lib/arm64/libmbcommon.so (_ZN2mb8format_vERSsPKcSt9__va_list+132)
#05 pc 000000000000abd0 /data/app/com.github.chenxiaolong.dualbootpatcher.snapshot-2/lib/arm64/libmbbootimg.so (_ZN2mb7bootimg6Reader11set_error_vESt10error_codePKcSt9__va_list+84)
#06 pc 0000000000009588 /data/app/com.github.chenxiaolong.dualbootpatcher.snapshot-2/lib/arm64/libmbbootimg.so (_ZN2mb7bootimg6Reader9set_errorESt10error_codePKcz+108)
#07 pc 000000000000d300 /data/app/com.github.chenxiaolong.dualbootpatcher.snapshot-2/lib/arm64/libmbbootimg.so
#08 pc 000000000000c96c /data/app/com.github.chenxiaolong.dualbootpatcher.snapshot-2/lib/arm64/libmbbootimg.so
#09 pc 0000000000009ed8 /data/app/com.github.chenxiaolong.dualbootpatcher.snapshot-2/lib/arm64/libmbbootimg.so (_ZN2mb7bootimg6Reader4openEPNS_4FileE+308)
#10 pc 0000000000009a88 /data/app/com.github.chenxiaolong.dualbootpatcher.snapshot-2/lib/arm64/libmbbootimg.so (_ZN2mb7bootimg6Reader13open_filenameERKSs+216)
#11 pc 0000000000011ec8 /data/app/com.github.chenxiaolong.dualbootpatcher.snapshot-2/lib/arm64/libmiscstuff-jni.so (Java_com_github_chenxiaolong_dualbootpatcher_nativelib_libmiscstuff_LibMiscStuff_getBootImageRomId+300)
#12 pc 0000000000603934 /data/app/com.github.chenxiaolong.dualbootpatcher.snapshot-2/oat/arm64/base.odex (offset 0x35c000)
I've use it for a long time,but i changed my model into Redmi Note 4(MTK) then I can use dualbootpatcher.now pro can use it with out changing model.it's great!:good:
yshalsager said:
Yep red message means it didn't flash successfully. Can you take a look at second post? You need to remove assert lines
Click to expand...
Click to collapse
Ok now I know how to remove those line and I did it, I removed the 1st and the 3rd line.
But now Im facing another fail on flash please help
zhaodelin2002 said:
I've use it for a long time,but i changed my model into Redmi Note 4(MTK) then I can use dualbootpatcher.now pro can use it with out changing model.it's great!:good:
Click to expand...
Click to collapse
You know how to fix my issue?
daffa ZRN said:
You know how to fix my issue?
Click to expand...
Click to collapse
sorry,my way isn't same as yours......
Ivan Torres said:
Wow, dual boot patcher stops working when pressing ROMs, I am in a redmi note 3 pro kate, since version 277 no longer works but in 257 down function without errors, someone else happens to this?)
Click to expand...
Click to collapse
The problem is from app. Not from your device. For me r199 works perfectly. You can use version in this thread also
daffa ZRN said:
Ok now I know how to remove those line and I did it, I removed the 1st and the 3rd line.
But now Im facing another fail on flash please help
Click to expand...
Click to collapse
Remove from starting of file to the end of line 3
The file should be started with "package" line
zhaodelin2002 said:
sorry,my way isn't same as yours......
Click to expand...
Click to collapse
What's your way, maybe I can try
daffa ZRN said:
What's your way, maybe I can try
Click to expand...
Click to collapse
modify build.prop
yshalsager said:
Remove from starting of file to the end of line 3
The file should be started with "package" line
Click to expand...
Click to collapse
Still not working do you have a ROM already modified?
Hi guys, i ported the crDroid gsi from here.
I removed the unnecessary files from the rom, and included gapps.
And AIO fixes thanks to @DarkJoker360.
Install steps are easy.
1. Download the ROM from HERE.
2. Extract it.
3. Download Pretoriano80's TWRP from "HERE" and flash it using "fastboot flash recovery_ramdisk <path to TWRP.img>".
4. After that reboot to TWRP while holding the VOL+ and POWER button.
5. In TWRP wipe internal storage and flash "THIS" to decrypt the phone.
6. Reboot to TWRP again.
7. Reboot to bootloader while in TWRP.
8. Flash DarkJoker360's TWRP.
9. Wipe everything except Vendor.
10. Transfer the system.img from the rom to your device's internal storage.
11. Tap on Install, then tap on install image, look for the system.img and flash it as System Image and reboot.
I haven't had any bugs for now, if u find something tell me.
It doesn't work.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
alexut210008 said:
It doesn't work.View attachment 5323563
Click to expand...
Click to collapse
Which TWRP recovery did you use?
At first - twrp_p10_lite_0.6_test
Then - TWRP_3.4.0-0-warsaw_DarkJoker360_20200611
alexut210008 said:
At first - twrp_p10_lite_0.6_test
Then - TWRP_3.4.0-0-warsaw_DarkJoker360_20200611
Click to expand...
Click to collapse
And none of them work? For me they both work, which version of emui are you on? I used the latest update for my phone.
is switching recoverys an important step? weird
wow this actually worked, android 11 aosp for prague booting now on my p10 lite
I did everything according to the instructions. Swears at the size of system.img
is there android 11 based crdroid gsi images you can port?
I do everything strictly according to the instructions.
LesterDMolester said:
Hi guys, i ported the crDroid gsi from here.
I removed the unnecessary files from the rom, and included gapps.
And AIO fixes thanks to @DarkJoker360.
Install steps are easy.
1. Download the ROM from HERE.
2. Extract it.
3. Download Pretoriano80's TWRP from here and flash it using "fastboot flash recovery_ramdisk <path to TWRP.img>".
4. After that reboot to TWRP while holding the VOL+ and POWER button.
5. In TWRP wipe internal storage and flash this to decrypt the phone.
6. Reboot to TWRP again.
7. Reboot to bootloader while in TWRP.
8. Flash DarkJoker360's TWRP.
9. Wipe everything except Vendor.
10. Transfer the system.img from the rom to your device's internal storage.
11. Tap on Install, then tap on install image, look for the system.img and flash it as System Image and reboot.
I haven't had any bugs for now, if u find something tell me.
Click to expand...
Click to collapse
Hi...
ok i will give you a method that i used to get it work on my p10 lite WAS-LX1A 4Gb Dual-Sim
First...if you come from latest stock rom was-lx1a 8.0.0b398c432 you need to downgrade to was-lx1a 8.0.0b394c432 with dload or how ever you prefer. cause with b398 you system partition is just 3,7Gb and can not get rezise. but with the b394 you can rezise it but its no need to. cause after encrypting with fstab.hi6250b and the known following steps...format wipe and so on...the system partition have a size from 4.5gb.
I use the Pretoriano80 TWRP 3.2.1.0 twrp_p10_lite_0.5_test.img
then after initial boot and setup the first config....you can see in apps there is superuser app...its integrate in the Rom.
For using magisk i did the following steps thanks to @Hami_Do
hang-in the system and open file manager in TWRP
delete the following
system/bin/adb_root
system/bin/abdb
system/etc/init/adb_root.rc
system/etc/init/adbd.rc
system/etc/init/su.rc
system/app/superuser
system/bin/su
system/xbin/su
flash the stock ramdisk.img
btw camera works with different modi
for magisk...thanks to @Hami_Do i use v23.0apk
then roboot to TWRP
there flash magisk v23.0-phh.zip
Works on a Was-Lx3 9.00.366 (C212)?
emui 8 stock With elemental kernel v5
Cada vez que instalo una rom personalizada desde Android 9.0, da la animación de arranque y allí se reinicia de vez en cuando hasta que termina en recuperación.
kanade266 said:
Works on a Was-Lx3 9.00.366 (C212)?
emui 8 stock With elemental kernel v5
Cada vez que instalo una rom personalizada desde Android 9.0, da la animación de arranque y allí se reinicia de vez en cuando hasta que termina en recuperación.
Click to expand...
Click to collapse
Why you dont try it? Make a Backup of your current System and return to Stock Rom cause you change Kernel and what ever more. After the initial boot configure the Stock Rom to activate Dev-Opt where you can activate OEM unlock and USB Debugging and so on...
solong
speedson
GizmoTheGreen said:
is there android 11 based crdroid gsi images you can port?
Click to expand...
Click to collapse
My charging port is broken, i won't be able to do any ports until i get it fixed, btw Android 11 GSI's are still not stable as Android 10 GSI's.
speedson said:
Why you dont try it? Make a Backup of your current System and return to Stock Rom cause you change Kernel and what ever more. After the initial boot configure the Stock Rom to activate Dev-Opt where you can activate OEM unlock and USB Debugging and so on...
solong
speedson
Click to expand...
Click to collapse
I already did that and it did not leave me the same problem that happened to the first comment I did everything that the post says
Damn, same problem:
"size of image is larger than target device"
The ROM works fine, although I notice it's quite slow when opening apps and animations. The fingerprint reader also doesn't works sometimes like if it wasn't there but is fixed after a restart.
hello all , thanks for this ROM.
I have a problem when I follow every step without any mistakes. my phone does not want to start . just leave twrp mode and open Huawei eRecovery ( download latest version and recovery * wide data/factory reset * reboot ...)
I don't know why my can't start normally .even the logo not shown
thanks in advance
It is possible to have a detailed guide how to install ?
Thanks.
Hi...
ok a repeat again....if you come from Stock Rom with latest Version called WAS-LX1A 8.0.0.398 C432 your System Partition is just 3,7Gb. You need to downgrade to 1 Version before called WAS-LX1A 8.0.0.394 C432 then the System Partition is 4,5Gb. Now you can flash this custom Rom.
For downgrade use dload method and
Huawei P10 Lite WAS-LX1 WAS-L21 hw eu Warsaw-L21A 8.0.0.394(C432) Firmware EMUI8.0 05014JNC [androidhost.ru].zip - AndroidHost.RU
Download file - Huawei P10 Lite WAS-LX1 WAS-L21 hw eu Warsaw-L21A 8.0.0.394(C432) Firmware EMUI8.0 05014JNC [androidhost.ru].zip
androidhost.ru
download the package and in there you find software/dload and there are 4 folder and 1 update_sd.zip
create a dload folder on your desktop and extrac the update_sd.zip and the 1 folder for your Device. so my is a WAS-LX1A (LX1A=L21A) cause of this i extrac the WAS-L21A folder.
put the update_sd.zip and WAS-L21A folder from downloadet package into the createt dload folder on your desktop. Now copy/paste this dload folder from desktop to external-sd card in your Device, Power off the Device and restart it with press and hold Vol-up+Vol-down+Pwr (no usb cable plugged) now the firmware update should start and wait for progress is finished.
speedson said:
Hi...
ok a repeat again....if you come from Stock Rom with latest Version called WAS-LX1A 8.0.0.398 C432 your System Partition is just 3,7Gb. You need to downgrade to 1 Version before called WAS-LX1A 8.0.0.394 C432 then the System Partition is 4,5Gb. Now you can flash this custom Rom.
For downgrade use dload method and
Huawei P10 Lite WAS-LX1 WAS-L21 hw eu Warsaw-L21A 8.0.0.394(C432) Firmware EMUI8.0 05014JNC [androidhost.ru].zip - AndroidHost.RU
Download file - Huawei P10 Lite WAS-LX1 WAS-L21 hw eu Warsaw-L21A 8.0.0.394(C432) Firmware EMUI8.0 05014JNC [androidhost.ru].zip
androidhost.ru
download the package and in there you find software/dload and there are 4 folder and 1 update_sd.zip
create a dload folder on your desktop and extrac the update_sd.zip and the 1 folder for your Device. so my is a WAS-LX1A (LX1A=L21A) cause of this i extrac the WAS-L21A folder.
put the update_sd.zip and WAS-L21A folder from downloadet package into the createt dload folder on your desktop. Now copy/paste this dload folder from desktop to external-sd card in your Device, Power off the Device and restart it with press and hold Vol-up+Vol-down+Pwr (no usb cable plugged) now the firmware update should start and wait for progress is finished.
Click to expand...
Click to collapse
Software installa failed! I have a WAS-LX1A 8.0.0.396 C432
hi guys,
does anybody had success with installing viper4android? i cannot get it installed. anybody a tipp for me?
Thrudvangar said:
hi guys,
does anybody had success with installing viper4android? i cannot get it installed. anybody a tipp for me?
Click to expand...
Click to collapse
What model do you have? sm-f936b?
Is it rooted?
f936b/ds. yes. it is rooted!
i tried every different variant of methods of installing: magisk modules like narsil, amc...
tried the 2.5.0.5 and 2.7.2.1.
it cannot find driver. it ends in a loop. i let install drivers (so in 2.7.2.1 there is an info that it will install magisk module.). after restart it asks me for installing drivers again... and again... and again.....
i remember when i was on Android 7.1.1 there was a way to get it installed by renaming audio_effects.conf.
i assume that is obsolete i guess?
sry for repost, but editing did not work!
So i did read that it has to do something with the mounting paths in "post-fs-data.sh"
This is, what i have got in my post-fs-data.sh
Code:
#!/system/bin/sh
# Kill audioserver PID if it was initialized already
SERVERPID=$(pidof audioserver)
[ "$SERVERPID" ] && kill $SERVERPID
mount -o bind /vendor/etc/audio_effects.xml /odm/etc/audio_effects.xml
magiskpolicy --live 'allow audioserver audioserver_tmpfs file { read write execute }'
magiskpolicy --live 'allow audioserver system_file file { execmod }'
magiskpolicy --live 'allow mediaserver mediaserver_tmpfs file { read write execute }'
magiskpolicy --live 'allow mediaserver system_file file { execmod }'
magiskpolicy --live 'allow audioserver unlabeled file { read write execute open getattr }'
magiskpolicy --live 'allow hal_audio_default hal_audio_default process { execmem }'
magiskpolicy --live 'allow hal_audio_default hal_audio_default_tmpfs file { execute }'
magiskpolicy --live 'allow hal_audio_default audio_data_file dir { search }'
magiskpolicy --live 'allow app app_data_file file { execute_no_trans }'
magiskpolicy --live 'allow mtk_hal_audio mtk_hal_audio_tmpfs file { execute }'
Thrudvangar said:
f936b/ds. yes. it is rooted!
i tried every different variant of methods of installing: magisk modules like narsil, amc...
tried the 2.5.0.5 and 2.7.2.1.
it cannot find driver. it ends in a loop. i let install drivers (so in 2.7.2.1 there is an info that it will install magisk module.). after restart it asks me for installing drivers again... and again... and again.....
i remember when i was on Android 7.1.1 there was a way to get it installed by renaming audio_effects.conf.
i assume that is obsolete i guess?
Click to expand...
Click to collapse
This is the way to make it work :
1. Install Audio Modification Library module in Magisk and reboot (this is installed automatically by the third zip for you - just needs activating)
2 when rebooted - load up V4a and let it install drivers and reboot
3 when rebooted - disable the AML module and reboot
4 when rebooted - load up V4a and let it install drivers and reboot - v4a should now be working ok (be sure to check legacy mode!!)
Original Post:
[MAGISK Rom /Base Convertor] 420rom F926B V2.2 - BVA9 - ANDROID 12 - OneUI 4.0 - Sec Patch 01/2022 - Released 28/01/2022
WELCOME TO 420 ROM - MAGISK ROM FOR SAMSUNG GALAXY Z FOLD 3 5G F926B (SD888) Telegram-Group Please bear in mind that things will be added as and when my learning and time permits (being a dad with a family and having ADHD myself means things...
forum.xda-developers.com
Here is the Audio Modification Library module (File attached) :
pvillasuso said:
This is the way to make it work :
1. Install Audio Modification Library module in Magisk and reboot (this is installed automatically by the third zip for you - just needs activating)
2 when rebooted - load up V4a and let it install drivers and reboot
3 when rebooted - disable the AML module and reboot
4 when rebooted - load up V4a and let it install drivers and reboot - v4a should now be working ok (be sure to check legacy mode!!)
Original Post:
[MAGISK Rom /Base Convertor] 420rom F926B V2.2 - BVA9 - ANDROID 12 - OneUI 4.0 - Sec Patch 01/2022 - Released 28/01/2022
WELCOME TO 420 ROM - MAGISK ROM FOR SAMSUNG GALAXY Z FOLD 3 5G F926B (SD888) Telegram-Group Please bear in mind that things will be added as and when my learning and time permits (being a dad with a family and having ADHD myself means things...
forum.xda-developers.com
Here is the Audio Modification Library module (File attached) :
Click to expand...
Click to collapse
thank you for your instructions.
one question: can you confirm this? do you owner of a z fold 4 and do you have successfully installed V4A?
pvillasuso said:
This is the way to make it work :
1. Install Audio Modification Library module in Magisk and reboot (this is installed automatically by the third zip for you - just needs activating)
2 when rebooted - load up V4a and let it install drivers and reboot
3 when rebooted - disable the AML module and reboot
4 when rebooted - load up V4a and let it install drivers and reboot - v4a should now be working ok (be sure to check legacy mode!!)
Original Post:
[MAGISK Rom /Base Convertor] 420rom F926B V2.2 - BVA9 - ANDROID 12 - OneUI 4.0 - Sec Patch 01/2022 - Released 28/01/2022
WELCOME TO 420 ROM - MAGISK ROM FOR SAMSUNG GALAXY Z FOLD 3 5G F926B (SD888) Telegram-Group Please bear in mind that things will be added as and when my learning and time permits (being a dad with a family and having ADHD myself means things...
forum.xda-developers.com
Here is the Audio Modification Library module (File attached) :
Click to expand...
Click to collapse
This doesn't work on the Fold 4 anymore.
I used this process with AML 5.1 and Viper 2.7.2.1 on the Fold 3 successfully.
On the Fold 4 Viper still, after the last reboot, will tell you the drivar is not installed etc. and asks to install and reboot - this continues forever.
白い熊 said:
This doesn't work on the Fold 4 anymore.
I used this process with AML 5.1 and Viper 2.7.2.1 on the Fold 3 successfully.
On the Fold 4 Viper still, after the last reboot, will tell you the drivar is not installed etc. and asks to install and reboot - this continues forever.
Click to expand...
Click to collapse
Okay, so that means viper4android won't work on Z Fold 4!
Okay, then i will install JamesDSP as an alternative and live with this issue :/
:edit:
but i think it just has to do with the post-fs-data.sh and the mounting paths. if we would edit this file with the proper path it would work i guess!!
I'll try fiddle with it to see if I make any progress…
I don't have any such mounts in post-fs - both the Fold 3 working and Fold 4 non-working post-fs only have the first part with kiling the audio server - so it's not associated with the mounts you list…
Thrudvangar said:
thank you for your instructions.
one question: can you confirm this? do you owner of a z fold 4 and do you have successfully installed V4A?
Click to expand...
Click to collapse
Sure, I'm using it with my rooted fold 3
Edit : Just reading it wont work with the Fold4 , what a pity , too bad
so guys! this is so sad!!
JamesDSP is so bad and i miss V4A so much!
why does it work on Z Fold 3 with Android 12L and not on the z fold 4?
is it because of the snapdragon 8 gen 1 ?
It would take some expert with knowledge of how how Viper works. It checks for presence of the driver - which should be mounted by Magisk on boot - something is not clicking there.
I thought the above mounts in the post are not working, in which case it would be easily fixed - but it's not that, as I'vegchecked against the Fold 3.
Something else is causing it to detect drivers as not present - might be actually the Audio Modification Library is not working itself on the Fold 4 and not allowing the driver install as per the above shortcut.
Anyway - seems it'd be fixable - but it takes someone with knowledge of what the AML and Viper are supposed to be doing on Magisk mount - to check what's not working.
so we have to wait for a 64bit driver right?
Release ViPER4Android-RE v0.1.0 - Happy new year! 🎉 · AndroidAudioMods/ViPER4Android
First release, enjoy :) THIS RELEASE IS 64 BIT COMPATIBLE! 🎉 Thanks to: Thomas (provided the base for the Android app): https://github.com/Pittvandewitt Martmists (started the reverse engineering ...
github.com
first 64bit alpha of v4a released!
anyone tried this?
I tried it - doesn't work on Fold 4.
白い熊 said:
I tried it - doesn't work on Fold 4.
Click to expand...
Click to collapse
oh no. did you try the 0.2.0?
It does work — wow! I wasn't aware of version 2…
Not everything works in it yet — but it works, processes the sound — in Legacy mode.
please check whether convolver and viper clarity works
Convolver — no, clarity — yes.
I got alerted to this the other day when I couldn't make a phone call in a week cellular area but strong working wifi. I have wifi calling enabled, and tried both settings on priority of wifi vs mobil for calling. What I get is "mobile network is not available. Connect to wireless network to make a call"
The mobil provider (Tello) supports wifi calling on all phones.
Any ideas?
Its due to MBN files not being present on your device.
[GUIDE] [NO ROOT REQUIRED] [EPIC UPDATE] How to add VoLTE support for other carriers to the G8 (and other Qualcomm powered LG devices too!)
This guide will not work if you are running Android 12 :( I'm gonna keep the intro simple, been a longtime user here on XDA, and recently I found that my T-Mobile LG G8 only supported VoLTE and VoWifi on, you guessed it, T-Mobile! So I did some...
forum.xda-developers.com
I've been looking for a solution to Wifi Calling not working with Smarty Mobile in the UK.
I can get the MBN files for Smarty if someone can help me load them / guide me.
Actually I could be wrong there and PIXEL 3XL uses PB files for carriers
in /product/etc/CarrierSettings theres a list of protobufs heres smarty_gb.pb
You can see that carrier_volte_available_bool is 0
Code:
1: "smarty_gb"
2: 30000000515
3 {
2 {
1: "SMARTY"
2: "mob.asm.net"
3: 1
3: 2
3: 3
11: "http://mms.um.three.co.uk:10021/mmsc"
12: "mms.three.co.uk"
13: "8799"
14: 2
}
2 {
1: "ims"
2: "IMS"
3: 7
4: "14|18|20"
14: 1
16: 1500
23: 0
}
}
4 {
2 {
1: "auto_retry_failed_wifi_emergency_call"
5: 1
}
2 {
1: "call_barring_visibility_bool"
5: 0
}
2 {
1: "carrier_default_wfc_ims_enabled_bool"
5: 1
}
2 {
1: "carrier_default_wfc_ims_mode_int"
3: 1
}
2 {
1: "carrier_supports_ss_over_ut_bool"
5: 0
}
2 {
1: "carrier_ussd_method_int"
3: 2
}
2 {
1: "carrier_volte_available_bool"
5: 0
}
2 {
1: "carrier_wfc_ims_available_bool"
5: 0
}
2 {
1: "editable_wfc_mode_bool"
5: 0
}
2 {
1: "hide_enable_2g_bool"
5: 1
}
2 {
1: "hide_enhanced_4g_lte_bool"
5: 1
}
2 {
1: "ims_reasoninfo_mapping_string_array"
6 {
1: "*|Call is dropped due to Wi-Fi signal is degraded|1407"
}
}
2 {
1: "iwlan.child_sa_rekey_hard_timer_sec_int"
3: 86500
}
2 {
1: "iwlan.child_sa_rekey_soft_timer_sec_int"
3: 86400
}
2 {
1: "iwlan.diffie_hellman_groups_int_array"
7 {
1: 14
1: 5
}
}
2 {
1: "iwlan.ike_rekey_hard_timer_in_sec"
3: 86500
}
2 {
1: "iwlan.ike_rekey_soft_timer_sec_int"
3: 86400
}
2 {
1: "iwlan.mcc_mncs_string_array"
6 {
1: "234-020"
}
}
2 {
1: "lte_rsrp_thresholds_int_array"
7 {
1: 18446744073709551490
1: 18446744073709551504
1: 18446744073709551510
1: 18446744073709551521
}
}
2 {
1: "maxMessageSize"
3: 1048576
}
2 {
1: "non_roaming_operator_string_array"
6 {
1: "23410"
1: "23426"
1: "23430"
1: "23431"
1: "23432"
1: "23433"
1: "23434"
1: "23486"
}
}
2 {
1: "prefer_2g_bool"
5: 0
}
2 {
1: "show_4g_for_lte_data_icon_bool"
5: 1
}
2 {
1: "volte_replacement_rat_int"
3: 3
}
2 {
1: "wcdma_default_signal_strength_measurement_string"
2: "rscp"
}
2 {
1: "wfc_operator_error_codes_string_array"
6 {
1: "REG09|0"
}
}
2 {
1: "wfc_spn_format_idx_int"
3: 1
}
}
8 {
1: 1629435546
}
Just got this working actually via
root access on my phone via magiks
and running these in adb shell
[NO ROOT]SercrtCode to unlock all country 5G and VoLTE!!!
*#*#0702#*#* no thanks
forum.xda-developers.com