[ROM][EXYNOS] LineageOS 17.1 for S10e|S10|S10+ - v1.4 (UPDATE: 2020-12-17)

dylem29

Senior Member
Mar 10, 2011
193
49
58
Le Havre
Version 1.0 has been released!

I've started a proxy on my server and created an ssh tunnel to it. This way I was able to login to androidfilehost.com and upload the files.
Wahou! I'm impress !

I'm on Sammy rom, but I'm very interested to this one.
When you say that there are some "audio effects" missing, what kind of effects?

And what's "Wideband SCO" and IMS?

Thanks :)
 

angela5246

Senior Member
Mar 27, 2020
62
13
0
Version 1.0 has been released!

I've started a proxy on my server and created an ssh tunnel to it. This way I was able to login to androidfilehost.com and upload the files.
Nice work, thanks a lot. Do you see the possibility to automatize vendor/firmware updates in the coming future? Flashing vendor/firmware updates with heimdall again and again really breaks the ROM's update process.
 

ctrej

Senior Member
Jun 19, 2017
73
101
0
An issue I've noticed when making phone calls - the screen does not seem to lock/block when the phone is at my ear. This results in my ear pressing lots of quick tiles.
I don't have unlimited calls so I only tested it briefly. The display is turned off when the proximity sensor measures a distance of 1.5-2 cm (or less), but it only measures once per second (you can see the LED blinking right next to the camera). If you press your phone too quickly against your head, the screen doesn't turn off fast enough and therefore your ear will tap the screen.

I also tried "simple dialer", a 3rd party caller app, but it didn't solve the issue, so I assume this ROM limits the sensor sample rate (which can hopefully be fixed)

Another is that the quick tiles are all able to be turned on or off while screen is locked. So wifi, data, BT, etc can be modified. Is this normal?
I think it is the normal LineageOS behavior, but I think it shouldn't be possible, too. To get it fixed, you should post it to the LineageOS issue tracker.


I have found one minor issue that is easily reproducible on my device: [...]

They all work as expected, but no matter which one you select it will revert back to "1) SIM" after a reboot.
Thank you for your very detailed report! Unfortunatly I don't use SIP (actually this is the first time I'Ve even heard about it), so I can not test it myself. I'm pretty sure the issue lies within the caller app, not lineageOS itself, so you could try and use a 3rd party caller app. Unfortunately I coudn't find an alternative app that can do both, SIP and normal phone calls.
 
S

Stef4n82

Guest
Firmware Updates

To make the firmware updates a little bit easier for you i have repacked and uploaded the required firmware files for the 3 devices. Follow the steps to update your devices:

If you use Heimdall:

  1. Download the latest firmwarepackge for your device: "G97?F_Firmwareupdate_Heimdall_????.tar.gz"
  2. Extract the package
  3. Flash the firmware files with this command:
Code:
heimdall flash \
    --BOOTLOADER sboot.bin \
    --PARAM param.bin \
    --UP_PARAM up_param.bin \
    --CM cm.bin \
    --KEYSTORAGE keystorage.bin \
    --UH uh.bin \
    --DTB dt.img \
    --RADIO modem.bin \
    --CP_DEBUG modem_debug.bin
If you use Odin:
  1. Download the latest firmwarepackge for your device: "G97?F_Firmwareupdate_Odin_????.zip"
  2. Extract the package and you will get an AP.tar, a BL.tar and a CP...tar.md5
  3. Flash the 3 files with Odin (tested with latest Odin 3.14.x)

Here you can download the firmware packages:
  1. S10
  2. S10e
  3. S10+

If you don't want this repacked firmware packages and want to download the whole firmware by your own. Make sure if you flash it via Odin that you use this files:

  1. From AP_G97?FXX*.tar.md5 take the dt.img and create a new AP.tar
  2. CP_G97?FXX*.tar.md5
  3. Extract BL_G97?FXX*.tar.md5 and create a new BL.tar without the vbmeta.img.lz4
 
Last edited by a moderator:
Jun 9, 2012
14
3
23
Thanks for looking into it.

It's a minor issue that doesn't detract from a fantastic ROM. Thank you for the great work.

Thank you for your very detailed report! Unfortunatly I don't use SIP (actually this is the first time I'Ve even heard about it), so I can not test it myself. I'm pretty sure the issue lies within the caller app, not lineageOS itself, so you could try and use a 3rd party caller app. Unfortunately I coudn't find an alternative app that can do both, SIP and normal phone calls.
 

ctrej

Senior Member
Jun 19, 2017
73
101
0
To make the firmware updates a little bit easier for you i have repacked and uploaded the required firmware files for the 3 devices. Follow the steps to update your devices [...]
Awesome, thanks! I'll integrate it into the next FAQ revision (the one below is RC2 and earlier).

---

One last update of the FAQ for RC2. I've made the changelog click-able so you jump to any revision you need and wrote which was the latest ROM version at time of writing. Added some minor other stuff as well (contains thread page 69-73).

Features + Bugs Summary:
This ROM does already support most features of the hardware. If you need specific features, please check the list below. Each feature was manually tested, so it is possible that it does not match your experience with the ROM. In this case please tell us, see the "Getting Help" section at the end of this post.


Ratings Description
  • ++ perfect (in depth tested, performs like stock or better)
  • + good (lighly tested only or has minor flaws but is good enough for normal use)
  • o ok (can be used with some limitations)
  • - broken (doesn't work at all)
  • x not supported (unlikely to be implemented, relies on samsungs closed source code)
  • ? can't test, please give feedback

Performance
  • ++ geekbench 5 score: 2267 (gsmarena stock: 2141)
  • ++ antutu v8.4.1 score: 403909 (gsmarena stock: 389694)

Speed (values in MB/s, sr =seq. read, sw = seq. write, rr = random read, rw = random write)
  • ++ internal SD 128GB
    • AndroBench5: sr 815.0, sw 193.1, rr 138.7, rw 24.7 (= notebookcheck stock)
    • CPDT 1GB: sr 735.3, sw 139.2, rr 19.2, rw 4.52
  • ++ external SD, 128GB Samsung Evo Plus
    • Androbench5: sr 68.2, sw 34.5, rr 5.75, rw 2.56
    • CPDT 1GB: sr: 75.2, sw: 29.5, rr: 4.08, rw: 1.71
  • ++ USB 3.0 MTP, sw 105MB/s (PC CrystalDiskMark -> mtpdrive -> internal SD)
  • ++ USB 3.0 OTG, sw 105MB/s (Sandisk Extreme 64GB -> internal SD, 10.8GB file, 102s)
  • + bluetooth file transfer, 0.1MB/s (29MB; from other phone 4m42s, from PC 5m24s) (theoretical max. is 0.3 for BLE4.0, 0.8 for BLE4.2 and 1.4 for BLE5.0)

Connectivity
  • ++ phone calls, 3G, LTE; also with dual sim
  • ++ wifi (delivers 50Mb/s, the maximum my provider supports)
  • ++ bluetooth (file transfer to phone & pc; headphons incl. mic; speakers; keyboard incl. special keys)
  • ++ NFC (only card read tested)
  • x VoLTE

Screen
  • + 10 finger multitouch, "high touch sensitivity" mode not available
  • ++ full brighness range available
  • ++ double tap to wake
  • + AOD works, but might be dimmer than stock and brightness cant be changed. While active the proximity sensor is used an its LED blinks dimly next to the camera

Sound
  • ++ dual laudspeaker for media, quality as expected, high volume selectable
  • + headphones (3.5mm jack) have clean audio, high volume selectable, possibly limited by ROM to 16bit/48kHz
  • + headphone mic (tested with recorder app, volume a bit low)
  • + earpiece (no in depth test)
  • ++ primay mic (tested with recorder app, volume is ok)
  • o volume of earpiece & mic might be lower than stock (details)
  • + some external DACs supported

Camera (with opencamera + camera API v2)
  • ++ wide, ultrawide, front, front-crop
  • ++ PDAF autofocus, face tracking optional (main + front camera, ultrawide is always fixed focus)
  • ++ manual setting for exposure/ ISO/ shutter/ focus
  • ++ raw files option (main camera)
  • ++ optional HDR
  • + dual apperature (main camera), only manual switch (default f1.5)
  • + video up to 2160p/30fps, 1080p/30fps (all cameras should support 60fps, but OpenCamera only produces 30fps files)
  • + 1080p/240fps (main)/ 1080p/120fps (front) high speed/ slow-mo works in stock cam + GCam
  • x no 720p/960fps super slo-mo
  • x no supersteady
  • - S10, S10+: no telephoto camera (details + help wanted)
  • x S10+: no front depth camera

Sensors
  • ++ gps, quick fix with A-GPS data
  • + fingerprint (all variants), can glitch during setup (see bug list)
  • ++ accelerometer, gyroscope, magnetometer, pressure, light (front) (all values are within tolerance)
  • + light sensor, but only the front/ under-screen sensor, not the rear sensor
  • ++ IR/RGB sensor outputs values for IR/Red/Green/Blue/Clear (test) (COM.SAMSUNG.SENSOR.LIGHT_IR)
  • ++ grip sensor
  • ++ front proximity (switches between 0 and 8cm at a physical distance of about 2cm - this is intended and makes the samsung drivers compatible to AOSP)
  • ++ software sensors: step counter, rotation vector, gravity, linear acceleration, compass
  • ++ S10/S10+ heart rate/ SpO2 (confirmed by @Ned)
  • o several software sensors don't produce data, but don't do it on stock either. Affected are the IDs: PICK_UP_GESTURE, COM.SAMSUNG.SENSOR.PROXIMITY_POCKET, COM.SAMSUNG.SENSOR.HALLIC, COM.SAMSUNG.SENSOR.BIO_IR (proof thanks @Brembo109, more info from modpunk)

Charging & Battery
  • ++ 15W quick charge
  • ++ 4.75W reverse charge (with USB OTG adapter)
  • + 7.5W+ qi-wireless charge (limited by my charger)
  • + 2.5W+ reverse qi-wireless charge (limited by the receiver IC BQ51013)
  • + low 40mW idle power consumption (details)
[*]+ ACCA (advance charging controller app) works with limited settings

Misc
  • ++ all buttons, bixby can be reprogrammed
  • ++ wired headphone buttons (pause/play, vol+, vol-)
  • + flashlight has only one brighness option (instead of 5 on stock)
  • - S10e: no fingerprint swipe up/down geture, not even with 3rd party app "Quick Fingerprint Geture"

the default installation...
  • has no root
  • does not pass safetynet (and currently there is no way to make it pass)

Known bugs:
  • when phone is shut down, it reboots instead (fixed in RC2)
  • reboot to recovery boots directly into system (fixed in RC2)
  • reboot takes long, about 30s (fixed in RC2, now it only takes a few seconds)
  • double tap to wake not always working (should be fixed in RC2)
  • holding fingerprint too long during setup can cause problems details
  • in full screen apps there may be a black bar to hide the camera cutout which can not be disabled (details, workaround)
  • high sensitivity touch screen / "glove mode" not available (details)
  • bixby-button hold-shortcut does not work (details)
  • google backup does not work with 4x4 or 5x5 pattern. This is an LineageOS issue, but important enough to deserve a note here. (details (thanks @Ivo_Todorov)


Installation:

How do I install this ROM on my phone for the first time?
Below you find a brief checklist of the required installation steps. Installation is more complicated than other ROMs because we take device security very seriously. If you are unfamiliar with installing custom roms , please click the links and read the additional details there.

  • Confirm the firmware version
    • Check the top of the ChangeLog which firmware version is required for the ROM release to work well
    • Go to settings/software-update and update if necessary
    • Alternative: flash with odin/heimdall (details see below)
  • Unlock your device
    • Backup all data, unlocking will factory reset your phone
    • Enable developer mode to and enable the OEM-unlock switch there
    • Turn off device and boot to bootloader (hold VolumeDown + Bixby, then connect USB cable)
    • Follow instructions on-screen
    • Finish the initial setup after unlock. You must connect to WiFi, but can skip everything else. Do not specify a pin/pattern during setup afterwards, otherwise TWRP may cause the "try again after 86400 seconds" issue (see below)
    • Confirm in the settings that the bootloader is actually unlocked. (greyed out, telling you its unlocked)
  • Install our TWRP (official thread) | FAQ | more details (thanks @AndrOdin)
    • Download our TWRP recovery and the vbmeta-disabled.img file
    • Unpack the .xz file with 7zip
    • Check integrity of TWRP (optional, but important for security)
    • Rename files to recovery.img and vbmeta.img; then pack both files together in a .tar archive with 7zip
    • Install Samsung USB drivers and odin, (direct link)
    • Start odin as admin, disable "Auto Reboot" and click "AP "to select the .tar archive
    • Turn off device, boot to bootloader and, once odin detects it, click "Start"
    • When the screen turns off, immediately hold (and keep holding) VolumeUp + Bixby + Power to enter recovery mode
    • When the secondary warning appears, release everything but VolumeUp
    • Swipe slider to allow for modification
  • Install LinageOS
    • copy the ROM ZIP file an external SD card
    • Boot into the recovery
    • Wipe cache + dalvik (wipe->advanced and select cache + dalvik)
    • Format data (wipe->format data, use the dedicated button, wipe->advanced does not work)
    • Flash the ROM (install -> select storage -> micro SD card and select the .zip file)
    • Optional: Flash GAPPS (e.g. OpenGAPPS)
    • Reboot to system

How do I update LineageOS?
Updating LinageOS is a lot less work and you can keep all user data. The process is similar to the last part of the installation:

  • Remove any pin/password/pattern to prevent "retry after 86400 seconds"
  • Copy the ROM ZIP file an external SD card or internal storage
  • Boot into the recovery
  • Flash the ROM
  • (Optional: Update GAPPS to the latest version)
  • Wipe dalvik and cache
  • Reboot to system

You'll also need to update Magisk, if you use it.


Try again after 86400 seconds?
With newer version of the Samsung blobs, if you unlock the storage (/data) with TWRP (ie. you enter your pin/password/pattern in TWRP), the trustzone thinks it is a failed attempt and will lock the storage unlocking for 1 day (86400 seconds). To prevent this do not enter your pin (press cancel) and you can still flash an update. If you tripped the trustzone you can either wayt for 1 day to unlock your device (do not power it off) or try rebooting the phone a few times (thanks @Stef4n82), or this slightly more detailed guide (thanks @Exilion90)

You can prevent this completely by removing any pin/password/pattern before entering recovery. This does remove all stored fingerprints, so you'll have to set the up again after the update.


How do I update the firmware?
On the stock ROM you can update from the settings menu. You can't do this on lineageOS (yet), so ypu need to use use Odin or Heimdall instead.

Odin
With Odin you have to flash:

  1. BL_G97?FXX*.tar.md5
  2. CP_G97?FXX*.tar.md5
  3. From AP_G97?FXX*.tar.md5 take the dt.img and create a new AP.tar with only the dt.img. You may need to include vbmeta_disable.img (renamed to vbmeta.img) into the .tar file to get it to work. (details @okloloi)

Heimdall
Code:
heimdall flash \
    --BOOTLOADER sboot.bin \
    --PARAM param.bin \
    --UP_PARAM up_param.bin \
    --CM cm.bin \
    --KEYSTORAGE keystorage.bin \
    --UH uh.bin \
    --DTB dt.img \
    --RADIO modem.bin \
    --CP_DEBUG modem_debug.bin

3rd Party Software:

How do I install Google apps?
You can download and install the Google Apps from Open Gapps Project. You need ARM64 and 10.x. We suggest to always use the pico package. If you need additional apps you find them in the Play Store.

Put the Open Gapps ZIP file on your SD card and flash it directly after you flashed LineageOS and before the first boot!


How do I get MicroG with this ROM?
MicroG is an open source alternative to GAPPS. , but unfortunately not recently updated and therefore not recommended.

If you want to install it anyway, read this guide by @JoeRifle and this post (appendum) by @ned14 . Update: It has been reported that the new MicroG version works without issues. (thanks @ichmyselfandi)


How do I install Magisk?
If you need root (eg. for AFWall) you can get it through Magisk. Important security Advice: Don't flash Magisk modules or anything else which sets SELinux to permissive or you open your device for malware!

Option 1 (recommended):

  • Download the boot image for Magisk: S10e -- S10 -- S10+
  • Verify the integrity of the file -> See INTEGRITY
  • Unzip the boot image using xz or p7zip
  • (Needed for Odin) Rename the file to boot.img and use 7zip to pack it into a .tar file
  • Flash the boot image to the BOOT partition using Odin, Heimdall or TWRP
  • Install https://******************/

Option 2:


Which camera app do you suggest?
OpenCamera:
Great open source app that supports a lot of the camera's features with the camera API v2 (select this option in the settings):
  • All cameras supported (except telephoto, this is a issue with the ROM)
  • Manual change of exposure, aperture, shutter speed, ISO
  • The (main) developer uses an S10e himself so you can expect good HW support :p
You can get it from F-Droid or Play Store

GCam Variants:
There is no "official" GCam for this ROM, but there are some that work. Please read this excelent post by @ned14 for more details. The current recommendation is "GCam_5.1.018.177470874.41362666_IDan_N6_3.5_fix.apk" from (IDan). You need GAPPS, microG (more detailed comparison. You can have both camera apps installed at the same time, so you can always choose the better one depending on the scenario.


Getting Help:

General:
We want linageOS to work on your device, that's the whole point of this thread. If you run into an issue, please check this FAQ and the posts of the last two days first. Should you not find an answer, you can post your question, Make sure to include enough details to reproduce your issue. When in doubt it's better to include too much information than too little :)

You may copy the template below and fill in you details. A simple example would be:



HTML:
[b]System:[/b] device, version, TWRP twrp_version, (if installed eg) gapps, magisk

[b]Description:[/b]
description

[b]Steps to reproduce:[/b]
[list]
[*]step 1
[*]step 2
[*]step 3[/list]
We do this in out free time and it may take us some time to answer, so please be patient. To take your bug reports to the next level, please read Simon's "How to Report Bugs Effectively". We'd be thankful for that and so will be every other developer you speak to.


How to create a logfile?
To get an even better insight into your issue, a logfile can help us a lot. On Android this is called "logcat". Short logcats are best. They contain less fluff which makes finding the issue easier. Here are the steps how to create a log with adb:

  • install adb drivers
  • open cmd and navigate to the adb file eg. cd C:\Users\<user>\Desktop\platform-tools
  • Connect your phone via USB
  • Select "Allow USB Debugging" on the popup on the phone (see below how to activate it)
  • Clear the log using: adb logcat -c
  • Start loggingwith: adb logcat | tee beyond.log
  • Reproduce the issue
  • Stop logging by pressing CTRL+c
  • Send us the log (in a PM)

How do I enable USB Debugging?
To enable USB Debugging you need to do the following steps:

  • Go to Settings -> About Phone
  • Look for Build number
  • Tap on Build Number several times till you get the message that Developer Options have been enabled
  • Go to Settings -> System -> Advanced -> Developer Options
  • Enable USB Debugging


About this FAQ:
This FAQ is originally written by modpunk and partly maintained by me (ctrej) to reduce modpunk's workload. We try to keep the FAQ as up-to-date as possible, but it may lag a few days behind. Please read the last posts in this thread for latest information.

Changelog:
20200809
  • update: audio output with limited frequency range, limited DAC support (thanks @El Dun)
  • update: double tap to wake works well, used it for a few weeks now without issues
  • update: "86400 seconds" section (thanks @Exilion90)
  • add: links to each version of this FAQ, just click one of the datecodes
  • add: ACCA to feature list
  • add: ADO works kinda
  • add: dual sim to feature list (thanks @Exilion90)
20200802
  • update: microG section (thanks @ichmyselfandi)
  • update: unlock instructions, setup with wifi required (thanks @Lunat1c)
  • update: "86400 seconds" section (thanks @Lunat1c & @Stef4n82)
  • add: gapps/ microg/ google framework requirement for the GCAM (thanks @KanyT & @ned14)
  • add: bug google backup pattern with 4x4 or 5x5 pattern (thanks @Ivo_Todorov)
  • fix: twrp "more details" link (thanks @Lunat1c)
20200719
  • update: rgb light sensor, all channels working
  • update: software sensors don't output values on stock either (thanks @Brembo109)
  • add: gcam information (thanks @ned14)
  • add: grip sensor
  • add: microg appendum (thanks @ned14)
  • add: workaround for black status bar in fullscreen
  • add: bug no glove mode (thanks @raggatip)
  • add: bug bixby button hold shortcut (thanks @Lav64)
20200713
  • update: feature/ bug list (previously called working/ not working) with fixed from RC2
  • update: instructions for microG (thanks @ned14)
  • update: magisk install instructions
  • update: wireless power share works fine, the phone just didn't like the synthetic load I used for testing
  • add: black bar on camera cutout in fullscreen apps (thanks @Sradgads)
20200707
  • update: section "get help" with copy & paste template
  • update: font for cmd to Courier New
  • confirm: removing pin/password/pattern solves the 86400 second wait delay (thanks @fishnetfancy)
  • add: working/not working section
  • add: this changelog
  • add: telephoto lens not working (thanks @Ned)
  • add: several RC1 issues (thanks @angela5246)
  • add: vbmeta_disabled note to firmware instructions (thanks @okloloi)
  • add: reminder to update Magisk alongside lineage (thanks @fishnetfancy)
20200705
  • first FAQ update by me (ctrej)
  • change: order to the "natural" installation flow
  • change: install section into a more detailed checklist (thanks @AndrOdin)
  • add: sub-sections (install/ 3rd party/ support)
 

Lav64

Member
Jun 10, 2017
30
8
0
As this latest release (v1.0) needs updated firmware, can anyone point me in the direction of the firmware files? Currently downloading a 5Gb file from Sammobile at 300kb/s and I don't think I can take the wait any longer!
 
S

Stef4n82

Guest
As this latest release (v1.0) needs updated firmware, can anyone point me in the direction of the firmware files? Currently downloading a 5Gb file from Sammobile at 300kb/s and I don't think I can take the wait any longer!
Page 73....
 
Last edited by a moderator:
  • Like
Reactions: Lav64

[email protected]

Senior Member
Dec 29, 2014
487
79
58
Last version recently installed successfully.
I only have a single problem does not recognize external sd card.
Is it possible to solve without formatting the external sdcard?
 

dmbardal

Senior Member
Sep 9, 2010
463
82
0
Norway
Been a bit off and on, but I seem to have the latest update installed with Magisk now.
However; does anyone have any way of passing safetynet, so my bank-apps works?

Usually this is fixed by custom kernels, but seeing as there arent any right now :confused:
 

ctrej

Senior Member
Jun 19, 2017
73
101
0
Anyone from Germany on board with an S10(e), member of Techniker Krankenkasse and got their app working on this ROM? Thanks in advance!
I'm a member but never installed the app. I did download it and requested the key. It's send by snail-mail (german coorporation, yay), so you'll have to wait 2-3 days till I can give you a full report.


I only have a single problem does not recognize external sd card. Is it possible to solve without formatting the external sdcard?
Yes, it should work out-of-the-box. I have a sandisk extreme 512GB formatted with exfat and that worked fine. An older samsung evo plus 128GB formatted with NTFS worked as well. I've honestly no idea why it causes you issues.


Been a bit off and on, but I seem to have the latest update installed with Magisk now.
However; does anyone have any way of passing safetynet, so my bank-apps works?
Usually this is fixed by custom kernels, but seeing as there arent any right now :confused:
Right now there is no way to bypass safetynet. Google has changed their implementation and now uses the TPM (Trusted Platform Module) for keys/ verification/ whatever and because it's special hardware bypassing has possibly become impossible. It will pass "basic integrity" though, this might be enough for your banking app. My bank (N26) shows a warning but lets me continue as usual.