[Tool][Windows][PowerShell] Android Platform Tools Updater (ADB & Fastboot) - Android Software/Hacking General [Developers Only]

Hi folks,
I've created a PowerShell script which will install or update Android Platform Tools to the latest version. It will also add the install path to Windows Environment Variables, which will make you able to type "adb" or "fastboot" in CMD from anywhere in Windows.
{
"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"
}
ADB and Fastboot from anywhere.​
Warning / Disclaimer
If this script does any harm or damage, I'm not responsible.
This project is very much a hobby project.
No guarantees are made.
You are responsible for what you do to your system.
License
I chose MIT license. You are free to use and reuse this code, but please point to the source (me) if you redestribute it.
Features
Installs latest Android Platform Tools (ADB & Fastboot).
Updates currently installed Android Platform Tools if newer version is available.
Adds Install Path to Windows Environment Variables, System Wide or Current User (controllable by boolean).
Issues of Feature Request
Please comment in the thread if you find any issues or have feature requests.
I won't guarantee fixes or new features implemented in any timely manner.
Usage
Download script from GitHub.
View as RAW.
Copy everything over to PowerShell ISE, Notepad++ or similar.
Save as "AndroidPlatformToolsUpdater.ps1".
Edit settings to your liking.
Run script as administrator.
Download
https://github.com/o-l-a-v/PowerShell-Projects/blob/master/AndroidPlatformToolsUpdater

Reserved for Changelogs

Thanks looks promising will try it out this evening

Thank you o-1-a-v!
First run I got:
Code:
Installed version is up to date (v0.0.0.0).
Add-AndroidPlatformToolsToEnvironmentVariables : Cannot validate argument on parameter 'PathDirAndroidPlatformTools'. The "[bool]$(Test-Path -Path
$_ -ErrorAction 'SilentlyContinue')" validation script for the argument with value "C:\Program Files (x86)\Android Platform Tools" did not return
a result of True. Determine why the validation script failed, and then try the command again.
At C:\Users\Xxx\Documents\AndroidPlatformToolsUpdater.ps1:335 char:104
+ ... les -PathDirAndroidPlatformTools $PathDirAndroidPlatformTools -System ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [Add-AndroidPlat...onmentVariables], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : ParameterArgumentValidationError,Add-AndroidPlatformToolsToEnvironmentVariables
I created the "Android Platform Tools" dir, and then got:
Code:
Installed version is up to date (v0.0.0.0).
Checking and eventually adding Android Platform Tools to Current User Environment Variables. Success? True.
Running Windows 10.

andacro said:
Thank you o-1-a-v!
First run I got:
Code:
Installed version is up to date (v0.0.0.0).
Add-AndroidPlatformToolsToEnvironmentVariables : Cannot validate argument on parameter 'PathDirAndroidPlatformTools'. The "[bool]$(Test-Path -Path
$_ -ErrorAction 'SilentlyContinue')" validation script for the argument with value "C:\Program Files (x86)\Android Platform Tools" did not return
a result of True. Determine why the validation script failed, and then try the command again.
At C:\Users\Xxx\Documents\AndroidPlatformToolsUpdater.ps1:335 char:104
+ ... les -PathDirAndroidPlatformTools $PathDirAndroidPlatformTools -System ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [Add-AndroidPlat...onmentVariables], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : ParameterArgumentValidationError,Add-AndroidPlatformToolsToEnvironmentVariables
I created the "Android Platform Tools" dir, and then got:
Code:
Installed version is up to date (v0.0.0.0).
Checking and eventually adding Android Platform Tools to Current User Environment Variables. Success? True.
Running Windows 10.
Click to expand...
Click to collapse
Thanks for feedback, I'll look into it

Updated the tool a bit today. Found more showstopper bugs. But think it's at least usefull now.
https://github.com/o-l-a-v/PowerShell-Projects/tree/master/AndroidPlatformToolsUpdater

Script updated with better logic to detect available version vs. installed version.
https://github.com/o-l-a-v/PowerShell-Projects/tree/master/AndroidPlatformToolsUpdater

Thanks for this bro

Made a script that can install ADB drivers on Windows. Not thoroughly tested, but seems to work.
C#:
#Requires -RunAsAdministrator
#Requires -Version 5.1
<#
.SYNOPSIS
Downloads and installs Google ADB drivers for Windows.
.DESCRIPTION
Downloads and installs Google ADB drivers for Windows.
* Currently there is no logic to check installed version vs. what's available.
* If already installed, running the script will just install the newest available driver again.
.NOTES
# About the script
Author: Olav Rønnestad Birkeland | github.com/o-l-a-v
Created: 220318
Modified: 220318
# Resources
* [Google ADB Drivers](https://developer.android.com/studio/run/win-usb)
* [PnPUtil return values](https://docs.microsoft.com/en-us/windows-hardware/drivers/devtest/pnputil-return-values)
.EXAMPLE
& $psISE.CurrentFile.FullPath
#>
# Input parameters
[OutputType($null)]
Param()
# Assets
$Uri = [string] 'https://dl-ssl.google.com/android/repository/latest_usb_driver_windows.zip'
$DownloadPath = [string] '{0}\{1}' -f $env:TEMP, $Uri.Split('/')[-1]
$ExtractDir = [string] $DownloadPath.Replace('.zip','')
$InfFileName = [string] 'android_winusb.inf'
# Download
Write-Output -InputObject '# Download'
if ([System.IO.File]::Exists($DownloadPath)) {
$null = [System.IO.File]::Delete($DownloadPath)
}
$null = [System.Net.WebClient]::new().DownloadFile(
$Uri,
$DownloadPath
)
Write-Output -InputObject ('$? = "{0}", $LASTEXITCODE = "{1}".' -f $?.ToString(), $LASTEXITCODE)
# Extract
Write-Output -InputObject '# Extract'
if ([System.IO.Directory]::Exists($ExtractDir)) {
$null = [System.IO.Directory]::Delete($ExtractDir,$true)
}
$null = Expand-Archive -Path $DownloadPath -DestinationPath $ExtractDir
Write-Output -InputObject ('$? = "{0}", $LASTEXITCODE = "{1}".' -f $?.ToString(), $LASTEXITCODE)
# Install .INF
Write-Output -InputObject '# Install .INF'
$InfFilePath = [string](Get-ChildItem -Path $ExtractDir -Filter $InfFileName -Recurse -File | Select-Object -ExpandProperty 'FullName')
$null = cmd /c ('pnputil.exe /add-driver "{0}" /install' -f $InfFilePath)
Write-Output -InputObject ('$? = "{0}", $LASTEXITCODE = "{1}".' -f $?.ToString(), $LASTEXITCODE)
# Check results
Write-Output -InputObject '# Checking if driver is found after install'
$InstalledDriver = [array](
Get-WindowsDriver -Online -All | Where-Object -FilterScript {$_.'ClassName' -eq 'AndroidUsbDeviceClass'}
)
if ($InstalledDriver.'Count' -ge 1) {
Write-Output -InputObject 'Found the driver.'
Exit 0
}
else {
Throw 'Did not find the driver.'
Exit 1
}
Maybe I'll add the to the main script later.

Related

[ADB Binaries] [Installation] [Linux/Mac OS X] [*Sigh*Windows] All ADB Binaries Here!

Hey guys,
I've seen quite a few threads here, regarding ADB binaries, but I've not seen one which incorporates the binaries for every OS.
So here's mine. And as a little special, I'm going to add a guide on how to download these binaries from my server (All links refer to there) and install them to any computer using Java.
FIRST:
Download links:
Linux (64-bit only!):
ADB
Fastboot
Mac OS X (Intel):
ADB
Fastboot
Windows (Any, except ARM!):
ADB
ADB Windows API
ADB Windows USB API
Fastboot
SECOND (Optional)
Installation on Debian systems.
If you just want to use ADB for your own personal use, you don't have to download the binary and always CD (change directory: Terminal) to the location on your hard drive where you downloaded it to.
If you're running Debian Linux, you can enter following commands into the terminal.
(
KDE: Konsole
Gnome: Terminal
)
Code:
For ADB: sudo apt-get install android-tools-adb
For Fastboot: sudo apt-get install android-tools-fastboot
Or for both (Easiest)
sudo apt-get update && sudo apt-get install android-tools-adb && sudo apt-get install android-tools-fastboot
Just copy & paste the command(s) into the terminal program of your choice and enter your password, the rest is done via the package manager.
Post #2 has the Java code examples for downloading the binaries in your program from my server to your client's computer.
Before you go there;
Please do not mirror these links.
I compiled them myself on my system (and my Dad's Mac Mini) and it was a real pain getting these to work correctly.
Java Download Tutorial
FIRST;
Open your editor or IDE of choice.
I'm using NetBeans 7.4.
You will be greeted by this screen (if you're using NetBeans):
{
"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"
}
Next, create a new project and create a main class.
(I'll be using Universal Android Toolkit for this example, so I already have the code I want).
For the basic stuff, you should add at least two buttons, one to install ADB, and one to remove it again.
Now, go into the code section of your IDE and add the following variables (or copy this code):
import java.io.*;
import javax.swing.*;
public class Main extends JFrame {
// Files
static File adb = null;
static File fastboot = null;
// Depending on the operating system you're programming for, you'll have to add more variables.
// Weblinks
static String webAdb = "http://team-m4gkbeatz.eu/Beatsleigher/adb_linux/adb";
static String webFastboot = "http://team-m4gkbeatz.eu/Beatsleigher/fastboot_linux/fastboot";
// Constructor
public Main() {
adb = new File(System.getProperty("user.home") + "/.programName/.bin/adb");
fastboot = new File(System.getProperty("user.home") + "/.programName/.bin/fastboot");
}
/**
* Calls method <saveUrl> and downloads file.
static void installAdb() {
try {
if (adb.exists()) adb.delete(); // Delete file if it exists, to ensure a clean install
if (fastboot.exists()) fastboot.delete(); // Delete file if it exists, to ensure a clean install
adb.getParentFile().mkdirs(); // Create all directories in front of ADB (user.home/.programName/.bin/).
adb.createNewFile(); // Create new file, so we can write data into it.
;
fastboot.getParentFile().mkdirs(); // Create all directories in front of fastboot (In case they're in different locations)
fastboot.createNewFile(); // Create new file, so we can write data into it.
;
saveUrl(adb.toString(), webAdb); // Download data into ADB.
saveUrl(fastboot.toString(), webFastboot); // Download data into fastboot.
; // Now we chmod the files, so that we can execute them at a later time.
; // I spent a few hours working this out, so please don't forget to give credit in your code/program!
new Thread() { // Create background thread, so UI doesn't freeze.
public void run() {
try {
Runtime r = Runtime.getRuntime();
r.exec("chmod 775 " + adb.toString()); // Chmod the adb executable, so it is marked as executable.
Thread.sleep(2000); // Give the program some time to finish.
interrupt(); // Exit thread.
} catch (IOException | InterruptedException ex) {
// Enter your handling code here.
}
}
}
;
new Thread() { // Create another background thread, so the UI doesn't freeze and so the program can chmod fastboot, while it is sorting out adb.
public void run() {
try {
Runtime r = Runtime.getRuntime();
r.exec("chmod 775 " + fastboot.toString()); // Chmod the fastboot executable, so it is marked as executable.
Thread.sleep(2000); // Give the program some time to finish.
interrupt(); // Exit thread.
} catch (IOException | InterruptedException ex) {
// Enter your handling code here.
}
}
JOptionPane.showMessageDialog(null, "INFO: ADB has been installed to your system!", "SUCCESS", JOptionPane.INFORMATION_MESSAGE); // Display message dialog notifying user of success.
} catch (IOException | InterruptedException ex) {
// Enter your handling code here.
}
}
static void removeAdb() {
try {
if (adb.exists()) adb.delete(); // Delete adb binary if it exists.
if (fastboot.exists()) fastboot.delete(); // Delete fastboot binary if it exists.
JOptionPane.showMessageDialog(null, "INFO: ADB has been removed from your system!", "SUCCESS", JOptionPane.INFORMATION_MESSAGE); // Display message dialog notifiying user of success.
} catch (IOException ex) {
// Enter your handling code here.
}
}
/**
* This is where all the magic happens.
*/
public static short saveUrl(String filename, String urlString) throws MalformedURLException, IOException {
BufferedInputStream fileIn = null; // Defines a BufferedInputStream (Used to download the information/data)
FileOutputStream fileout = null; // Defines a FileOutputStream (Used to write the data to the file)
try {
fileIn = new BufferedInputStream(new URL(urlString).openStream()); // Creates a new instance of said BufferedInputStream, using parameters in the method head.
fileOut = new FileOutputStream(filename); // Creates a new instance of said FileOutputStream, using parameters in the method head.
byte data[] = new byte[1024]; // Creates a new variable of type byte.
int count; // Defines a new variable of type int.
while ((count = fileIn.read(data, 0, 1024)) != -1) { // Reads bytes from this byte-input stream into the specified byte array, starting at the given offset.
fileOut.write(data, 0, count); // Writes downloaded data to specified file.
}
} finally {
if (fileIn != null) {
fileIn.close(); // Closes (Disposes of) fileIn
}
if (fileOut != null) {
fileOut.close(); // Closes (Disposes of) fileOut
}
}
return 1; // Exits method with value code 1
}
}
Click to expand...
Click to collapse
Depending on your IDE, it should look very similar to this:
Note:
Depending on the operating system you're using, you might have to change the variables/add variables, add conditional statements and download more files.
After you've added all the code,
if should look similar to this when executing your program:
Controls:
Installation Success:
Installed Binaries:
Removal Success:
Removed Binaries:
The operating system used in this tutorial was Kubuntu Linux 13.10 64-bit.
The IDE used is NetBeans IDE 7.4 with Java JDK 7.​
/** Disclaimer
* I am not responsible for any damage or similar that may have happened by following this tutorial.
* I have tested and used all the codes and binaries provided without any issues.
* Should the binaries not work, please make sure you downloaded the correct binaries.
* I typed all this code by hand instead of copy-pasting it from NetBeans, as my methods contain some custom code
* which would only confuse you.
* To view the full source code, check out my GitHub (Although it may take a few days to get on there, as I'm still doing major stuff to the program!)
*/
I hope you liked this post of mine and that it was helpful.
If you have any suggestions for this post, please let me know.
If you have anything to say about this post, please stay constructive. And bashing will be reported to the mods and handled accordingly.
​
#Reserved 2
404
links are not working . kindly fix it and resend.

Tutorial develop your own system optimizations

Source: books android, android eclipse, android sdk among other things
Today in this tutorial or development guide I will show you some things or aspects about optmizaciones our terminal I must clarify that this tutorial oh information concerning this subject is to enhance the development of script in our terminals because personally eh oh seen many users and developers make scripts only make the truth terminals are put in some slow and somewhat confusing lines are flat oh that has nothing to do with the terminal
Disclaimer: There is no universal script as users postenado gone on topics I will talk about it here
Let's start
1.- host file: sometimes this file is in the user script optimizations oh android developers share with the community, this file according to the source cited in
wikipedia host according to information this file should not be in the script as optmizacion only used to block the advertising.
2.- sqlite3 file, this file is located in the eclipse program that is used to develop the different collaboration tools android SDK to your development as api respactiva know if this file is being useful at ou terminal applications?
3.-sysinit file, this file so you do is anchor the kernel command files but according to sony xperia developing this should not be so put an example of what is added to the kernel command
example kernel:
export PATH /sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
export LD_LIBRARY_PATH /vendor/lib:/system/lib
export ANDROID_BOOTLOGO 1
export ANDROID_ROOT /system
export ANDROID_ASSETS /system/app
export ANDROID_DATA /data
export ANDROID_STORAGE /storage
export ASEC_MOUNTPOINT /mnt/asec
export LOOP_MOUNTPOINT /mnt/obb
sysinit example:
export PATH=/sbin:/system/sbin:/system/bin:/system/xbin
/system/bin/logwrapper run-parts /system/etc/init.d
as you can see the codes of the lines are almost the same but this change is done in the file should be done when the kernel is modified sysinit file this should not bring those lines for a stock kernel
4.- and so a variety of files that can be found with erroneous command lines as lel source code of each terminal.
5.- is also very common to see the error of Internet optimization lets be honest in each terminal speeds loading and unloading of data in each terminal is different there is no universaol as many believe
for example I have this speed Internet:
setprop net.tcp.buffersize.default 4096,87380,110208,4096,16384,110208
setprop net.tcp.buffersize.wifi 524288,1048576,2097152,262144,524288,1048576
setprop net.tcp.buffersize.lte 524288,1048576,2097152,262144,524288,1048576
setprop net.tcp.buffersize.umts 4094,87380,110208,4096,16384,110208
setprop net.tcp.buffersize.hspa 4094,87380,1220608,4096,16384,1220608
setprop net.tcp.buffersize.hsupa 4094,87380,1220608,4096,16384,1220608
setprop net.tcp.buffersize.hsdpa 4094,87380,1220608,4096,16384,1220608
setprop net.tcp.buffersize.hspap 4094,87380,1220608,4096,16384,1220608
setprop net.tcp.buffersize.edge 4093,26280,35040,4096,16384,35040
setprop net.tcp.buffersize.gprs 4092,8760,11680,4096,8760,11680
setprop net.tcp.buffersize.evdo 4094,87380,262144,4096,16384,262144
(Developer should change these values ??by higher to improve internet speed... in conjunction with the mediaserver file located in the path /system/bin ).
as you can see and if you check with optmizacion that you have on file is build.prop is not the same as those had already mentioned are different concepts
to develop their own optimizations for terminal since so there has been no universal nigun guided?
for this we need the following application Kernel Tuner **root** and with this application you can now begin to develop their script and conf have seen maybe true if so delete them and keep editing yours oh high with low values ??according to your criteria and together with its terminal
if you think that the issue that I should give it a bad vistaso to another terminal and see if it contains the same values ??that we present in the screenshot
{
"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"
}
conf file construction
screenshot in 4 different options are shown:
1.-kernel
2.-vm
3.-fs
4.-net
I will put you one example:
my file was called sysctl kernel.conf
'll post here everything related to the kernel parameter can not amass other kernel parameters outside this can be seen in progracion llamese java, html for instance
sysctl kernel.conf my file will have something like this:
kernel.auto_msgmni = 1
modifying this value would read
kernel.auto_msgmni = 10
and so on with the others I hope they serve this because if down the script certainly has very different terminals common mistakes.
What?
Sent from above using xparent tapatalk blue
Sad to see tutorial without Readability.
Not sure what it's about...
maybe spam !

[DEV][GUIDE] Building Qualcomm modem from sources (msm8626)

This instruction is only valid for modems without a digital signature (or modems with Qualcomm testing signature).
New modem has been tested on my phone Innos D10F (msm8228).
1. Install dependencies:
PHP:
sudo apt-get install p7zip-full
sudo apt-get install lib32z1 lib32ncurses5
sudo apt-get install scons
sudo apt-get install libxml-parser-perl
2. Download all sources:
PHP:
ROOTDIR=$HOME/dev/qcom/msm8626
mkdir -p $ROOTDIR
cd $ROOTDIR
git clone --branch "master" --progress -v "https://v2.pikacode.com/jsr-d10/qcom_msm8626_modem_proc.git" modem_proc
git clone --branch "master" --progress -v "https://v2.pikacode.com/jsr-d10/qcom_msm8626_adsp_proc.git" adsp_proc
git clone --branch "master" --progress -v "https://v2.pikacode.com/jsr-d10/qcom_msm8626_wcnss_proc.git" wcnss_proc
Mirror: magnet:?xt=urn:btih:61e8b8a520181ade801c251e5ec9352e33a7bb8c
3. Copy hexagon_tools_6.4.06.a.7z (this file is present in the torrent) into directory: $HOME/Downloads
4. Install HEXAGON Tools:
PHP:
HEXAGON_ROOT=$HOME/Qualcomm/HEXAGON_Tools
7za x -y -o$HEXAGON_ROOT $HOME/Downloads/hexagon_tools_6.4.06.a.7z
5. Start modem build:
PHP:
ROOTDIR=$HOME/dev/qcom/msm8626
cd $ROOTDIR/modem_proc/build/ms/
./build.sh 8626.gen.prod BUILD_ID=AAAAANAZ -k
For clean repo type:
PHP:
ROOTDIR=$HOME/dev/qcom/msm8626
cd $ROOTDIR/modem_proc/build/ms/
./build.sh 8626.gen.prod BUILD_ID=AAAAANAZ --clean
6. Start ADSP build:
PHP:
ROOTDIR=$HOME/dev/qcom/msm8626
cd $ROOTDIR/adsp_proc/build/ms/
./build.sh msm8x26 msm8x26_MPD BUILD_VER=1234 -k
7. WCNSS module is distributed without sources.
8. Download pil-splitter.py :
PHP:
ROOTDIR=$HOME/dev/qcom/msm8626
cd $ROOTDIR
wget http://github.com/remittor/qcom-mbn-tools/raw/master/pil-splitter.py
9. Copy NON-HLOS.bin image from stock ROM to ROOTDIR directory. Rename NON-HLOS.bin to NON-HLOS-BASE.bin
10. Create file makeimg.sh into ROOTDIR directory and insert following content:
PHP:
cd `dirname $0`
ROOTDIR=$(pwd)
TMPDIR=mbn_images
rm -rf $ROOTDIR/$TMPDIR
mkdir -p $ROOTDIR/$TMPDIR
cd $ROOTDIR/$TMPDIR
MODEM_STK=$ROOTDIR/NON-HLOS-BASE.bin
MODEM_NEW=$ROOTDIR/NON-HLOS.bin
BUILD_ID=AAAAANAZ
IMAGE_DIR=$ROOTDIR/modem_proc/build/ms/bin/$BUILD_ID
python $ROOTDIR/pil-splitter.py $IMAGE_DIR/qdsp6sw.mbn modem
python $ROOTDIR/pil-splitter.py $IMAGE_DIR/mba.mbn mba
BUILD_ID=AAAAAAAA
IMAGE_DIR=$ROOTDIR/adsp_proc/build/ms/bin/$BUILD_ID
python $ROOTDIR/pil-splitter.py $IMAGE_DIR/dsp2.mbn adsp
BUILD_ID=8x26
IMAGE_DIR=$ROOTDIR/wcnss_proc/build/ms/bin/$BUILD_ID
python $ROOTDIR/pil-splitter.py $IMAGE_DIR/wcnss.mbn wcnss
MODEMVERSTR=`grep -aohPz "QC_IMAGE_VERSION_STRING=.*" ./modem.*`
MODEMVER=`echo $MODEMVERSTR | cut -d "=" -f 2`
echo $MODEMVER > $ROOTDIR/ver_info.txt
MODEM_VDISK=/media/vdisk
cp -f $MODEM_STK $MODEM_NEW
sudo mkdir -p $MODEM_VDISK
sudo mount -t vfat $MODEM_NEW -o rw,umask=0000,shortname=lower $MODEM_VDISK
rm -f $MODEM_VDISK/image/modem.*
rm -f $MODEM_VDISK/image/mba.*
rm -f $MODEM_VDISK/image/adsp.*
rm -f $MODEM_VDISK/image/wcnss.*
cp -f ./* $MODEM_VDISK/image/
rm -f $MODEM_VDISK/verinfo/ver_info.txt
mkdir -p $MODEM_VDISK/verinfo
cp -f $ROOTDIR/ver_info.txt $MODEM_VDISK/verinfo/
sudo umount $MODEM_NEW
cd $ROOTDIR
11. Run script makeimg.sh (result: NON-HLOS.bin)
12. New image NON-HLOS.bin should flash in the relevant section of eMMC.
My test result:
{
"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"
}
BONUS
Qualcomm Developers Tools (2016)
QXDM 3.14.1144 (76 MB) (with license and patch)
After installation, you must do:
1) Copy qlms.txt to a directory %PUBLIC%\Documents\Qualcomm\QXDM
2) Replace QXDM.exe file to the patched version
QCAT 6.30.30 (140 MB) (with license and patch)
After installation, replace QCAT.exe to the patched version.
wow
you came back with another great thread :fingers-crossed:
thank you for sharing
i have a question
i still confused, where you got those files?
faizauthar12 said:
where you got those files?
Click to expand...
Click to collapse
Chinese Internet contains a lot of closed sources (qcom & MTK).
Sir, can I have source for msm8916 ?
Btw, greet guide sir
@bugerxXx
Check this thread. Post # 3.
Rename the file to .gz or .zip to get it to extract right.
https://forum.xda-developers.com/de...-rom-msm8909-service-rom-source-qpst-t3544178
Code-8916.gz is the link you are looking for.
Dont forget to hit the thanks button.
BigCountry907 said:
@bugerxXx
Check this thread. Post # 3.
Rename the file to .gz or .zip to get it to extract right.
https://forum.xda-developers.com/de...-rom-msm8909-service-rom-source-qpst-t3544178
Code-8916.gz is the link you are looking for.
Dont forget to hit the thanks button.
Click to expand...
Click to collapse
Thank you sir :highfive:
Sir, I need your help
How to solve this ?
Error : tools are untested for QuRT, please contact qurt.support
I'm try to build 8916 modem_proc
The method and instruction can be found here.
https://translate.google.com/transl.../2016/08/build-qualcomm-modem.html&edit-text=
The original page is in russian.
Use google translate.
http://syshwid.blogspot.com/2016/08/build-qualcomm-modem.html
You will need the untranslated page to see the "code" that is in code boxes.
And the translated page to read the instruction.
Dont forget to hit the thanks button.
This stuff is hard to find.
BigCountry907 said:
The method and instruction can be found here.
https://translate.google.com/transl.../2016/08/build-qualcomm-modem.html&edit-text=
The original page is in russian.
Use google translate.
http://syshwid.blogspot.com/2016/08/build-qualcomm-modem.html
You will need the untranslated page to see the "code" that is in code boxes.
And the translated page to read the instruction.
Dont forget to hit the thanks button.
This stuff is hard to find.
Click to expand...
Click to collapse
if the chip suports ,can we enable LTE using this?
redfeast said:
if the chip suports ,can we enable LTE using this?
Click to expand...
Click to collapse
I would lean more towards thinking that to enable LTE would require the driver to be included in the kernel.
Secondary to that some of the NV Items may need switched.
Install file: "/home/test/dev/qcom/msm8626/modem_proc/core/bsp/mba_img/build/AAAAANAZ/MBA_CORE_IMG_AAAAANAZQ.mbn" as "/home/test/dev/qcom/msm8626/modem_proc/core/bsp/mba_img/build/mba.mbn"
=== Generating mba/qdsp6/AAAAANAZ/MBA_CORE_IMG_AAAAANAZQ_wrap.elf
=== Generating mba/qdsp6/AAAAANAZ/MBA_CORE_IMG_AAAAANAZQ_wrap.elf
=== Generating mba/qdsp6/AAAAANAZ/MBA_CORE_IMG_AAAAANAZQ_wrap_reloc.elf
Install file: "/home/test/dev/qcom/msm8626/modem_proc/core/bsp/mba_img/build/AAAAANAZ/wp/MBA_CORE_IMG_AAAAANAZQ_wrap.elf" as "bin/AAAAANAZ/wp/mba.mbn"
Install file: "/home/test/dev/qcom/msm8626/modem_proc/core/bsp/mba_img/build/AAAAANAZ/MBA_CORE_IMG_AAAAANAZQ_wrap_reloc.elf" as "bin/AAAAANAZ/reloc/mba.mbn"
Install file: "/home/test/dev/qcom/msm8626/modem_proc/core/bsp/mba_img/build/AAAAANAZ/MBA_CORE_IMG_AAAAANAZQ_wrap.elf" as "bin/AAAAANAZ/mba.mbn"
scons: done building targets (errors occurred during build).
scons: *** Found dependency cycle(s):
Internal Error: no cycle found for node /home/test/dev/qcom/msm8626/modem_proc/core/bsp/devcfg_img/build/devcfg_img/qdsp6/AAAAANAZ/M8x26AAAAANAZQ00772_relocflags.elf (<SCons.Node.FS.File object at 0x14ece610>) in state pending
Internal Error: no cycle found for node /home/test/dev/qcom/msm8626/modem_proc/core/bsp/devcfg_img/build/devcfg_img/qdsp6/AAAAANAZ/M8x26AAAAANAZQ00772_reloc.elf (<SCons.Node.FS.File object at 0x14ecd960>) in state pending
Internal Error: no cycle found for node /home/test/dev/qcom/msm8626/modem_proc/core/bsp/devcfg_img/build/devcfg_img/qdsp6/AAAAANAZ/devcfg_def.h (<SCons.Node.FS.File object at 0x15aedf30>) in state pending
File "/usr/lib/scons/SCons/Taskmaster.py", line 1043, in cleanup
==============================================================================
SCons build summary
==============================================================================
** Build errors...
/home/test/dev/qcom/msm8626/modem_proc/build/bsp/modem_proc_img/build/AAAAANAZ/MODEM_PROC_IMG_AAAAANAZQ.elf failed: Error 126
** Build time...
Build start : Wed Jan 3 10:57:20 2018
Build end : Wed Jan 3 11:07:50 2018
Elapsed time : 0:10:30
/home/test/dev/qcom/msm8626/modem_proc/tools/build/scons/SCons/scons command returned error: 2
#-------------------------------------------------------------------------------
# BUILD END: AAAAANAZ
#-------------------------------------------------------------------------------
Build AAAAANAZ: Start Time: Wed Jan 3 10:57:20 2018, End Time: Wed Jan 3 11:07:52 2018
Build AAAAANAZ: Delta Time: 10 minutes, 31 seconds
#-------------------------------------------------------------------------------
Overall Start Time: Wed Jan 3 10:57:20 2018, Overall End Time: Wed Jan 3 11:07:52 2018
Overall Delta Time: 10 minutes, 31 seconds
#-------------------------------------------------------------------------------
Hi!
Thanks for these tools, Do you have the last version patched? QXDM 4.0? With 3.14.1144 version, some message shown "unknown" and I can read the information.
Thanks in advance!
Marco.
Update links in first post:
1) qcom_msm8x26_modem: magnet:?xt=urn:btih:61e8b8a520181ade801c251e5ec9352e33a7bb8c&dn=qcom_msm8x26_modem
2) qcom_msm8x26_vendor: magnet:?xt=urn:btih:313a2f9bc1f2b1fe3ad830e9dfbf4d4432fea384&dn=qcom_msm8x26_vendor
remittor said:
Update links in first post:
1) qcom_msm8x26_modem: magnet:?xt=urn:btih:61e8b8a520181ade801c251e5ec9352e33a7bb8c&dn=qcom_msm8x26_modem
2) qcom_msm8x26_vendor: magnet:?xt=urn:btih:313a2f9bc1f2b1fe3ad830e9dfbf4d4432fea384&dn=qcom_msm8x26_vendor
Click to expand...
Click to collapse
Thank you.
Big question about building a image. I know the plmn are in the image.im looking for a way to bypass the simlock check. I proven with a Dev build there are no plmn's and this in turn locks all sim cards. Even one's that should be carrier unlocked for the phone. If this can be accomplished we can just flash the modem.img to simunlock like back in the day.

[Guide][MOD][THEME] Enable WhatsApp Desktop Dark Mode in MacOS

WhatsApp is set to receive the much-awaited dark mode on desktop platforms. According to a recent report by WABetaInfo, WhatsApp Web and WhatsApp for PC/Mac are currently being tested with a dark theme that paints the main screen and side panel in varying shades of dark grey. In recent builds the code for dark mode is available but there's no official option to enable it. So here's how can you enable it yourself.
{
"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"
}
Enable dark mode in WhatsApp Desktop version of MacOS (Although it must be similar in windows client too)
PREREQUISITES
What things you need to install before starting up WhatsApp Desktop Application Homebrew Nodejs asar node module Installing section is just to install prerequisites if you already don't have them. Otherwise skip to Applying Dark Mode.
INSTALLING
Follow these Steps:
You need to install Whatsapp Desktop on your Mac(Download from OFFICIAL WEBSITE is suggested rather than app store version).
Open Terminal and Install Homebrew
Code:
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
This will install Homebrew on your Mac. To check the version type the following command.
Code:
$ brew -v
Install Nodejs using Homebrew
Code:
$ brew install node
If everything installed successfully then you can type in the following command in the terminal to check the Node and NPM version.
Code:
$ node -v
$ npm -v
Install asar node module globally
Code:
$ npm install -g asar
APPLYING DARK MODE
Go into the app’s directory and create a directory for our working
Code:
$ cd /Applications/WhatsApp.app/Contents/Resources
$ mkdir temp-darkmode
Unpack the app.asar file in the above directory using asar
Code:
$ asar extract app.asar temp-darkmode
Open directory temp-darkmode and insert the code
Code:
cd temp-darkmode
open index.html and edit
Code:
nano index.html
find body
HTML:
<body class="native darwin">
replace it with code below
HTML:
<body class="native darwin dark">
save the file, hit ctrl+x type y and enter
Pack the app.asar file,Go into the app’s directory
Code:
$ cd /Applications/WhatsApp.app/Contents/Resources
to pack type
Code:
$ sudo asar pack temp-darkmode app.asar
You are done
Source: Github

[TOOL] Syndical - an alternative to well-known SamLoader

Syndical
This is an alternative to SamLoader - cleaner code, easier to understand and tamper with.
Written purely in C#. SamLoader was, of course, the base of Syndical, but impemented differently.
Current progress can be viewed here: Trello board.
Source code and releases: GitHub.
Why I should use Syndical?
1) It looks a lot better than any other firmware downloaders
2) Download & Decrypt is a lot faster, as it won't download the entire file and then only decrypt it.
3) Because I'll steal your liver
Warning
Resume mode might work not as expected.
Also Samsung ships only two last firmware versions, Fetch is proof.
Screenshots
{
"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"
}
How to use
Arguments
Code:
-m, --mode Required. Which mode I should use
-v, --firmware-version Firmware version
-i, --input File to decrypt
-o, --output Filename for decrypted/downloaded file
-M, --model Required. Device model
-r, --region Required. Device region
-f, --factory Download factory firmware (Binary Nature)
-h, --disable-hash-check Disables hash check in Download mode
-r, --disable-resume Disables resume in Download mode
--help Display this help screen.
--version Display version information.
Modes
Code:
Download Download firmware
Decrypt Decrypt firmware
Fetch Fetch latest firmware
DownloadDecrypt Download and decrypt firmware simultaneously
Examples
Code:
./Syndical.Application -m Download -v A207FXXU2CUI2/A207FOXM2CUI2/A207FXXU2CUI2/A207FXXU2CUI2 -M SM-A207F -r SER -f
./Syndical.Application -m Decrypt -v A207FXXU2CUI2/A207FOXM2CUI2/A207FXXU2CUI2/A207FXXU2CUI2 -M SM-A207F -r SER -f
./Syndical.Application -m DownloadDecrypt -v A207FXXU2CUI2/A207FOXM2CUI2/A207FXXU2CUI2/A207FXXU2CUI2 -M SM-A207F -r SER -f
./Syndical.Application -m Fetch -M SM-A207F -r SER
Credits
TheAirBlow for Syndical itself .
nlscc for SamLoader.
Licence
Mozilla Public License Version 2.0
Interesting. Does it have a GUI?
Slaggy said:
Interesting. Does it have a GUI?
Click to expand...
Click to collapse
It doesn't, and probably it never would get one. Maybe I'll make an Avalonia GUI for Thor Suite (I have plans to make a software bundle: flash tool, firmware downloader, PIT Viewer/Editor, etc.), but I want to make the flash tool and etc. to be written in C++ (it would be faster, I can make my own driver, working with libusb is easier, etc.), but I'm very bad at it, so I need someone with relatively good knowledge to help me. Until I find someone, all Samsung Loki projects would be abandoned (Thor and Syndical)

Categories

Resources