Samsung Galaxy S4 Mini LTE (samsung-serranolte)
This device runs a Downstream kernel. Some UIs will not work, and most features (3D acceleration, audio, etc.) may be broken. |
![]() S4 Mini running PostmarketOS and Xfce4 | |
Manufacturer | Samsung |
---|---|
Name | Galaxy S4 Mini LTE |
Codename | samsung-serranolte |
Model | GT-I9190, GT-I9192, GT-I9195, GT-I9195L, GT-I9197, SCH-I435, SGH-I257, SGH-I257M, SHV-E370K |
Released | 2013 |
Type | handset |
Hardware | |
Chipset | Qualcomm Snapdragon 400 (MSM8930) |
CPU | 2x 1.7 GHz Krait 300 |
GPU | 450 MHz Adreno 305 |
Display | 4.3 inch 16:9, 540x960 60 Hz Super AMOLED, 24 Bit (16777216 colors) |
Storage | 8/16 GB EMMC 4.5 + microSDXC + USB OTG |
Memory | 1.5 GB 533 MHz LPDDR2 single-channel |
Architecture | armv7 |
Software | |
Original software The software and version the device was shipped with. |
Android 4.2.2 |
Extended version The most recent supported version from the manufacturer. |
Android 5.0.1 |
Optional software | Android (LineageOS) (Unofficial) |
FOSS bootloader | yes |
postmarketOS | |
Category | downstream |
Pre-built images Whether pre-built images are available from the postmarketOS Installation page. |
no |
Mainline Instead of a Linux kernel fork, it is possible to run (Close to) Mainline. |
no |
Device package |
![]() |
Kernel package |
![]() |
Firmware package |
![]() |
Flashing Whether it is possible to flash the device with pmbootstrap flasher . |
Works
|
---|---|
USB Networking After connecting the device with USB to your PC, you can connect to it via telnet (initramfs) or SSH (booted system). |
Works
|
Internal storage eMMC, SD cards, UFS... |
Untested
|
SD card Also includes other external storage cards. |
Untested
|
Battery Whether charging and battery level reporting work. |
Works
|
Screen Whether the display works; ideally with sleep mode and brightness control. |
Works
|
Touchscreen |
Works
|
Multimedia | |
3D Acceleration |
Broken
|
Audio Audio playback, microphone, headset and buttons. |
Broken
|
Camera |
Broken
|
Camera Flash |
Untested
|
IR TX |
Untested
|
Connectivity | |
WiFi |
Untested
|
Bluetooth |
Broken
|
GPS |
Broken
|
NFC Near Field Communication |
Untested
|
Modem | |
Calls |
Broken
|
SMS |
Works
|
Mobile data |
Broken
|
Miscellaneous | |
FDE Full disk encryption and unlocking with unl0kr. |
Untested
|
USB OTG USB On-The-Go or USB-C Role switching. |
Untested
|
Sensors | |
Accelerometer Handles automatic screen rotation in many interfaces. |
Broken
|
Magnetometer Sensor to measure the Earth's magnetism |
Untested
|
Ambient Light Measures the light level; used for automatic screen dimming in many interfaces. |
Untested
|
Proximity |
Untested
|
Hall Effect Measures magnetic fields; usually used as a flip cover sensor |
Untested
|
Haptics |
Untested
|
This device is based on the Snapdragon 400. See the SoC page for common tips, guides and troubleshooting steps |
Contributors
- rrooij (initial port)
- scintill (USB network, modem)
- maccraft123 (broken his s4mini)
- Zocker1012 (broken glass, experimenting with edge channel)
- Everyone else on IRC (feel free to put your name)
Users owning this device
- Bastindo (Notes: I have several of these)
- Ferenc-
- Gfgit (Notes: Boots LineageOS 18.1 kernel, WiFi needs fixing)
- Ignapk (Notes: Current test subject)
- Jakko
- Madhaxbro (Notes: GT-I9195, runs lk2nd + DivestOS Android. Ready for testing. Weak battery. Supported in lk2nd. Classic design. Could run mainline some day.)
- Minecrell (Notes: GT-I9195)
- Mykhal (Notes: TODO; and elsewhere i9195 is named serranoltexx, so not sure)
- Piero-e (Notes: international LTE / gt-i9195 / running unofficial /e/OS android.11 based (serranoltexx))
- R0rt1z2
- SmP971 (Notes: stock rom)
- Status5650
- Ungeskriptet
- Werti (Notes: Mint condition; running PMOS (WiFi not working))
Model variants
Galaxy S4 Mini (LTE) "Serrano"
- GT-I9195 (Global, 4G, NFC) - Compatible.
- GT-I9195L (Latin America, 4G, NFC) - Compatible?
- GT-I9195T (Australia, 4G, NFC) - Compatible?
- GT-I9197 (4G, no NFC) - Compatible?
- GT-I9198 (TD-SCDMA, NFC) - Compatible?
- SCH-I435 (US?, Verizon LTE, NFC) - Locked? Compatible?
- SGH-I257 (Canada?, LTE?) - Compatible?
- SGH-I257M (Canada, AWS LTE, NFC, no FM Radio) - Compatible?
- SHV-E370K (Korea?, LTE?) - Compatible?
Needs more research.
Galaxy S4 Mini (Duos)
- GT-I9190 (Global, 3G) - Compatible?
- GT-I9192 (Global, 3G, Dual SIM) - Compatible?
Galaxy S4 Mini Plus / Galaxy S4 Mini Value Edition (VE) "Serrano v2?"
- GT-I9192I (Global, 3G, Dual SIM) - Incompatible!
- GT-I9195I (Global, 4G, NFC) - Incompatible!
See #Similar devices for more details.
Note: Some parts appear to be the same for this device. The SoC is different. Needs investigation. |
Boot modes
Fastboot (lk2nd menu) - hold $ fastboot reboot bootloader
on a connected USB host, or (also lk2nd) - select it on the bootloader menu by pressing or three times, then confirm using
Recovery (using lk2nd) - hold
during boot, or - enter Fastboot mode and select it on the bootloader menu by pressing twice, confirm usingRecovery (using Samsung bootloader) - hold Home+Volume Up+Power, or (with USB debugging enabled) - execute $ adb reboot recovery
on a connected USB host
DFU (Odin/Download) mode - hold Home+Volume Down+Power, or (with USB debugging enabled) - execute $ adb reboot download
on a connected USB host
Installation
Heimdall method (recommended)
In case you are unfamiliar with postmarketOS, follow this guide until you arrive at the Flashing section, then return here.
Heimdall is a cross-platform and open-source tool suite used for flashing software onto Samsung devices which is integrated in pmbootstrap
script (this means you do not have to install Heimdall yourself).
To use pmbootstrap
to interact with the device through Heimdall and flash data to the device you need to enter "flash mode":
- Switch off the phone
- Press and hold the VolumeDown, Home and Power buttons until a warning screen appears
- Connect the phone to the computer
- Press the VolumeUp button
Then the device can be interacted with through the pmbootstrap
script:
$ pmbootstrap flasher flash_rootfs # Flash the rootfs with postmarketOS distribution data
$ pmbootstrap flasher flash_kernel # Flash the rootfs with the linux kernel
The phone might reboot after the first flasher command, if it does re-enter the flash mode as explained above and flash the remaining.
adb sideload method
The alternative method for those who want to maintain their custom recovery image is adb sideload from recoveries that support it e.g. TWRP
$ pmbootstrap install --android-recovery-zip # Set up pmos for sideloading
$ pmbootstrap flasher --method=adb sideload # Flash the pmos on the device through sideloading
Downstream kernel
What works
- Compiling the kernel
- Flashing postmarketos
- Booting
- Screen display
- Multi-touch
- Plasma Mobile(slideshow mode)
- Xfce
- Mate
- Weston
- Touch screen (!1313)
- USB Networking (!1260)
- Sending SMS via terminal (!1314)
- Accelerometer (
echo 1 > /sys/class/input/input2/enable
) - Proximity sensor (
echo 1 > /sys/class/input/input4/enable
) - Light sensor (
echo 1 > /sys/class/input/input5/enable
) - Power button (
/dev/input/event0
) - Volume/Home buttons (
/dev/input/event8
) - Menu/Back touch buttons (
/dev/input/event9
)
What does not work
- HW acceleration (we need libhybris or mainlining or freedreno)
- User Interface: gnome (stuck at boot animation)
- User Interface: gnome-mobile (won't install through pmbootstrap)
HID Buttons
See Troubleshooting:HID buttons
<nowiki>
evtest /dev/input/event9
shows these events:
Event type 0 (EV_SYN) Event type 1 (EV_KEY)
Event code 102 (KEY_HOME) Event code 114 (KEY_VOLUMEDOWN) Event code 115 (KEY_VOLUMEUP)
Event type 5 (EV_SW)
Event code 0 (SW_LID) state 0
evtest /dev/input/event10
shows these events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY) Event code 158 (KEY_BACK) Event code 254 (?) Event type 3 (EV_ABS) Event type 17 (EV_LED) Event code 8 (LED_MISC) state 0
Notes
Development
- !1099 initial pull request
- #1612 Unable to install on S4 Mini (samsung-i9195)
- This newer kernel seems to boot. I've applied some patches on top.
- Some devices have a samsung-serranoltexx codename which appears to be compatible with the image of samsung-serranolte, it's unknown what the difference is.
Hardware
Component | Model | Notes |
---|---|---|
MUIC | Texas Instruments TSU6721 | |
eMMC | Sandisk SEM08G | 8GB |
Charging | PM8921 | Uses PMIC |
Volume/Power/Home keys | GPIO | |
Touchscreen | Atmel MXT336S | |
Capacitive keys | Coreriver TC360 | |
Gyroscope/Accelerometer | TDK InvenSense MPU-6500 | |
Light/Proximity sensor | Sharp GP2A | gp2a020 |
Magnetometer | Yamaha YAS532 | |
Audio | msm8230tapansnd | |
Audio DAC | Qualcomm WCD9304 | |
Infrared blaster | Lattice ice4 | |
GPU | Adreno 305 | |
Wi-Fi/Bluetooth | Qualcomm Atheros Prima (WCN3660) | |
NFC | Broadcom BCM2079x | |
GPS | ? | |
Modem | ? | |
Front camera | Samsung s5k6a3yx | |
Main camera | Samsung s5k3h5xa |
Mainline preliminary work
This section lists all information I've found online which can be useful to mainline this device. Please edit if you found more stuff to add.
Device tree for MSM8930 and experimental charger driver
https://github.com/flto/linux/tree/msm8930
This branch contains 12 commits to support MSM8930 and PM8291 charger plus some Nokia Lumia 625 (nokia-rm941) specific code that we should skip.
Other similar charger driver to use as reference code qcom_smbb
Touchscreen
exynos5420 board seems to have same touchscreen chip Atmel MXT336S (Datasheet PDF)
WiFi WCN3660
Main Camera s5k3h5xa
Downstream kernel drive seems crashing at boot, still have to investigate. Did not yet try LineageOS 18.1 kernel. Did not yet found newer driver code.
There is a maybe relevant discussion on XDA cyanogenmod-10-2
Possible newer kernel AOSP Common
https://github.com/danascape/kernel-msm-5.4/
Need to find where it comes from
LineageOS repositories
(Taken from XDA LineageOS 18.1 for S4 Mini)
Kernel:
https://github.com/LineageOS/android_kernel_samsung_msm8930-common
Device trees (plus Android specific code):
https://github.com/LineageOS/android_device_samsung_msm8930-common
https://github.com/LineageOS/android_device_samsung_serrano-common
https://github.com/LineageOS/android_device_samsung_serrano3gxx
https://github.com/LineageOS/android_device_samsung_serranodsdd
https://github.com/LineageOS/android_device_samsung_serranoltexx
https://github.com/arco/android_device_samsung_serranoltespr
https://github.com/arco/android_device_samsung_serranolteusc
Useful software
Bootloader builds
- Latest official build of lk2nd Use lk2nd-msm8960.img. Be careful when testing undocumented variants!
Recovery builds
- Latest official TWRP build for serrano3gxx
- Latest official TWRP build for serranodsdd
- Latest official TWRP build for serranoltexx
- Latest official TWRP build for serranospr
- Latest official TWRP build for serranousc
Firmware builds
- Latest official firmware builds on SamFW (Ads!) Downloads from official Samsung update servers. Has CloudFlare bot protection. (May not work with some browsers or VPN/IP changers!)
Firmware tools
- Latest version of samloader Tool for downloading firmware from official Samsung update servers. Written in python. Consider packaging it.
Packages
android-tools Used for Fastboot, ADB, sparse images (simg), and more. From SDK.
heimdall Tool for dealing with Samsung's Odin protocol. Used to install firmware.
Device support
linux-postmarketos-qcom-msm8930 Mainline kernel fork. Currently unsupported.
linux-samsung-serranolte Downstream kernel fork.
device-samsung-serranolte Deviceinfo.
firmware-samsung-serranolte Firmware.
Links
Source code
- Downstream kernel (LineageOS)
Specifications
- GSMArena (Ads!) Includes 3G variants.
- DeviceSpecifications (Ads!) Only I9195.
- Wikipedia article about S4 Mini variants
Similar devices
- Samsung Galaxy S4 Mini dual sim (samsung-serranodsdd) Same SoC. 3G Duos variants. Old page. Port is armhf! Needs to get merged or updated.
- Samsung Galaxy S4 Mini Value Edition (samsung-serranove) Different SoC. Similar design. Can use the battery and cover of this device. Possibly other parts as well.