keyboard_arrow_left Back to the overview

Install LineageOS on
Nintendo Switch v1 [Tablet]

nx_tab

Basic requirements

  1. Read through the instructions at least once before actually following them, so as to avoid any problems due to any missed steps!
  2. Make sure your computer has adb and fastboot. Setup instructions can be found here.
  3. Enable USB debugging on your device.
  4. Make sure that your model is actually listed in the “Supported models” section here (exact match required!)
  5. Boot your device with the stock OS at least once and check every functionality.
  6. LineageOS is provided as-is with no warranty. While we attempt to verify everything works you are installing this at your own risk!

Pre-Install Information

LineageOS builds for this device support the following device configurations:

Configuration 1:

  • An original, exploitable “v1” Nintendo Switch with your preferred JoyCons attached during installation
  • An RCM Jig such as this one)
  • Hekate v6.1.0 or newer loaded via a Fusee launcher such as this one

Configuration 2:

  • A hard-modded (often called “ModChipped”) Switch v1 / v2 / Lite / OLED with your preferred JoyCons attached during installation
  • Hekate v6.1.0 or newer on your SD Card, and loaded by your ModChip

Additionally, we support two installation locations:

  • SD Card
  • eMMC

This guide will detail SD Card installation, if you wish to install Android to the eMMC, you will need to consult external resources.

Additionally, this guide will not detail exploiting or ModChipping your Switch, or the installation of Hekate, so please go select the applicable/preferred installation configuration to your device, and come back when Hekate v6.1.0 or newer is booted on the device.

Partitioning the System

  1. Please back up ALL data on the SD Card before proceeding with installation, as all data/games/save data stored on the SD Card will be erased in the process of installation.
  2. In Hekate, select “Tools” in the top-center of the screen, then “Partition SD Card”, then click “OK” when prompted.
  3. Now, make your partition scheme selections based on your needs, as well as any other operating systems you may plan to install alongside Android.
  4. When content with your selections, click “Next Step” in the bottom-right of the screen, then when ready click “Start”, and the safety pause period is complete, press the Power Button to proceed.
  5. When this process completes, you will be presented with several options, select “SD UMS” when prompted.

Preparing the SD Card

  1. Connect your device to your PC, and navigate to your SD Card once it is mounted.
  2. Please download the following files from here and place them in the noted folders (which you will potentially have to create) on your device’s SD Card:
    • boot.img -> switchroot/install/boot.img
    • recovery.img -> switchroot/install/recovery.img
    • nx-plat.dtimg -> switchroot/install/nx-plat.dtimg
    • bl31.bin -> switchroot/android/bl31.bin
    • bl33.bin -> switchroot/android/bl33.bin
  3. Please download the following files and place them in the noted folders (which you will potentially have to create) on your device’s SD Card:
  4. Create a new text file called android.ini at bootloader/ini/android.ini and populate it with the following:
    [LineageOS]
    l4t=1
    boot_prefixes=switchroot/android/
    id=SWANDR
    icon=switchroot/android/icon_android_hue.bmp
    logopath=switchroot/android/bootlogo_android.bmp
    r2p_action=self
    usb3_enable=1
    
  5. Safely eject the SD Card from your PC’s file browser, then click “Close” on the device, then the “X” icon in the top right of the screen, and finally the “Home” button in the top-left of the screen.
  6. Now select “Flash Android”, go through the process, then when asked if you’d like to reboot into recovery, click “No”.
  7. When the process is complete, navigate to the Hekate’s main menu by clicking “X Close” in the top right of the screen.
  8. In Hekate, select “Nyx Settings” in the bottom-left of the screen, then “Dump Joy-Con BT” from the top-right.
  9. Click “OK” once a message indicates success, the message will look like this:
    Success!
    Found 2 out of 2 Joy-Con Pairing data!
    Both pairing data are HOS based!
    
  10. When the process is complete, navigate to the Hekate’s main menu by clicking “X Close” in the top right of the screen. Then select “More Configs”, hold the Volume Up button, and select the “LineageOS” option to boot into recovery. Do not release the Volume Up button until you see the LineageOS splash screen.

Installing LineageOS from recovery

  1. Download the LineageOS zip file that you would like to install or build the package yourself.
  2. If you are not in recovery, reboot into recovery:
    • Boot to Hekate, then select “More Configs”, then hold Volume Up and select the LineageOS entry.
  3. Now tap Factory Reset, then Format data / factory reset and continue with the formatting process. This will remove encryption and delete all files stored in the internal storage, as well as format your cache partition (if you have one).
  4. Return to the main menu.
  5. Sideload the LineageOS .zip package but do not reboot before you read/followed the rest of the instructions!
    • On the device, select “Apply Update”, then “Apply from ADB” to begin sideload.
    • On the host machine, sideload the package using: adb -d sideload filename.zip.

Installing Add-Ons

  1. Click Apply Update, then Apply from ADB, then adb -d sideload filename.zip for all desired packages in sequence.
    When presented with a screen that says Signature verification failed, click Continue. It is expected as add-ons aren’t signed with LineageOS’s official key!

All set!

Once you have installed everything successfully, you can now reboot your device into the OS for the first time!

  • Click the back arrow in the top left of the screen, then “Reboot system now”.

Get assistance

After you’ve double checked that you followed the steps precisely, didn’t skip any and still have questions or got stuck, feel free to ask on our subreddit or in #LineageOS on Libera.Chat.