![]()
Comprehensive Troubleshooting for NFC Not Working on Pixel Fold 1 (Felix) After LineageOS Installation
We understand the frustration that arises when a critical feature like Near Field Communication (NFC) ceases to function after a fresh operating system installation. The transition from stock Android to a custom ROM like LineageOS 23.0 on the Pixel Fold 1 (codenamed Felix) is often driven by the desire for enhanced performance, battery life, and a cleaner software experience. While your report indicates that battery life has improved phenomenally, the inability to use NFC for essential tasks, such as unlocking doors or reading tags, creates a significant gap in device utility.
In this extensive guide, we will delve deeply into the various facets of NFC functionality on the Pixel Fold 1. Our objective is to provide a systematic, step-by-step methodology to diagnose and resolve the NFC issue you are experiencing. We will cover the nuances of the specific build you mentioned, the nature of custom ROM implementations, and advanced troubleshooting techniques that go beyond basic advice.
Understanding the Core Issue: LineageOS 23.0 and Pixel Fold 1 Hardware Compatibility
The Pixel Fold 1 (Felix) is a complex piece of hardware. Integrating a custom ROM requires precise hardware abstraction layer (HAL) implementations. When you report that NFC tools fails to detect any tags or cards, we are looking at a potential breakdown in the software communication with the NFC controller.
The Nature of Nightly Builds
You mentioned installing lineage-23.0-20260108-nightly-felix. It is crucial to understand the “nightly” designation. While LineageOS maintains a high standard of quality, nightly builds are essentially rolling releases. They contain the latest code commits and feature updates. Occasionally, this can lead to temporary regressions where specific hardware features, such as the NFC stack, might become unstable or non-functional. The report you saw on the LineageOS GitLab regarding the Pixel 4 suggests a broader issue with the NFC stack in recent commits, which may have inadvertently affected the Felix device tree as well.
Hardware vs. Software Verification
Before assuming the ROM is solely at fault, we must rule out physical hardware anomalies. Although the NFC worked prior to the installation, custom flashing processes can sometimes trigger unexpected hardware lockouts. However, given that the rest of the OS is functioning correctly, this is likely a software configuration issue within the NFC Service or the underlying Secure Element (SE) communication.
Initial Diagnostic Procedures and Build Verification
We must begin with a structured baseline check. These steps are designed to isolate the variable causing the failure.
Verifying the Build Integrity
Corrupt downloads or interrupted flashes can lead to missing system components. We recommend verifying the integrity of your installation.
- Check the MD5/SHA256 Sum: Ensure the downloaded ZIP file matches the hash provided on the official LineageOS download page.
- Clean Flash Confirmation: Did you perform a clean install (formatting system, data, and cache)? Or did you attempt a dirty flash? Dirty flashing over a previous version or a different ROM can cause conflicts in system libraries. If you performed an update without a clean wipe, we strongly advise backing up your data and performing a clean flash to eliminate this variable.
Checking the Official LineageOS Wiki
We highly recommend checking the LineageOS Wiki for the Pixel Fold (Felix). The wiki serves as the definitive source for device status. Look specifically for the “Maintainer” information for your specific build date. If the maintainer has not explicitly marked NFC as working, or if there are recent updates regarding NFC regressions, this information is vital.
Advanced Configuration: The Magisk Environment and System Modifications
Your profile indicates a reliance on the Magisk Modules Repository hosted at https://magiskmodule.gitlab.io. Since Magisk is the standard for rooting and system modification on LineageOS, we must consider the interplay between root access and NFC functionality.
Magisk Modules and NFC Conflicts
Certain Magisk modules can inadvertently interfere with the NFC stack.
- Busybox Modules: While generally stable, older versions can cause binary conflicts.
- Systemless Hosts Module: If you use this for AdBlocking, ensure it is not aggressively modifying system partitions where NFC configurations reside (though this is rare).
- Proprietary Patches: Any module designed to spoof device props (e.g., SafetyNet fix) should be temporarily disabled. While SafetyNet fixes rarely touch NFC, some “Universal GMS Fix” modules can alter the secure partition.
Troubleshooting Step: Open the Magisk app, go to the Modules section, and disable every module. Reboot the device and test NFC again. If it works, re-enable modules one by one to identify the culprit.
SafetyNet and Play Integrity
If you have utilized Magisk to pass SafetyNet or Play Integrity, ensure that your Universal SafetyNet Fix (USNF) module is up to date. An outdated module that attempts to modify the ro.build.fingerprint or ro.build.version.security_patch can sometimes cause instability in hardware services that rely on the secure boot chain, though this is less likely with NFC.
Deep Dive into NFC Software Stack and Android Services
If the basic diagnostics and Magisk checks do not resolve the issue, we need to look at the internal Android services managing NFC.
Checking NFC Service Status via ADB
We can verify if the Android NFC service is actually running.
- Connect your Pixel Fold to a PC with USB Debugging enabled.
- Open a command prompt or terminal and type:
adb shell dumpsys nfc - Analyze the Output:
- Look for the line
mIsEnabled. It should readtrue. If it saysfalse, the NFC controller is disabled at the system level. - Look for
mState. It should beONorPOWER_ON. - If the output shows an error or a stack trace, this indicates a crash in the
com.android.nfcprocess.
- Look for the line
Manually Toggling NFC via ADB
Sometimes the UI toggle fails to actually engage the hardware. You can force the NFC state via command line:
- To Enable:
adb shell svc nfc enable - To Disable:
adb shell svc nfc disable
If the command executes but NFC still does not scan, the issue lies deeper in the HAL (Hardware Abstraction Layer) or the kernel driver.
Reviewing Logcat for NFC Errors
To pinpoint the crash, we need to capture a logcat.
adb logcat -s NfcService:* NdefPush:* TagManager:*- Attempt to scan an NFC tag while this command is running.
- Look for
W(Warning) orE(Error) tags. Common errors includeE/NfcNci: xmit errororE/NfcService: Could not enable NFC. These errors point to the firmware or driver level.
Firmware and Modem Partition Considerations
On Pixel devices, the NFC firmware is often tied to the modem or vendor partitions. When flashing LineageOS, users are instructed to use specific firmware versions.
Firmware Compatibility
Did you flash the recommended firmware prior to installing LineageOS? LineageOS for Pixel devices usually requires a specific base firmware (e.g., the latest stable Android 14 or 15 firmware from Google) to function correctly.
- If the firmware is outdated, the NFC controller may not initialize correctly.
- If the firmware is too new (e.g., a beta release) compared to what the LineageOS device tree expects, the HAL may fail to communicate.
We recommend re-flashing the latest stable factory image for the Pixel Fold 1, then immediately flashing the LineageOS recovery and the LineageOS ROM without booting into the stock OS.
Community-Reported Solutions and GitLab Investigation
You mentioned seeing a report on the LineageOS GitLab regarding the Pixel 4. Let’s address how this relates to your device.
Analyzing the GitLab Issue
In the open-source community, fixes for one device often cascade to others. The Pixel 4 and Pixel Fold share architectural similarities in their NFC controllers (often NXP or STMicroelectronics chips).
- If the Pixel 4 issue was kernel-related: A fix for the kernel module
pn547orpn548(common NFC drivers) might be required for Felix. - If the issue was SELinux related: A policy denial could be preventing the
nfcservice from accessing the hardware device node.
We suggest you actively monitor that specific GitLab thread. If a patch is merged, it will likely appear in the next nightly build.
The “Felix” Specific Hardware: The Foldable Factor
The Pixel Fold is unique because of its folding mechanism. While the NFC antenna is typically located on the rear glass of the upper “phone” portion, the software configuration must account for the device’s unique posture.
Screen State and NFC
Some users have reported that NFC behaves differently when the device is folded versus unfolded.
- Test Scenario: Try scanning an NFC tag with the device unfolded and the screen on. Then try folded (using the outer screen). If it works in one state but not the other, this is a specific bug in the
DisplayManagerorFoldStatelistener affecting the NFC power state. This is a rare but plausible scenario on custom ROMs for foldables.
Reverting and Verification Steps
If all else fails, we must determine if the issue is unique to your unit or the ROM itself.
Temporary Restore to Stock
To prove the hardware is not damaged, we recommend temporarily restoring the Pixel Fold to stock Android (OTA image).
- Use the Google Flash Tool or manually flash the factory image.
- Do not restore your data immediately; set up as a fresh device.
- Test NFC with the stock OS.
- If NFC works: The issue is 100% in the LineageOS build or your flashing method.
- If NFC fails: You may have a hardware failure (though unlikely if it worked before).
Reporting the Bug Correctly
If you confirm it is a LineageOS issue, we can provide the correct template for your report to maximize the chance of a fix.
- Summary: [Felix] NFC not working on lineage-23.0-20260108
- Device: Pixel Fold 1 (Felix)
- Build Number: lineage-23.0-20260108-nightly-felix
- Steps to Reproduce: Clean flash, attempt to scan tag.
- Expected Result: Tag is scanned.
- Actual Result: Tag is ignored.
- Logs: (Attach the
adb logcatandadb shell dumpsys nfcoutput).
Conclusion: Path to Resolution
We believe the most likely cause for the NFC failure on your Pixel Fold 1 running LineageOS 23.0 is a regression in the nightly build or a missing firmware dependency. The fact that you are using a nightly build implies you accept a degree of instability, but hardware failures like this are frustrating.
We recommend the following prioritized action plan:
- Disable all Magisk modules and reboot.
- Capture a logcat (
adb logcat) during a scan attempt to identify the specific error code. - Check the LineageOS Wiki for any specific firmware requirements you may have missed.
- Wait for the next nightly build (if the GitLab issue indicates a fix is pending).
- Consider flashing a more stable weekly build if available, rather than the highly specific nightly from January 8th.
By following these detailed steps, we can either restore your NFC functionality or gather the precise data needed for the developers to patch the Felix device tree. Stay tuned to the Magisk Modules repository for any specific Magisk modules that might aid in hardware restoration if needed.