Whaddup, XDA? ^_^
This began as a modest little post, aptly named Post#3333 in the Resurrection Remix thread to help keeping the thread clean. Many thanks to @varund7726 for his support and making it the official RR Bacon FAQ!
It gained more attention than I thought it would so I decided to make a more general version in a dedicated thread.
This is not my work but a collection of answers by amazing people that roam these digital lands. Of course, I do appreciate you clicking that Thank you button . I hope people looking for answers will find their way here. If someone has any input, feel free to drop it in the thread or send me a PM and I'll update the post if needed. It may be best to not ask new questions here, you'll find more satisfying answers in the appropriate threads of the custom ROM you're using or in the general Help thread.
Now, let's get this out of the way first:
What are you reading this for? There isn't a single Bacon owner with valid warranty anymore. Anyway, here's the original disclaimer: You have the [U]right[/U] to unlock your device, not the [U]obligation[/U] to do so. Anything you flash can and will be used against you in a court of technical dispute. If you get your device bricked, you will [B]not[/B] be provided with a new one. If your mother in law disappears as a result of something mentioned in this thread, I will happily take your donations to thank me but I will not be held responsible! Mind that this is – and probably will continue to be – a work in progress. This is an attempt to collect general solutions, which will not always work in every case.
Please DO NOT QUOTE THIS ENTIRE POST! Thanks.
New items are indicated with; Updated items are indicated with
- How can this FAQ help me? Why did you make this?
- Why isn’t anyone helping me?
- Creating a logcat
- EXT4 vs. F2FS
- What else do I need? (Prerequisites)
- C6 or C7, which is the best firmware? (troubleshooting network issues)
- What kernel should I use?
- Installing TWRP
- How to flash (with links!)
- I'm seeing two red errors in TWRP while flashing
- I'm getting an error while flashing Gapps
- I dirty flashed and something doesn't work anymore
- My screen is going black, I can only see notifications
- My device just exploded!
- The other person (nearly) can't hear me during a call
- I have another audio/microphone problem
- Can't read or write to internal storage (/sdcard)
- QUICK FIXES
- The camera app can't connect to the camera
- Google Assistant isn't working or "OK Google" detection fails
- QS toggle 'drops' when trying to add it
- How do I apply themes and which ones can I use?
- Fast/Quick Charge isn't working
- Camera mods
1.a. How can this FAQ help me? Why did you make this?
My goal is to maintain a one-size-fits-all thread where people can find answers to the most common current problems for the OnePlus One a.k.a. Bacon. It also serves as a detailed guide through the flashing process. The reason I'm doing this is threefold: 1) Despite the fact that this is a 2014 device, the 1+1 community is still booming. Best proof of that is that our very own Bacon is by far the most popular device for LineageOS with currently over 80,000 installs! I'd love to honor that fact. 2) This is my first support thread, I hope to learn a great deal from it. 3) I honestly enjoy helping people =)
1.b. Why isn’t anyone helping me?
Keep in mind that XDA is not your personal tech support. The idea is that we help each other as a community, not to expect an immediate answer to your problem. If you do not add any useful technical information to your query, your post may not be considered, this is even more so the case in development threads.
There are three ways (that can be combined) to achieve a technically sound post:
- Attach a logcat! See 1.c. on how to do this.
- Provide screenshots, especially handy with aesthetic issues.
- Provide the exact steps to reproduce the problem (be VERY specific).
1.c. Creating a logcat
This'll only take a minute and may provide invaluable information for any developer or someone trying to help. There are a number of ways to create them, this tutorial explains a remote technique. I do believe this is the easiest way:
- Download CatLog from the Play Store
- Make sure you have a dedicated 'menu' button (CatLog is old skool)
- Run the app, give it root rights, [optional] pause the current flow with the pause button and then clear the window tapping the circle with the X in the middle top right (this will provide peace of mind, the constant stream can be a bit overwhelming)
- Tap the menu button, press Record followed by OK. Any activity is now being recorded
- Press your home key and launch the app that's giving you trouble, let the crash happen and repeat it a few times
- Drag down notifications and tap the cat, it'll state "select to stop recording"
- CatLog will now show you what it has recorded, use the search feature to check if no privacy sensitive information (your e-mail, a phone number etc.) has been collected, you can edit this out manually with a text editor if needed
- You can simply tap the menu key again and select Send to share the log, this feature will also add device info (brand, model, Android version ...)
- If you'd like to share it manually or want to make some edits first, you'll find the file in [internal storage]/catlog/saved_logs
2.a. EXT4 vs. F2FS
A lot can be said about filesystems but I won't go into any technical debates on here. The main difference boils down to this:
F2FS is arguably faster than EXT4; EXT4 is arguably more stable than F2FS.
In real use performance, not much difference will be noticed in terms of speed. Since the release of Oreo for Bacon, however, stability on F2FS has decreased drastically or it is unsupported entirely. If you have never changed this yourself, the system will most likely be formatted to EXT4. You can check with DiskInfo or in recovery. In case you want to run Nougat on F2FS or you want to return to EXT4 but forgot how, here's a refresher:
- In recovery, go to Wipe > Advanced Wipe
- Select a single partition
- Tap “Repair or Change File System” (if you see “Invalid partition selection” appearing, it means the partition’s file system cannot be changed
- On top you can see the current file system, tap “Change File System” followed by the one you want (stick to either EXT4 or F2FS)
- Swipe to confirm
2.b. What else do I need? (Prerequisites)
- A good working TWRP
- The ROM zip of your choosing
- Gapps (ARM/8.1/nano, there are plenty alternatives, check with your ROM maker which one is advised)
- last CM13 snapshot (only if you didn't have CM13 before)
2.c. C6 or C7, which is the best firmware? (troubleshooting network issues)
None. There are mixed results on both, depending on which network(s) you use. Which one works best for you? The only way to find out is by flashing one of the three versions below (that differs from your current version, check under About phone > Baseband version. The recommended one for most users is C6-00241 (the most likely one you currently have).
Here are three very common firmwares and a Frankenstein release:
- Download DI.3.0.c6-00241
- Download 4.0.1.c7-00013 (2016)
- Download 4.0.1.c7-00011 (2016)
- @MrSHME's Frankenstein Release
- [instructions and credits]
Important note when flashing firmware: backup your modem and EFS partitions first! It may happen that the system hangs in boot animation after a firmware flash (I experienced this a few times). Give it some time and it should automatically boot back to recovery. In recovery, reboot back to system (don't do any wiping or anything) and it should boot just fine. If the system keeps hanging for over 20 minutes, manually force a shutdown (long press power) and try booting regularly again. Still no luck? Boot to recovery and flash other firmware or restore your modem backup.
2.d. What kernel should I use?
You don't have to use any. Want to take the plunge anyway? Sure, check out post #3 for a list. You can make a backup of your kernel/blobs with Flashify
Read (much much) more about tweaking in this excellent guide by @Saber
Always make a nandroid backup before you flash anything!
3.a. Installing TWRP
Before flashing anything, make sure you are using a compatible TWRP! You'll find a download link to the one I'm using in this FAQ, I'll keep it updated. I know this is basic information but to avoid any mistakes, I'm providing all needed steps:
- Download a TWRP .img file
- Move it to the adb (official download) folder where adb and fastboot exe's are located
- [this is no requirement but let's do this for the clarity of these steps] rename it to recovery.img
- Reboot device into fastboot via advanced reboot menu, 'adb reboot bootloader' command or – if the device is off – press and hold "Power + Volume UP" until "Fastboot Mode" appears
- Setup the correct drivers and connect the device to the PC/Mac
- Open a command line (terminal on Mac I guess) in the adb folder
- type "fastboot devices" to see if the system picks up the device
- type "fastboot flash recovery recovery.img" to flash TWRP
- Disconnect the device from the PC
- Press and hold power until the device turns off
- Hold "Power + Volume DOWN" to boot into the newly flashed TWRP recovery
Always make a nandroid backup before you flash anything!
- In TWRP, wipe by swiping factory settings. If you're experiencing issues, it's best to do a full wipe (Advanced > select System + Data + Cache + Dalvik-ART Cache)
- [optional] Flash last CM13 snapshot and do another full wipe. This step is crucial when you've never been on CM13 before. This flash will fix/prevent a wide variety of issues! You only need to do this once.
- Flash the ROM zip
- [optional] Flash a custom kernel
- Flash Gapps (ARM/nano, version should be the same as ROM), check Gapps compatibility in ROM thread.
- [optional] If root is desired, flash Magisk (stable or beta)
- [optional] Flash other mods
- Wipe Cache/Dalvik-ART Cache and reboot
- Reboot to TWRP
- Flash the ROM zip
- Wipe Cache/Dalvik-ART Cache and reboot
This is basically the clean flash procedure but you backup the /data partition before wiping and restore it afterwards (or don't wipe /data at all). I do not recommend this method.
Example (my flashing procedure for a specific Oreo ROM):
- Download ROM and Open Gapps to root. Check ROM md5 hash with MiXplorer
- Backup all user apps + a few system elements (messages, call logs etc.) with TitaniumBackup (+pro key)
- Copy the TitaniumBackup folder to my PC
- Reboot to latest TWRP, create Nandroid backup of System and Data (sometimes copy that one to PC as well)
- Wipe /system + /data + /cache + /art-dalvik cache
- Flash ROM + Gapps + OP5 camera mod + iYTBP + Magisk beta (all in one go), wipe caches after flashing and reboot
- I let Google setup install all apps, then restore app data with TiBu, this feels more clean
- Restore system elements with TiBu + apply AdAway lists + restore Android ID (for my banking app) and reboot
- Enjoy awesomeness!
3.c. I'm seeing two red errors in TWRP while flashing
They are LOS related and have no effect on the flash procedure, don't worry about it, you can safely ignore them.
3.d. I'm getting an error while flashing Gapps
Error 70: You're trying to flash a package that is too large such as Stock. Try a smaller package.
Error 64: Wrong architecture, you need an ARM package, not ARM64/x86/x86_64.
Error 20: Wrong version, you need 6.x for Marshmallow, 7.x for Nougat
3.d. I dirty flashed and something doesn't work anymore
Please do not inquire about issues after (semi-)dirty flashing. The first step for you to take is to perform a clean flash. If the issue is still present and it hasn't been posted before (PLEASE use search!), then post your inquiry in the ROM thread.
4.a. My screen is going black, I can only see notifications
This behavior is caused when a profile has lock screen disabled. The only way to recover from this condition is to clean flash, or restore a backup that was made prior to setting up the profile. It may be possible to reboot successfully if one is in a location or situation that triggers a profile that doesn't have lock screen disabled, then change the problem profile settings (unconfirmed).
4.b. My device just exploded!
It's most likely unrelated to a software problem but please, feel free to share pictures!
4.c. The other person (nearly) can't hear me during a call
- Can't be heard
In /system/build.prop, change
Edit /system/etc/audio_platform_info.xml (in Oreo this file moved to /system/vendor/etc)
<device name="SND_DEVICE_IN_HANDSET_MIC" acdb_id="40" />
<device name="SND_DEVICE_IN_HANDSET_MIC" acdb_id="4" />
- Audio comes out low
4.d. I have another audio/microphone problem
Please refer to the OnePlus One Audio Mods Collection, a genious collection of all sorts of fixes and workarounds to achieve fully featured audio on the OPO.
4.e. Can't read or write to internal storage (/sdcard)
Your /sdcard partition is most likely corrupt! Now what? When this happens to /system or /data we can simply perform a clean flash. Wiping our internal storage, however, means wiping a lot of precious data that is not included in a Nandroid backup so it's crucial to make regular backups manually. A lot of trouble can be avoided with cloud syncing (Dropbox, Google Photos, etc.). When read/write errors present themselves (camera can't save photos, not enough space errors while there's plenty, folders disappear, etc.) it's important to work fast before all your data becomes unavailable indefinitely. Here's how you can reset your internal storage in a non-destructive manner:
- Copy the entire content of your internal storage (/sdcard) to an external location (PC or OTG drive). Make sure the real important things are immortalized (e.g. your cat photos/videos are synced with Google Photos and/or are trending on YouTube)!
- Reboot to TWRP
- You may want to create a nandroid backup at this point but do not forget to copy the backup to your PC or make the backup via OTG as we're about to wipe the internal storage (and with it, all internal backups)
- Go to Wipe > Advanced and select only Internal storage, confirm to wipe (you may experience some discomfort at this point, this is normal)
- Reboot to TWRP (from recovery to recovery, that's right)
- Now copy all content back from the folder on your computer to the internal storage. You should be able to do this simply over USB while TWRP is active. If you don't, go to the main TWRP menu, tap 'Mount' followed by 'Enable MTP'
- When the copy is complete, reboot to System and your trouble should be gone!
Tip: this is the perfect opportunity to sieve through those files! I recommend not just copying everything back but only the things you still need. Exclude folders of apps that aren't installed anymore and skip unused media files. This will decrease the chance of future corruption. Take some time to make your internal storage shipshape!
5. QUICK FIXES
5.a. The camera app can't connect to the camera
If you flashed something like OxygenOS Blobs, your camera will not work unless you set SELinux to Permissive. You should find this in your ROM settings (e.g. for RR this is under Settings > Configurations > Miscellaneous > Selinux mode > Permissive) or you can easily do this with SELinuxModeChanger.
Why this is a bad idea: SELinux or Security Enhanced Linux prevents malicious apps from gaining unlimited system level access by exploiting security holes. By setting it to Permissive, you’re disabling this extra layer of security. Infections due to this are rare but do happen, you’ve been informed.
5.b. Google Assistant isn't working or "OK Google" detection fails (this may be obsolete by now, please notify me if it is)
See 4.c., “Audio comes out low”.
5.c. QS toggle 'drops' when trying to add it
This may happen when attempting to add one of the lower QS toggles. There are two ways to work around this bug:
- By lowering the display size: go to Settings > Accessibility > Display size (or under custom ROM configurations) and change it to Smaller or Smallest
- By messing around: move icons from the top to the QS panel until you're able to slide the QS toggle you need without 'dropping' it
6.a. How do I apply themes and which ones can I use?
OMS compatible ROMs only! To start, install Substratum from the Play Store, open it and grant it root rights (both substratum and masquerade). Then search the Play Store for substratum themes that are compatible with your Android version. Some will cost you something but most are really worth it and there are some great free ones as well. After installing a theme, apply it in Substratum. Don't forget to read the theme creator's instructions, some combinations can cause trouble!
6.b. Fast/Quick Charge isn't working
That's because the OnePlus One doesn't support it. You can, however, tweak charging rates with kernel tweaks (which is still limited, don't expect dash charge speeds). Equip yourself with proper hardware. A ‘smart’ charging station and quality cables can go a long way. Mind that faster charging is not better charging per se. You may shorten the lifespan of your battery when pushing it to the limits. Charging with the official charger/cable (which should take about 2 hours from 0 to 100%) is still the best way to treat your battery. Also note that if you got your device back in 2014, there's a good chance your battery doesn't have its full capacity anymore, longer charge rates and shorter lifespans can be expected. That being said, the OPO was equipped with a kickass quality battery, even after abusing it for all these years, many users have reported it still works great!
Since Magisk is more widely adopted, installing V4A has become very easy.
- In Magisk Manager, tap the three lines top left
- Tap Downloads
- Scroll down to ViPER4Android FX and tap the download icon
- Tap Install followed by Reboot
- Once booted, go into Magisk > Downloads again
- ViPER will now be on top, tap it
- You'll find a link to the latest APK, download and install it
7.b. Camera mods
The OnePlus 5 camera software has been ported (download here) to Bacon and it works great, this is my current favourite.
Great camera mod: CameraNextModV2. It's just a simple flash away.
Not much of a mod but a Camera app optimized for our OPO: Bacon Camera!.
And good to know: Google Camera 4.1.006.135988111 is the last compatible version for Bacon.
Thank you for contributing, @venky716 @bdwilk @Baldesarra @Mr.Ak @Silverview @abhi08638 @tazzkiller @Genericxx @Turpb (PM me if your name should be here!)