Lightweight Android app to transfer photos from Sony cameras via WiFi.
Built as a drop-in replacement for Sony's Imaging Edge Mobile (IEM), which has critical background crash bugs that make it unusable on modern Android devices.
- π Browse all photos and videos on SD card with thumbnails
- βοΈ Multi-select batch download
- β¬οΈ Per-file progress during download
- πΎ Saves to
DCIM/SonyTransfer(visible in gallery) - π¬ Streaming download β supports 2GB+ videos without OOM
- πΆ WiFi gateway auto-connect β reads camera IP from DHCP
- π‘ WiFi network binding β works correctly even with mobile data enabled
- π No internet required β runs entirely over camera's local WiFi
Any Sony camera that supports "Send to Smartphone" mode (PTP/IP over WiFi, port 15740), including:
- ZV-E10 (original, firmware v2.02) β primary target & test platform
- ZV-1, ZV-1F
- Ξ±6000 series, Ξ±6100, Ξ±6300, Ξ±6400, Ξ±6500, Ξ±6600
- Ξ±7 series (I/II/III), Ξ±7R series, Ξ±7S series
- Ξ±9 series
- RX100 series, RX10 series
- And many more Sony cameras with "Send to Smartphone" feature
Note: ZV-E10 II and newer cameras that use Creators' App may not need this tool.
Note: ZV-E10 II and newer cameras that use Creators' App may not need this tool.
This project incorporates source code from the following library:
- libptp β Java implementation of PTP/IP protocol (ISO 15740).
Copyright (C) 2017 Fimagena (fimagena at gmail dot com).
Licensed under the GNU Lesser General Public License v2.1 (seelibptp-LGPL-2.1.txt).
libptp source files are located inapp/src/main/java/com/fimagena/libptp/.
The library has been modified to support streaming file transfers (see AGENTS.md for details). All modifications are released under LGPL 2.1 as required by the license.
- On camera: Menu β Network β Send to Smartphone (or "Ctrl w/ Smartphone")
- On phone: Connect to the camera's WiFi network (
DIRECT-xxxx-ZV-E10) - Open SonyTransfer β tap "Connect to Camera"
- Browse & select photos β tap "Download"
- Photos saved to
DCIM/SonyTransferπ
Go to Actions β click the latest successful build β download SonyTransfer-APK from Artifacts.
Phone βWiFiβ Camera (AP mode)
β
DHCP Gateway IP (192.168.122.1)
β
PTP/IP Protocol (ISO 15740, port 15740)
βββ OpenSession
βββ GetStorageIDs
βββ GetObjectHandles (no format filter)
βββ GetObjectInfo β filename / date / size / format
βββ GetThumb(handle)
βββ GetObject(handle) β streaming to MediaStore
- Kotlin + Jetpack Compose + Material 3
- OkHttp for HTTP (WiFi-network-bound socket factory)
- Coil for thumbnail loading
- MVVM with
StateFlow
Sony's Imaging Edge Mobile has a bug where the app process dies within ~100ms of going to background, even before connecting to any camera. This is an app-level defect (not OS kill), and Sony hasn't fixed it despite years of complaints. This app bypasses IEM entirely by speaking the camera's HTTP API directly.
MIT β do whatever you want with it.