This page covers fetching, installing, and running the Android, PC, and source-code versions of this app. For more on what you can do with the app after you start it, see the Usage Overview and GUI Guide. To jump to your package's downloads and usage notes on this page, click its name here:
You can also find an abbreviated downloads page here.
This program (a.k.a. app) is provided as formal apps for Android and macOS, self-contained executables for Windows and Linux, and a platform-neutral source-code package for PCs. You'll need the Android version to sync on phones, PC versions to sync on PCs, and both Android and PC versions to sync between phones and PCs. The Android version is available on the Play store, and PC versions are available as downloads on this page.
All versions of this app are free, ad-free, and unlimited in functionality, and all packages on this page contain the most recent version of this app. This app's Main-tab actions run code in the open-source Mergeall system, which has been used on PCs since 2014 and Android since 2018. Mergeall, along with the runnable source-code package, provide fallback options on PCs that cannot run other packages.
On all platforms, prior to running this app on your valued content:
See the app's startup messages and About tab for its formal terms of use. The rest of this page covers install steps and usage info for each supported platform, as well as the source-code and Mergeall alternatives. To read about an app package, either scroll ahead or click a platform's name in the list above.
This app's Android version is distributed on the Play store, which always has the latest version of this app and installs it on request. This is a free and full app with no strings attached. It does not advertise, require logins or subscriptions, ask for payments to unlock features, or require other software to be installed.
See also the Android screenshots and video for visuals of many of the following package details:
Android manages app uninstalls; use your phone's normal procedure.
Logfiles are retained on uninstalls in your Documents folder,
per the Data section ahead. On Androids 10 and later, uninstall dialogs
include a
toggle
that allows you to save the app's storage so that it is
restored on reinstall; be sure to enable this if you store content
in the app's own storage space
(i.e., in APP)
or wish to retain app settings per the Data section ahead.
Phone rooting is not required to use this app on Android; Main-tab actions continue running if you navigate to another app, turn off the screen, or pause the app with Back; and closing the app in Recents terminates both the app and its running action (Back taps on the Main tab or dialogs instead suspend the app's GUI without stopping running actions). For more on action run modes, see the GUI Guide and Usage Overview.
This app was built for ARM chip architectures most commonly used on Android devices
today,
and it supports Android devices using both 4K and newer 16K memory page
sizes
in its latest version. Nearly all Android devices provide the removable-drive
support required by most of this app's roles.
Watch this space for news about future Androids, and see also the tip
below for a special case on Androids 10 and earlier.
Either way, this is a firm requirement on Android, so please follow the prompt's
directions. The app cannot process your content without this and will
prompt for storage permission again before each Main-tab action and folder popup
if not granted.
When granted, this app respects the privacy of your content in full; see the
privacy statement both in its About and Help
tabs and on this
website.
There's more on Android storage
here and
here.
On some phones, you may also need to restart the app immediately after
granting these permissions to fully enable access. This is a one-time startup task,
and the app will
prompt
you to do this if needed when storage accesses fail in both
Main-tab actions and the folder-chooser popup.
On recent Androids, you will also be asked to permit notifications
for Main-tab actions, the first time one is
started.
This is a feature of the default foreground-service mode for actions, which
allows you to easily see when an action finishes; see the
services coverage here.
As of version 1.2.0, the sequence of steps used to request notification permission
varies on Androids 13 and later; see the
update.
Also on Android, logfiles are stored more permanently in your phone's
shared-storage
Removable drive:
To use this app, you'll attach a removable
drive (e.g., microSD or USB SSD or thumb drive)
to each device in turn, to serve as a conduit for transferring content and changes.
This drive acts much like a cloud but is faster and more private.
This app does not work if you instead attach your phone to your PC directly
by USB cable. This is covered in the app's usage
docs,
Play-store
intro
and
demos but has caused
confusion. For more coverage, see the Windows MTP tip
ahead, and the drives Tech Note.
Orientations:
This app works in both
portrait
and
landscape
phone orientations.
Landscape is useful if content is too crowded in portrait, but this app
may work better in portrait mode on narrow
phones
due to landscape's display
constraints.
This naturally is less of a factor for foldables, tablets,
and stylus-enabled phones; on other devices, you can address landscape
crunch to some degree by adjusting font size in the
Config tab for better fit.
As noted, this app also runs in
split-screen
and
popup
modes where supported,
but these may be impractical on smaller
screens.
Removables on older Androids:
There is a special case for Androids 10 and earlier, which limits
the folders that may be used for updates on removable drives. In this
app, this impacts SYNCs and COPYs run on these older Androids.
See its full coverage
here and
here.
As noted in the second of those links, you should also generally wait until
a USB drive mounts before trying to access it to avoid odd but temporary states.
App-storage persistence:
As a reminder, content in Android app-specific storage only
(labeled APP in the Main-tab's folder choosers) may be erased on
both uninstalls and app-data clears. See
here and
here for details, and
use shared storage (PHONE) for on-phone content that is immune to
these risks and never erased on app uninstalls or clears.
Drive mounts:
On Android, removable drives are automatically mounted at standard locations made
available to this
app
by Android API calls; no user action is required.
If you're using a
rooted
phone, make sure that any manual mounts use the API's
standard locations if you wish to use drives in this app.
Support for navigating to other locations from ROOT on such phones is experimental.
Folder choosers show all drives in standard locations, named by volume
label when available.
Typically, though, this app requires 150M-800M. While high, this is
less than many games,
and virtual and compressed memory ease constraints on some phones.
Moreover, needs vary by usage: Main-tab actions alone
run in under 200M, but opening the About and Help tabs can add 50M
and 600M, respectively, due to text handling in the underlying GUI toolkit
(Help's text itself is today just 44K). Because you can
access Help online and are
unlikely to open About or Help once you're familiar with the
app, this app's high-end memory requirements are avoidable and fleeting.
If in doubt, please vet this app before using it for real data on limited-memory devices,
which means those having less than today's 4G baseline.
Also note that disabling virtual memory for speed per the next tip reduces
memory capacity; use with care if space is tight, else apps may not run at all.
As an example, this app's Main-tab
SHOW comparison action was timed repeatedly on
Android 13 for the same 200G folders on USB and shared storage. Among its
runs, this action clocked in at anywhere between 40 and 240 seconds—a 6X
speed difference for identical work. This variance spans devices
and is too irregular to chalk up in full to filesystem caching (which
would't help for first access in any event).
While there's no silver bullet for improving this app's speed on Android,
a few tips are worth noting. First, try closing open apps to free
up resources, and restarting your phone to reset its state if it
has been running a long time. There are the usual general recommendations,
but they are unlikely to help in many cases.
More specifically, try disabling USB debugging in Settings, Developer
options
if it is enabled. Toggling this was once reported to speed USB access during
folder comparisons by a factor of four, though this may have been coincidental
with other variables and will not boost speed in all cases. Though perhaps
inconvenient, tapping or pressing the screen during Main-tab actions
may also make them run faster, and running the Logs tab's WATCH may do
the same, but these depend on your device's processor-scheduling policies.
Though not recommended for low-memory phones,
it may also help to disable virtual memory so that
parts of the app's memory are not moved to much slower internal storage.
Samsung's RAM Plus,
for instance, expands memory by swapping to storage
(unlike the in-RAM compression of
Z-Ram,
listed in Developer options).
In One UI 5, you can either disable RAM Plus in full or
exclude specific apps: go to Settings,
Battery and device care, Memory, RAM Plus.
See the web for similar options on One
UI 4
and other
phones.
More fundamentally, this app's syncs, even when throttled, are
radically faster than the full content copies they are designed to avoid.
In the example above, 40-240 seconds for a 200G sync may seem like a long wait,
but the full-copy alternative for the same folder takes an entire hour with
fast devices, could run well north of this in some cases, and puts major
stress on your drives. Moreover, USB generally makes all such tasks much faster
than they would be if run over networks. Despite throttling, this app can
make the impractical practical.
Disabling battery optimizations may also help avoid temporary power-related
app stops on some phones. This app uses Android wake locks during Main-tab
actions to keep itself running when the screen turns off for a timeout or
power-button press, but Android sleep states are convoluted.
See also the related Tech Note.
If the new timeout ever becomes a concern in the future, you can avoid it by running
actions in threads instead of services with the persistent
Config-tab
setting described
here, at the cost of disabling action notifications.
For more on this timeout, see the extended discussion in
Tech Notes or
1.3.2's News.
Blank app that requires tap for some split-screen opens:
All versions of this app may open as a blank
screen
when switching to split-screen mode and require a user tap to
display.
This happens only when the app is already running, is moved to
split screen from either its Recents icon menu or the Samsung Edge panel, and is the first app added
to a split-screen group. All other split-screen opens display the app correctly sans taps, including
moving it to split screen from Recents or Edge when it's not running and adding it to other apps in a
split-screen group. Dragging it out of the large-screen taskbar also works correctly whether it's
running or not because this adds it to another app.
This bug has defied workarounds in the app itself. Because it has been seen on both Samsung and Pixel phones
and not in other apps, it's not a vendor issue and is likely a bug in the Kivy GUI stack underlying this app.
Because it occurs only when the app is already running, it's also likely related to the pause/resume state
transitions invoked by display-mode changes. Until it's fixed, simply tap the blank app once to redraw
its display, or open it in split screen differently.
Navbar overlays on right rotation with hidden cutouts:
In 2025, either Samsung's One UI 8 or the Android code it wraps has a rare but
known
layout bug that can overlay the navigation bar across the bottom of the
app,
even if the app handles edge-to-edge display
properly.
So far, this has been seen only on the larger main screen of an Android-16 Fold7
(not on its smaller cover screen), only after rotating the device rightward from portrait to landscape
and back (not after leftward rotations), and only when "Hide camera cutout" has been chosen
for the app in "Settings/Display/Camera cutout" to force letterbox bars (not when cutouts are shown).
When the overlay occurs, the app is offset too far from screen top because it receives incorrect
system-bar inset values from Android. The net effect renders UI tools at the bottom of the screen
obscured and unusable. This cannot be fixed by this or any of the other many apps it impacts—including
Google
Chrome
and
Maps,
Samsung
Internet,
and
Pydroid.
Apps using some UI tools such as an Android window-bottom "snackbar" are oddly immune
because they somehow trigger geometry correction.
This bug has been reported to
Samsung.
Until it is fixed, it's easy to avoid: either
select "Show camera cutout" for this app in Settings,
rotate leftward instead of rightward for main-screen landscape,
try the Good Lock app's navbar
tweaks,
or clear the overlay by simply tapping Recents and then the app.
Restarting the app clears the overlay too but is overkill, and using gestures navigation
instead of buttons helps partially, but the navbar still overlays app bottom because the
app is skewed too low.
(Fixed) Cropped tabs bar on rotation with large-screen taskbar:
this 2023 glitch has not been seen on more recent devices and has likely been repaired
by system updates.
Documents folder in a subfolder named for
this app, and sync backups are saved in the
__bkp__ folder of the sync's TO as on all platforms
(background info).
For Android storage options in general, see
this.
This app's Windows version is full, free, and ad-free. It's distributed on this website, which always has the latest version of this app and provides it as a zipped and self-contained executable that requires no other software to be installed.
Prior Windows releases are archived here. See also the Windows screenshots and video for visuals of many of the following package details:
C:\Program Files, per the tip
ahead).
This will create a folder named PC-Phone USB Sync,
which contains a Windows executable named PC-Phone USB Sync.exe.
In Explorer, the .exe part may be hidden, and be sure to fully unzip
with right-click/Extract All instead of double-click.
To start the app, run the executable as usual (e.g., by clicking its icon in Explorer).
To uninstall, simply delete the executable's folder;
logfiles are retained on uninstalls in your Documents folder
per the Data section ahead, and content folders are not deleted on uninstalls.
As usual on Windows, Main-tab actions continue running if you navigate to another program, and closing the app's GUI also terminates its running action if you confirm the close. For more on action run modes, see the Usage Overview.
Note that the app's Windows executable will not run without all the other items in its unzip folder—and will warn you and shut down if it detects this case. To move the app elsewhere after unzipping, move the entire folder, not just the executable inside it.
settings.pkl
in the install folder (the one made when you unzipped the download) and
can be saved and restored there if you delete and reinstall the app's folder.
Logfiles appear in
the Documents folder of your home/account directory
C:\Users\yourid,
in a subfolder named for this app. As on all platforms, sync backups
are saved in the __bkp__ folder of the sync's TO
(background info).
Title-bar colors: To change the color of the app's title bar on Windows, set your Accent color in Settings' Personalization=>Colors. For example, if you use Windows' dark theme, you can apply a darker title-bar color than that shown in some former screenshots, by enabling Accent Color's Automatic mode, as well as its option to show on title bars.
Antivirus conflicts: This app accesses content folders to do its work. Make sure that neither your content folders nor this app's install (i.e., unzip) folder or executable are blocked or throttled by your antivirus program (e.g., whitelist the executable if required). Else, over-aggressive antivirus software can impede, and even cause failures in, this and other programs on Windows. Though rare, this is suspected to have caused this app's folder chooser to hang for seconds and fail, though timeouts added in 1.1.0 avoid hangs.
Drive mounts:
On Windows, this app looks for storage
devices
by drive letter (e.g., E:). Removable drives, including
SSDs, thumb drives, BDR readers, and most cameras, are automatically mapped to drive
letters when attached. To use a network share in the app, be sure to map it to
a drive letter per standard Windows
procedures;
within the app, its letter is automatically translated to a
UNC path,
per the more-details button here.
In all cases, the top of the app's folder chooser lists drives by their volume names,
if available.
Network-drive navigation:
Due to an unresolvable glitch in the underlying GUI toolkit, the app's folder chooser
cannot navigate up to the top of a Windows UNC path. For example, in a mapped network
drive's path \\server\share\folder, you can use
.. taps to navigate up to the level of folder but
not higher: the .. at this level does nothing. This differs from other
storages but has a simple workaround: to go to a network drive's
\\server\share root, simply tap that drive's red storage
button (like
this)
at the top of the chooser's popup. More info.
Browser download warnings: Please ignore the warnings issued by some web browsers when you download this app's zipfile. In particular, the current Chrome on Windows by default displays a warning that this zipfile is "uncommon" and may be "dangerous," and it blocks the download. You can easily get past this by clicking the warning's arrow and can disable the opinionated blocks altogether in Chrome by picking Settings, Privacy and Security, No protection. Zipfiles from disreputable sources can be harmful, but computer systems regularly underrate user discretion.
Windows WSL2 Linux: As of early 2024, Windows users can also run the Linux version of this app in the latest version of Windows Subsystem for Linux (WSL2), but this comes with quality and speed tradeoffs. Most users may be better served by running the Windows version of the app in Windows and syncing WSL2 content by mapping it to a Windows drive letter. For details, see the Linux note ahead and the fuller Tech Note.
C: system
drive—but not in C:\Program Files
or its Program Files (x86) sibling. Programs don't have
permission to write files in those folders by default (whether you're logged in as
administrator or not), and this app needs to write admin files in its install folder.
Instead, unzip and run in your account's
Downloads or Desktop folders;
anywhere in your account's folder (a.k.a. C:\Users\yourid);
or in C:\anyother, where anyother may be a
folder you create in Explorer for this purpose.
You can still install in
Program Files folders if you use right-clicks to run the executable
as administrator (always) or change its folder's permissions for users in
Properties/Security (once),
but unzipping to another folder is simpler and more secure.
More info on the
web.
As of Oct-2023, this app now detects unusable install folders
and closes with a tips
popup
to avoid a startup crash for a failed write; please unzip elsewhere
if this popup appears on first run (related post).
Other install-related notes:
Documents as the package's install
(unzip) folder. The app already stores logfiles there per Data
above, and folder names may clash for some unzip tools.
C: system drive instead, as covered
above.
C:\Users\yourid\AppData is for
you and C:\ProgramData is for everyone, though these specific
folders are not advised or used by this program because they are hidden
(web info).
Specifically: you cannot sync with this app by connecting the phone to your PC directly with a USB cable. This mode uses the MTP protocol. Because MTP is not a real filesystem mounted to a drive letter, the phone's folders won't appear in the app's folder chooser on your PC. In addition, because MTP is a PC-side view only, it won't let you see your PC from your phone. While you may find tools for Windows that mount MTP to drive letters and translate file operations to the MTP protocol, they will likely be very slow, prone to data corruption, and unable to retain file metadata like timestamps. Some may also present phones as read only.
As an example, a recent MTP test using a popular $50 MTP mounting program for Windows ran an app SHOW action for 25 minutes before dying roughly 10% through the content folder. Moreover, it skipped numerous files and incorrectly classified almost all files it managed to visit as differing per timestamps. A second try fared no better, running 1.5 hours before the mounting program crashed far short of completion. By contrast, the same test with a USB drive finished in just 40 seconds and with correct results. No SYNC updates were tested, because MTP mounting is clearly unusable for all but the simplest of tasks. Use a removable drive as intermediary instead, per this app's guides. More info on the web.
:Zone.Identifier
to the list of items skipped by all Main-tab action. Such files are not meaningful outside Windows
and complicate syncs in WSL2. See News for more details.
This app's macOS version is full, free, and ad-free. It's distributed on this website, which always has the latest version of this app and provides it as a zipped and self-contained macOS app that requires no other software to be installed.
Prior macOS releases are archived here. See also the macOS screenshots and video for visuals of many of the following package details:
PC-Phone USB Sync.app.
To start the app, run it as usual (e.g., by clicking its icon in Finder).
To uninstall, simply delete the app;
logfiles in your Documents folder and settings in
Library are retained on uninstalls per the Data section ahead,
and content folders are not deleted on uninstalls.
As usual on macOS, Main-tab actions continue running if you navigate to another program, and closing the app's GUI also terminates its running action if you confirm the close. For more on action run modes, see the Usage Overview.
Note that the app's macOS version is an app bundle created by unzipping. This is really a folder but must be treated as a whole; the executable inside it won't run without all the other items in the app bundle. Fortunately, macOS makes it difficult not to treat the app as a single item.
._*) file for every real
file created on exFAT removable drives, users of macOS versions Sonoma and
later should run an xattr command in Terminal to clear the app's
quarantine flag before the app is first run. This command is a one-time install
step and can be run on either the downloaded zipfile or the unzipped app in
your Downloads folder, Applications, or other.
Examples:
$ xattr -c ~/Downloads/PC-Phone\ USB\ Sync--macOS.zip # zipfile still in Downloads $ xattr -c /Applications/PC-Phone\ USB\ Sync.app # unzipped app in Applications
Clearing quarantine by running a command like these avoids creating pointless AppleDouble files on exFAT that cause admin issues and consume drive space. It also avoids the first-run approval steps outlined ahead.
Crucially, the xattr command must be run before the first run of the
app to prevent spurious AppleDouble files, and a restart of your system is
generally recommended to ensure that the command takes effect. If you've already run the
app, you should delete and reinstall it and clear its quarantine flag before running again,
and remove any AppleDoubles already generated. For further details, see
Tech Notes and
News.
In addition, this app was built on macOS Catalina (10.15) and is expected to run on this and newer versions of macOS, but see the following update. At this writing, this app has been verified to work through Sequoia (15), the most recent macOS, and is expected to work on later versions. If you have trouble using it on your PC, please see the source-code package and Mergeall alternatives ahead.
Update: The macOS app has now been verified to also work on an older Intel-based system running macOS High Sierra (10.13). Hence, the app formally supports all macOS machines running High Sierra and later. Earlier versions remain doubtful (an El Capitan device has been seen to issue an incompatibility dialog and prohibit running the app).
This story has morphed often, but on the current macOS Sequoia, you can get past the first-run warning by:
The first popup's "?" gives more info. In some macOS versions you may be able
to get past the first-run warning by simply closing its first popup and control-clicking
the app and selecting Open, and the now-recommended xattr described
above that clears the app's quarantine attribute also
avoids the first-run warning altogether on all versions of macOS. However done,
after you approve the app once, all subsequent launches will run without warnings.
Also on this platform, macOS will ask you to approve removable drives and some folders when they are first accessed by the app, and the app will suggest but not require macOS's Full Disk Access storage permission on the first run only. Drives and folders are required, but Full Disk Access applies only to app and system-level content and is unnecessary in typical usage; you can opt to turn it on later in Settings if actions fail because of permissions.
Note that you generally do not need to restart the app in full after a permission popup for a drive or folder: simply rerun the last request after handling the popup and dismissing the app's inaccessible message (if one appears). Either way, these popups are normally one-time events.
As called out earlier, users on macOS Sonoma and later
should also run an xattr command to clear quarantine for the app before
it is first run. Otherwise, macOS may create one pointless AppleDouble
(._*) file for every real file created by the app on exFAT drives.
As noted, running this command also avoids the first-run approval steps above.
settings.pkl
in the PC-Phone USB Sync subfolder of
/Users/yourid/Library and are not deleted if you
remove and reinstall the app (you may have to unhide this folder to see
it in Finder: try shift+command+.). Logfiles appear in the Documents
folder of your home directory in a sub folder similarly named for this app.
As on all platforms, sync backups are saved in the
__bkp__ folder of the sync's TO
(background info).
Applications
root folder
to make it available in
Launchpad, where available.
You can also add an alias to the app on your
desktop
or drag it to or pin it on your
Dock,
using your platform's
conventions.
Drive mounts:
On macOS, the app assumes that all external
storage
is mounted in the
/Volumes folder because this is where removable drives
automatically show up and where network drives mounted in Finder appear.
If you mount drives manually on macOS and want them to appear at the top
of the app's folder-chooser
popup
for easy access, be sure they are in this standard folder; the app cannot
guess other arbitrary locations.
As a fallback, you can always navigate down from the ROOT folder (/)
to select and use other drives mounted in atypical
places.
Unicode-filename issues: Though rare, if you run across errors and skips for some non-ASCII Unicode filenames on macOS, please see the Tech Note for possible solutions, including a precoded fixer script. This has cropped up only for filenames with Unicode variant characters having more than one representation and only when such filenames are exported from macOS to Windows and back again on exFAT drives.
Logfile scrolling: When scrolling filenames in the Logs tab with a touchpad, you might find it more accurate to scroll by grab+move than simple swipe. To perform a grab+move, simply press and hold the touchpad while the cursor is over the scroll area, and quickly do an up or down gesture. This may offer more control over the scroll, though this is naturally subjective, and mouse users' mileage will vary.
xattr command before first run
to avoid generating AppleDouble files on exFAT drives as described
above.
For more info, see
Tech Notes and
News.
This app's Linux versions are full, free, and ad-free. They are distributed on this website, which always has the latest version of this app and provides it as zipped and self-contained executables that generally require no other software to be installed. To address Linux convolutions, the three packages listed above provide this app in three different forms, and another provides a fallback option:
The code and behavior of the Linux executables varies because the Ubuntu 20 build is frozen at version 1.1.0 of this app. For more about the motivation for multiple versions of the Linux app, please see the related Tech Note.
Prior Linux releases are archived here. See also the Linux screenshots and video for visuals of many of the following package details:
PC-Phone USB Sync,
which contains a Linux executable named PC-Phone USB Sync.
To start the app, run the executable as usual (e.g., by clicking its icon in your
file explorer or running it from a command line).
To uninstall, simply delete the executable's folder;
logfiles are retained on uninstalls in your Documents folder
per the Data section ahead, and content folders are not deleted on uninstalls.
As usual on Linux, Main-tab actions continue running if you navigate to another program, and closing the app's GUI also terminates its running action if you confirm the close. For more on action run modes, see the Usage Overview.
Note that the app's Linux executable will not run without all the other items in its unzip folder—and will warn you and shut down if it detects this case. To move the app elsewhere after unzipping, move the entire folder, not just the executable inside it.
Due to the convolutions of Linux distributions and packaging, the Linux executables may not work on some other Ubuntu versions or installs and will not work on some other Linux distributions. As noted, if you have trouble using them on your PC, please use the source-code package ahead instead of the executables. The upcoming tip and workaround ahead may also help executable users, and the Mergeall alternatives ahead provide last-resort options.
settings.pkl
in the install folder (the one made when you unzipped the download) and
can be saved and restored there if you delete and reinstall the app's folder.
Logfiles appear in
the Documents folder of your home directory (a.k.a. ~)
in a subfolder named for this app.
As on all platforms, sync backups are saved in the
__bkp__ folder of the sync's TO
(background info).
ppus-linux.desktop
in its usbsync-pc folder. See this file's top comments for detailed
install
instructions.
In short, you'll edit the file for your user name and paths,
add the app to Applications with a desktop-file-install command, and
right-click the app to add it to the quick-access panel. The file has URLs for more help.
Simpler alternative: in most file explorers, you can make a link to the program's
folder and drag it onto your desktop for fast starts.
Font size: The Linux package's font may be initially small on some devices, especially in the original Ubuntu 20 build. The newer alternative 1.1.0 package for Ubuntu 22 addresses this by increasing the initial font size slightly, but the preset may still be subpar for some users. To improve, simply change the global font size in the Config tab, and tap to save your change; the new size will be used on all later runs.
Missing libraries:
Due to the choices of the tool used to build this app's Linux executables, it's not
impossible that some required libraries may be absent in both the app's package
and your Linux install. If the app does not run, check for error messages by
launching it from a shell command line, and viewing Kivy logs in
~/.kivy/logs/. If you find reports of missing libraries,
try installing these dependencies in your local Linux. See also the
general Linux library-skew Tech Note.
Drive mounts:
On Linux, this app searches for mounted
drives
in both /media/user
and /mnt. The former is where automatically mounted storage appears,
including both USB drives and the dual-boot Windows partition. The latter is sometimes
used for manually mounted drives, including network
drives,
but this is variable, and /media works just as well for user
mounts. Really, drives can be mounted nearly anywhere on Linux,
but make sure they are in one of these two standard folders if you want
them to appear at the top of this app's folder-chooser
popup
for easy access.
As a fallback, you can always navigate down from the ROOT folder (/)
to select and use other drives mounted in atypical
places.
Update: the February 2024 rerelease of the Linux app now recognizes
mounts anywhere in /media (technically, /media*)
and not just in the user's subfolder. It also now uses stricter rules to
omit non-drive mounts in the folder chooser: the mount source must be
/dev (a physical device) or a Windows drive letter
(e.g., C:\ in WSL2).
The /mnt folder is still also searched for mounts, as
this is where WSL2 auto-mounts the Windows system drive and removables, and
ROOT
is still a fallback if these rules prove to be too conservative.
More info here and
here.
Update: version 1.5.0 on WSL2 now recognizes drives mounted as Windows drive letters with or without a trailing backslash. The latter were not formerly recognized but could still be accessed by navigating down from ROOT in choosers. See News for more info.
Usage in Windows WSL2 Linux: Per the updated Tech Note, as of October 2025, this app's Ubuntu 22 Linux package now works well and sans former GUI glitches in the latest version of WSL2 using its default Ubuntu 24 distribution. WSL2's slow access to both Windows and removable-drive storage, however, may still make the Linux version of this app best used for syncing only Linux-native storage on this host. Though unvetted, you may also be unable to sync to removable drives using the exFAT filesystem on WSL2, due to a glitch in that host's exFAT support. See also the newer WSL2 gallery added in 1.5.
Original note: as of February 2024, the Linux version of this app is known to work, though just marginally, on the latest release of Windows WSL2 Linux, with an Ubuntu 22 distribution. That platform suffers from substantial glitches and speed issues today, and most users would be best served by syncing WSL2 content within the app's Windows version, by mapping WSL2's storage to a Windows drive letter. Running the app in WSL2 itself, however, offers faster access to native Linux filesystems for those patient enough to overlook its current usability problems. For complete coverage, see the Tech Note.
On some Linux installs, you may need to add the following line to
your ~/.profile or other startup file, if this app's
executable displays its splash screen but does not start in general
(update: as of version 1.5, the Linux executable no longer
displays a splash screen):
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6This is known to make the Ubuntu 20 executable run correctly on Ubuntu 22 and may help on other Linuxes as well. It works around library skew that impacts this program, as well as others that use the same toolset. For more details, please see the Tech Note.
March 2026: There were multiple Linux updates in 1.5.0:
While the standalone PC packages described earlier on this page have been built to run on most hosts, they may not work on some PCs whose hardware or software varies from expected norms. If these packages won't run on your device, you can still use this app by downloading and unzipping its runnable source-code package using the link above and launching with a simple command line.
This package is mainly provided as a fallback option to address skew and morph in Linux libraries and distributions and PC platforms in general. It is intended for use on PCs and is unlikely to work on Android due to that platform's app model. This package is also provided for vetting the app and learning about the tools it employs and is always the latest version of this app.
You can view this package's content online here. Because it runs the same as standalone apps and executables, PC-platform screenshots provide previews of some of the following usage details:
PC-Phone USB Sync--source,
which contains the full runnable source code of this app.
Next, install the app's required dependencies—Python, Kivy, and Pillow:
sudo apt install python3).
See the web
for pointers on other Python install options.
python3 -m pip install package==version;
see the example below and
this page
for more info on this process.
These dependencies are automatically included with the standalone app and executable packages, and all of this program's packages include additional dependencies that need not be installed separately. Note that The "virtual environment" described by some resources is not required and is useful only if you do other Python development on the host.
Finally, to start the app from its source code, run the file
main.py located in the unzipped package folder using any script-launching
technique on your platform, such as file-explorer icon clicks or command lines
py -3 main.py on Windows and python3 main.py elsewhere.
Run such command lines in Terminal on
Linux and
macOS
or in Command Prompt or PowerShell on
Windows.
As a comprehensive example on a Unix-based host, where $ is your command prompt
(quote the folder name for its spaces, and use py
and \ on Windows instead of python3 and /):
One-time setup — Download and unzip the source-code package per above — Install Python per above $ python3 -m pip install kivy==2.3.1 pillow Each app start $ python3 "path/to/download/PC-Phone USB Sync--source/main.py" Or $ cd "path/to/download/PC-Phone USB Sync--source" $ python3 main.py
To uninstall the app completely, simply delete the unzipped source code's folder. As for all of this app's PC packages, your logfiles and content folders are retained on uninstalls. You may also uninstall Python per its uninstall procedure; other dependencies will be uninstalled along with Python.
settings.pkl in the unzipped code's folder alongside main.py.
Logfiles are stored per the PC-platform policies described earlier.
main.py script that runs it with a single click to start the app.
See your platform's resources for more info; both Windows shortcuts and macOS
aliases can start Python scripts with one desktop click.
Also keep in mind that command lines are a UI (user interface) too, and shell
aliases can shorten them for convenience. With minor edits to startup files,
a simple command line such as ppus
can suffice to launch this program. This is especially useful on Linux, which may
benefit most from the source-code package. See your host's docs for details.
As a final legacy option, if you have trouble running this app on your PC and are unable to run the app's source-code package, you can also try using Mergeall's free GUI executable or source code, captured here. This GUI's Report and Update buttons work the same as this app's SHOW and SYNC buttons, respectively. They can be used in place of this app to sync content on your Windows, macOS, and Linux PCs, both before and after using this app's Android version on your phone.
Mergeall's GUI app and executables for PCs are platform- and chip-specific too, but its source-code version of its GUI will work broadly on nearly all PC platforms. You can find resources for using both the app/executable and source-code versions of Mergeall's GUI at the download link above.
Mergeall's source-code package also includes command-line scripts that mirror all
the actions on the app's Main tab. For example, mergeall.py corresponds
to the app's SYNC, SHOW, and UNDO, and diffall.py and
cpall.py are DIFF and COPY. These scripts
can be used as a last-resort content solution for PCs, though both the app and
Mergeall's GUI are naturally more user friendly.
Mergeall's scripts and GUI work on Android too—the former in the Termux app, and the latter in Pydroid 3 with patches—but only on Androids 8 through 10 and with much less convenience than the newer Android app. As of Android 11, USB drives are not accessible to Mergeall's code without a permission that requires a stand-alone app. While this can be partly addressed with multi-step heroics, the results are dependent on other apps, functionally limited, and not in line with Android usage paradigms.
The PC-Phone USB Sync app works around this Android permissions constraint in full, while adding ease of use, enhanced functionality, and a graphical and consistent content-management experience across phones and PCs.
That wraps up this guide to the app's packages. For info on using the app after you install it, see the other sections of the User Guide.