[TOUCHCOVERY] 4EXT Recovery Touch v1.0.0.5 RC 5 | USB unbrick with autodetection

Search This thread

madmaxx82

Retired Recognized Developer
Jan 17, 2010
4,287
4,563
www.4ext.net

Proudly presenting:
4EXT Recovery Touch

attachment.php
attachment.php
attachment.php


  • brand new user interface: "4EXT UI"
  • touchscreen only
  • extremely fast
  • much more useful features than the already feature-packed 4EXT Recovery Classic v2.2.7 RC5 (see 2nd post)
  • USB-Unbrick feature with auto detection.
  • optionally save space by configuring recovery to exclude /cache from backups
  • you can configure recovery to save even more space by excluding dalvik-cache from backups
  • calculates real space needed to complete a backup to save you from troubles
  • detects your local time zone
  • -> correct time is used for backups you start from within recovery
  • allows you to change md5sum check behaviour
  • displays and updates your current battery level in real time
  • scrollable texthistory (drag down the statusbar)
  • built-in interactivity (yes/no questions) for updater-scripts
  • built-in screenshot functionality
  • extensive theming capabilities!
  • nearly ALL YOU SEE is changeable.
  • "worker bar": create your own custom animations, there are (nearly) no limits! Use any shapes/sizes/animations et.c.
  • extra low cpu needed for that: absolutely no negative impact on backup/restore speed.
  • async UI rendering for optimal performance for the "heavy tasks" like backup/restore
  • backups even faster than with usual recoveries.
  • .. explore the new interface to see more ;)
  • includes all features of 4EXT Recovery Classic







INFO:


For App and Rom devs:


Make use of the Recovery Interface Api provided by the (free and paid) 4EXT Recovery Apps to push updates/mods/addons for auto installation.
Very easy to use and to integrate into Apps or even shell scripts.

Please check 3rd post.​

Info regarding 4EXT Recovery Touch and its yesno feature, or any interactive installer scripts you might already use, please see 3rd post.​







Themes for 4EXT Recovery Touch:

Official 4EXT Recovery Themes Index & Discussion Thread





Download





  • This ensures that your downloads are ok by automatically verifying md5sums and that known issues and changelogs are easily accessible
  • When you install or download a recovery via the app it makes sure that your recovery config is correctly set up.
  • It allows to automatically setup your time zone for recovery.
  • You can use it to get notified about updates regarding your recovery version
  • You can configure it to get notified in case any critical bugs have been discovered of the recovery version you currently have installed.
  • It allows me to update known issues/changelogs immediately and to quickly pull a newly released version if there were reports about critical bugs
  • You can also use it to just download a recovery.zip containing the image. The download will be automatically verified for correct md5sums!



By default the app also saves the recovery.img you flash on your sdcard,
so you can use it to flash the recovery via fastboot in case you need to do that one day.

If you somehow lost those files, there's a direct download (Desire GSM), (Desire CDMA) for a version you can flash via fastboot.





4EXT Recovery Control



For a list of its many features, visit www.4ext.net

Some examples :
  • Very easy to use, but also includes an extensive set of features available via "advanced mode"
  • Comfortable configure all settings of recovery
  • Calculate the space needed to create a new full or advanced backup

    So you can make sure the backup will succeed before even rebooting into recovery.
    Advanced Backups: While you are selecting / deselecting partitions, it will display and update the currently needed space to complete that custom backup set.​
  • Identifies and adds your romname so you don't need to type so much when chosing a meaningful name for your backup
  • When you restore a backup, the app does the md5sum check instead of the recovery
    This ensures that you know whether the restore process will succeed before even rebooting into recovery​
  • Flash as many zip files you want in one go
  • Automatically calculate and display the md5sums of all zip files you are going to flash
  • Check your backups' health to ensure they will restore later when you need them, by verifying their md5sums!
  • Optionally, but highly not recommended:
    If md5sums don't match but you really need that backup badly, you might want to restore it anyway.
    You can you this app to fix the md5sums of a given backup​
  • As an example, the following is possible to do in just one session:
    Restore a backup, set to create a backup / advanced backup before the restore,
    format all partitions with a file system of your choice before the restore process starts,
    flash additional zip files afterwards, fix permissions and select to stay inside recovery or to reboot automatically once all actions are complete.​
  • Much, much more! See www.4ext.net :)


Big thanks to craacK for a lot of great icons! :)







Thanks:


Big thanks to DolphiCom for all the graphics, the worker bar and a whole lot of great ideas and to the many great testers who spent all day/night testing, reporting bugs, making suggestions, helping with decisions:

Jotha, craacK, Patrics83, Euphorie, Mike1986, Whiskey103, ptr_hamilton, Lizard, TheUntouchable

Big thanks to Jotha and Whiskey103 for testing the themes features creating and their first themes for 4EXT Recovery Touch.

Also Big thanks to all the donators to 4EXT Recovery and everyone who has bought 4EXT Recovery Control! Without you I wouldn't be able to spend as much time with the project:

SO A HUGE THANK YOU!​

FRANKIE-BOY, SYRAKUS, FISHA21, ZJXPOT, ZEEKIZ, A USER, PHILOS64, STEVEATHOME, PREACHER65, BEN_PYETT, HAWST, ANIT77, ULTRA DROID, PTR_HAMILTON, BEANBEAN50, SEBASTIAAN15 and LOVEBOATCAPTAIN


Of course BIG THANKS to KOUSH for ClockworkModRecovery!
Without him, 4EXT Recovery wouldn't exist!​



Thanks a lot to the following users for initial testing for specific devices :

PTR_HAMILTON, SEBASTIAAN15, THEUNTOUCHABLE, BMONSTER, ANDREIGHERGHE, PRESTON74, MADKAI, YASIR, PLAYPETEPP
IPERZAMPEM0, THESHAWTY, JBBANDOS, GREGFERNS and INCREDULOUS
Special thanks to Invasion2 and Stlouie65 for spending at least 10 hours of their time helping me debug a really nasty issue on the myTouch 4G!

Also thanks for obtaining calibration values for the touchscreen:

Wolfepakt
Jaibar
Jayallen1980
Stlouie65
Invasion2
PacerguyDon
Ben_Pyett
Dargocitfer
Darknessrise1234
Lizard
Azazel71

 
Last edited:

madmaxx82

Retired Recognized Developer
Jan 17, 2010
4,287
4,563
www.4ext.net

Features of 4EXT Recovery Classic:
(Use 4EXT Recovery Control or Recovery Updater for complete Changelogs and Known issues!)


not all features may be relevant for all devices



Displays additional information:
  • Identifies your current rom and displays its name
  • Current filesystems on your partitions
  • Free space remaining of all of your volumes
  • Current battery charge level

Backup | Restore:
  • Correctly calculates free space needed to complete a backup ( version > 2.2.6 RC4 )
  • Tar backups (can be switched on or off)
  • Complete CWMR5 compatibility
  • All Backups you create will be named after your currently installed Rom for easier identification.
  • Never unwillingly get "downgraded" to EXT3 again
  • Always restores backups using the file systems you HAD on your partitions at the time of creation!
    -> all partitions formatted with ext4 at that time, will be restored to ext4. The same is true for ext3.​
  • You can manually change any existing Backup to ext4 or ext3
    -> so that after a restore, all partitions and up with the file system you wanted!​
  • Advanced Backup: backup only a single partition
  • Convert any of your partitions to EXT4 or EXT3 without data loss.

Formatting:
  • When you wipe or format it will always use the same file system you currently have.
    -> but you can change that​
  • When you format ext4 it will always create an aligned file system
  • Correctly identifies unformatted sd-ext partitions
    -> if it finds one it displays a warning and suggests you may format them by visiting the 4EXT menu​
  • Filesystem check and repair option in advanced menu

Partitioning:
  • Alignment check of your partitions
  • Full support for up to 2 sd-ext partitions + swap (Backup/restore/format/convert, fsck, et.c.)
  • (RE-) Partition your sdcard for sd-ext without removing your fat32 partition.
  • All partitions created with 4EXTRecovery will be perfectly aligned to 4k

Installing:
  • Integrated md5sum checking option


Menus:
  • Most popular menu items rearranged
  • Format menu
  • Power Menu + option to reboot into bootloader
  • Changed Advanced Restore: first select what you want to restore, then select the backup
    -> Useful for restoring from "Advanced Backups"​

4ext.prop:
  • Configuration file on your sdcard where you can set options to be used by 4EXTRecovery
  • Change all settings conveniently with 4EXT Recovery Control
  • Many more options to come
  • Share your settings / themes by packing your config into a flashable theme

Other stuff:
  • USB Storage Autostart (must be switched on)
  • Mount usb storage exposes all partitions on your sdcard to the os (not just fat32)
    -> you could even partition your sdcard from your PC while connected via USB​
  • Switch haptic feedback on/off
  • Button backlights




 

madmaxx82

Retired Recognized Developer
Jan 17, 2010
4,287
4,563
www.4ext.net
I need to leave now for the next few hours unfortunately.
Info on how to prevent recovery from updating the screen (needed for interactive updaters like yes/no scripts) or how to use 4EXT built-in yes/no feature will be posted here.

A MERRY CHRISTMAS TO YOU ALL :)
 
Last edited:

madmaxx82

Retired Recognized Developer
Jan 17, 2010
4,287
4,563
www.4ext.net
Recovery Interface Api for Apps and Scripts

Both: free and paid 4EXT apps now provide a very easy to use interface you can use to access 4EXT Recovery from within your shell scripts or apps.

Features:

  • wipe cache
  • wipe dalvik
  • wipe data / factory reset
  • install multiple zips at once
  • backup

If you are interested, please download this zip file with examples



How to make use of 4EXT Recovery Touch from within updater-scripts:

Since Beta 1.0.0.3 Beta 4 you can do the following:

  • identify whether the user is running 4EXT Recovery Touch or not (to use or not to use the following commands)
  • make use of the native yes/no dialogue (confirm / cancel buttons)
  • prevent recovery from redrawing the screen ( in case you need to use your own 3rd party interactive binary )



To identify 4EXT Recovery Touch:


Code:
if getprop("ext.edition") == "ng" then

<your code>

endif;



To use the native confirm dialogues:

Code:
ui_print("4ext: show_yesno"); # <-- recovery will pause your script and display "yes / no" buttons.
run_program("/sbin/sleep", "2"); # <-- for safety since the above is executed asynchronous 

#check the return value by calling:

if getprop("ext.confirm") == "yes" then

<yourcode>

endif;


To prevent recovery from redrawing the screen ( if you want to use an external binary that needs to occupy the screen and get the focus )


Code:
ui_print("4ext: disable_scrn_update");

# don't forget to enable it again after your yesno binary or graphical installer is finished, by calling:

ui_print("4ext: enable_scrn_update"); #otherwise the recovery will appear to be frozen as it won't update the screen anymore.
 
Last edited:

bmonster

Senior Member
Mar 15, 2011
179
63
Pretty Awesome Dude, Well done :)

Have a merry Christmas..

Sent from my HTC Runnymede using Tapatalk
 

morcus

Senior Member
Dec 11, 2007
108
6
Nice =)
I'll try it and post feedback

EDIT : under 1003 b4 and it seems to work very well.
But sometimes the UI is a bit laggy on the Desire.
Would be nice to implement the support of the trackball to control the UI in case of problems with the touchscreen.

Thanks for this chrismas present =)
 
Last edited:

ZeGuitarist

Senior Member
Apr 16, 2011
762
356
Belgium
I would just like to take a moment to say that maddmax is by far and away the most gifted, skilled and dedicated developer in the entire Desire section - even accounting for the 'late' robocik, baadnewz, and snq-.

For this reason, I'd also like to call out to everyone to continue to support this man, because more than anyone else at the moment, he is keeping Desire development alive for us all to enjoy.

And finally, on a slightly less dramatic note: cheers, Max, you rock. ^^
 

K900

Senior Member
Aug 12, 2010
4,846
2,893
Moscow
@Max Do you plan releasing the source code? It would be awesome and there are things I already want to do with it ;)

Sent from my Full Android on Bravo using XDA App
 

Droidzone

Inactive Recognized Developer
Sep 24, 2010
5,531
2,283
Kochi
www.droidzone.in
OnePlus 9 Pro
Madmaxx, I finally decide to retire my beloved Desire after a long 2yrs and Touch recovery coincides with it... Not fair! :D

Kudos!

Any plans on starting development on the Samsung devices, esp the Note? Count me in for testing on the Note, if you're interested. :)
 
Last edited:

Migz71

Senior Member
Aug 3, 2011
208
26
I would just like to take a moment to say that maddmax is by far and away the most gifted, skilled and dedicated developer in the entire Desire section - even accounting for the 'late' robocik, baadnewz, and snq-.

For this reason, I'd also like to call out to everyone to continue to support this man, because more than anyone else at the moment, he is keeping Desire development alive for us all to enjoy.

And finally, on a slightly less dramatic note: cheers, Max, you rock. ^^

Totally agree with this madmax top work fella ;)
 

xesor

Member
Feb 12, 2011
18
2
Taipei
Madmaxx, I finally decide to retire my beloved Desire after a long 2yrs and Touch recovery coincides with it... Not fair! :D

Kudos!

Any plans on starting development on the Samsung devices, esp the Note?

Biggest one in Android~?
Amazing, I'd really like to have one...:D

---------- Post added at 05:23 PM ---------- Previous post was at 05:20 PM ----------

Thanks madmaxx82,
it's really a evolution.
 

beanbean50

Senior Member
Jul 9, 2008
3,490
1,642
London
Hi max,
lovin the new touch recovery the black and silver theme is simply awesome :) but I was just wondering if there's a way to change the garish yellow screen ?
 

Attachments

  • snap20111224_160907.jpg
    snap20111224_160907.jpg
    39.4 KB · Views: 1,069

coolexe

Retired Recognized Developer
Aug 17, 2008
2,371
5,371
ohh wow madmaxx82 locking nice on my Desire...i also using ur DHD Touch Recovery...:D

Madmaxx, I finally decide to retire my beloved Desire after a long 2yrs and Touch recovery coincides with it... Not fair! :D

Kudos!

Any plans on starting development on the Samsung devices, esp the Note?

what...?:eek: ohh another Dev leaving us...so whats ur Next device...;)
 

Top Liked Posts

  • There are no posts matching your filters.
  • 166

    Proudly presenting:
    4EXT Recovery Touch

    attachment.php
    attachment.php
    attachment.php


    • brand new user interface: "4EXT UI"
    • touchscreen only
    • extremely fast
    • much more useful features than the already feature-packed 4EXT Recovery Classic v2.2.7 RC5 (see 2nd post)
    • USB-Unbrick feature with auto detection.
    • optionally save space by configuring recovery to exclude /cache from backups
    • you can configure recovery to save even more space by excluding dalvik-cache from backups
    • calculates real space needed to complete a backup to save you from troubles
    • detects your local time zone
    • -> correct time is used for backups you start from within recovery
    • allows you to change md5sum check behaviour
    • displays and updates your current battery level in real time
    • scrollable texthistory (drag down the statusbar)
    • built-in interactivity (yes/no questions) for updater-scripts
    • built-in screenshot functionality
    • extensive theming capabilities!
    • nearly ALL YOU SEE is changeable.
    • "worker bar": create your own custom animations, there are (nearly) no limits! Use any shapes/sizes/animations et.c.
    • extra low cpu needed for that: absolutely no negative impact on backup/restore speed.
    • async UI rendering for optimal performance for the "heavy tasks" like backup/restore
    • backups even faster than with usual recoveries.
    • .. explore the new interface to see more ;)
    • includes all features of 4EXT Recovery Classic







    INFO:


    For App and Rom devs:


    Make use of the Recovery Interface Api provided by the (free and paid) 4EXT Recovery Apps to push updates/mods/addons for auto installation.
    Very easy to use and to integrate into Apps or even shell scripts.

    Please check 3rd post.​

    Info regarding 4EXT Recovery Touch and its yesno feature, or any interactive installer scripts you might already use, please see 3rd post.​







    Themes for 4EXT Recovery Touch:

    Official 4EXT Recovery Themes Index & Discussion Thread





    Download





    • This ensures that your downloads are ok by automatically verifying md5sums and that known issues and changelogs are easily accessible
    • When you install or download a recovery via the app it makes sure that your recovery config is correctly set up.
    • It allows to automatically setup your time zone for recovery.
    • You can use it to get notified about updates regarding your recovery version
    • You can configure it to get notified in case any critical bugs have been discovered of the recovery version you currently have installed.
    • It allows me to update known issues/changelogs immediately and to quickly pull a newly released version if there were reports about critical bugs
    • You can also use it to just download a recovery.zip containing the image. The download will be automatically verified for correct md5sums!



    By default the app also saves the recovery.img you flash on your sdcard,
    so you can use it to flash the recovery via fastboot in case you need to do that one day.

    If you somehow lost those files, there's a direct download (Desire GSM), (Desire CDMA) for a version you can flash via fastboot.





    4EXT Recovery Control



    For a list of its many features, visit www.4ext.net

    Some examples :
    • Very easy to use, but also includes an extensive set of features available via "advanced mode"
    • Comfortable configure all settings of recovery
    • Calculate the space needed to create a new full or advanced backup

      So you can make sure the backup will succeed before even rebooting into recovery.
      Advanced Backups: While you are selecting / deselecting partitions, it will display and update the currently needed space to complete that custom backup set.​
    • Identifies and adds your romname so you don't need to type so much when chosing a meaningful name for your backup
    • When you restore a backup, the app does the md5sum check instead of the recovery
      This ensures that you know whether the restore process will succeed before even rebooting into recovery​
    • Flash as many zip files you want in one go
    • Automatically calculate and display the md5sums of all zip files you are going to flash
    • Check your backups' health to ensure they will restore later when you need them, by verifying their md5sums!
    • Optionally, but highly not recommended:
      If md5sums don't match but you really need that backup badly, you might want to restore it anyway.
      You can you this app to fix the md5sums of a given backup​
    • As an example, the following is possible to do in just one session:
      Restore a backup, set to create a backup / advanced backup before the restore,
      format all partitions with a file system of your choice before the restore process starts,
      flash additional zip files afterwards, fix permissions and select to stay inside recovery or to reboot automatically once all actions are complete.​
    • Much, much more! See www.4ext.net :)


    Big thanks to craacK for a lot of great icons! :)







    Thanks:


    Big thanks to DolphiCom for all the graphics, the worker bar and a whole lot of great ideas and to the many great testers who spent all day/night testing, reporting bugs, making suggestions, helping with decisions:

    Jotha, craacK, Patrics83, Euphorie, Mike1986, Whiskey103, ptr_hamilton, Lizard, TheUntouchable

    Big thanks to Jotha and Whiskey103 for testing the themes features creating and their first themes for 4EXT Recovery Touch.

    Also Big thanks to all the donators to 4EXT Recovery and everyone who has bought 4EXT Recovery Control! Without you I wouldn't be able to spend as much time with the project:

    SO A HUGE THANK YOU!​

    FRANKIE-BOY, SYRAKUS, FISHA21, ZJXPOT, ZEEKIZ, A USER, PHILOS64, STEVEATHOME, PREACHER65, BEN_PYETT, HAWST, ANIT77, ULTRA DROID, PTR_HAMILTON, BEANBEAN50, SEBASTIAAN15 and LOVEBOATCAPTAIN


    Of course BIG THANKS to KOUSH for ClockworkModRecovery!
    Without him, 4EXT Recovery wouldn't exist!​



    Thanks a lot to the following users for initial testing for specific devices :

    PTR_HAMILTON, SEBASTIAAN15, THEUNTOUCHABLE, BMONSTER, ANDREIGHERGHE, PRESTON74, MADKAI, YASIR, PLAYPETEPP
    IPERZAMPEM0, THESHAWTY, JBBANDOS, GREGFERNS and INCREDULOUS
    Special thanks to Invasion2 and Stlouie65 for spending at least 10 hours of their time helping me debug a really nasty issue on the myTouch 4G!

    Also thanks for obtaining calibration values for the touchscreen:

    Wolfepakt
    Jaibar
    Jayallen1980
    Stlouie65
    Invasion2
    PacerguyDon
    Ben_Pyett
    Dargocitfer
    Darknessrise1234
    Lizard
    Azazel71

    33

    Features of 4EXT Recovery Classic:
    (Use 4EXT Recovery Control or Recovery Updater for complete Changelogs and Known issues!)


    not all features may be relevant for all devices



    Displays additional information:
    • Identifies your current rom and displays its name
    • Current filesystems on your partitions
    • Free space remaining of all of your volumes
    • Current battery charge level

    Backup | Restore:
    • Correctly calculates free space needed to complete a backup ( version > 2.2.6 RC4 )
    • Tar backups (can be switched on or off)
    • Complete CWMR5 compatibility
    • All Backups you create will be named after your currently installed Rom for easier identification.
    • Never unwillingly get "downgraded" to EXT3 again
    • Always restores backups using the file systems you HAD on your partitions at the time of creation!
      -> all partitions formatted with ext4 at that time, will be restored to ext4. The same is true for ext3.​
    • You can manually change any existing Backup to ext4 or ext3
      -> so that after a restore, all partitions and up with the file system you wanted!​
    • Advanced Backup: backup only a single partition
    • Convert any of your partitions to EXT4 or EXT3 without data loss.

    Formatting:
    • When you wipe or format it will always use the same file system you currently have.
      -> but you can change that​
    • When you format ext4 it will always create an aligned file system
    • Correctly identifies unformatted sd-ext partitions
      -> if it finds one it displays a warning and suggests you may format them by visiting the 4EXT menu​
    • Filesystem check and repair option in advanced menu

    Partitioning:
    • Alignment check of your partitions
    • Full support for up to 2 sd-ext partitions + swap (Backup/restore/format/convert, fsck, et.c.)
    • (RE-) Partition your sdcard for sd-ext without removing your fat32 partition.
    • All partitions created with 4EXTRecovery will be perfectly aligned to 4k

    Installing:
    • Integrated md5sum checking option


    Menus:
    • Most popular menu items rearranged
    • Format menu
    • Power Menu + option to reboot into bootloader
    • Changed Advanced Restore: first select what you want to restore, then select the backup
      -> Useful for restoring from "Advanced Backups"​

    4ext.prop:
    • Configuration file on your sdcard where you can set options to be used by 4EXTRecovery
    • Change all settings conveniently with 4EXT Recovery Control
    • Many more options to come
    • Share your settings / themes by packing your config into a flashable theme

    Other stuff:
    • USB Storage Autostart (must be switched on)
    • Mount usb storage exposes all partitions on your sdcard to the os (not just fat32)
      -> you could even partition your sdcard from your PC while connected via USB​
    • Switch haptic feedback on/off
    • Button backlights




    24
    I need to leave now for the next few hours unfortunately.
    Info on how to prevent recovery from updating the screen (needed for interactive updaters like yes/no scripts) or how to use 4EXT built-in yes/no feature will be posted here.

    A MERRY CHRISTMAS TO YOU ALL :)
    19
    Recovery Interface Api for Apps and Scripts

    Both: free and paid 4EXT apps now provide a very easy to use interface you can use to access 4EXT Recovery from within your shell scripts or apps.

    Features:

    • wipe cache
    • wipe dalvik
    • wipe data / factory reset
    • install multiple zips at once
    • backup

    If you are interested, please download this zip file with examples



    How to make use of 4EXT Recovery Touch from within updater-scripts:

    Since Beta 1.0.0.3 Beta 4 you can do the following:

    • identify whether the user is running 4EXT Recovery Touch or not (to use or not to use the following commands)
    • make use of the native yes/no dialogue (confirm / cancel buttons)
    • prevent recovery from redrawing the screen ( in case you need to use your own 3rd party interactive binary )



    To identify 4EXT Recovery Touch:


    Code:
    if getprop("ext.edition") == "ng" then
    
    <your code>
    
    endif;



    To use the native confirm dialogues:

    Code:
    ui_print("4ext: show_yesno"); # <-- recovery will pause your script and display "yes / no" buttons.
    run_program("/sbin/sleep", "2"); # <-- for safety since the above is executed asynchronous 
    
    #check the return value by calling:
    
    if getprop("ext.confirm") == "yes" then
    
    <yourcode>
    
    endif;


    To prevent recovery from redrawing the screen ( if you want to use an external binary that needs to occupy the screen and get the focus )


    Code:
    ui_print("4ext: disable_scrn_update");
    
    # don't forget to enable it again after your yesno binary or graphical installer is finished, by calling:
    
    ui_print("4ext: enable_scrn_update"); #otherwise the recovery will appear to be frozen as it won't update the screen anymore.
    7
    Just returned home.. and working on the shrunk version.