[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-6317":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":22,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":30,"readmeContent":31,"aiSummary":32,"trendingCount":16,"starSnapshotCount":16,"syncStatus":19,"lastSyncTime":33,"discoverSource":34},6317,"hekate","CTCaer\u002Fhekate","CTCaer","hekate - A GUI based Nintendo Switch Bootloader","",null,"C",8418,659,291,22,0,9,69,2,39.46,"GNU General Public License v2.0",false,"master",[25,5,26,27,28,29],"bootloader","nintendo-switch-bootloader","nyx","tools","uefi","2026-06-12 02:01:18","# hekate - Nyx\n\n![Image of Hekate](https:\u002F\u002Fuser-images.githubusercontent.com\u002F3665130\u002F60391760-bc1e8c00-9afe-11e9-8b7a-b065873081b2.png)\n\n\nCustom Graphical Nintendo Switch bootloader, firmware patcher, tools, and many more.\n\n\n\n- [Features](#features)\n- [Bootloader folders and files](#bootloader-folders-and-files)\n- [Bootloader configuration](#bootloader-configuration)\n  * [hekate global Configuration keys\u002Fvalues](#hekate-global-configuration-keysvalues-when-entry-is-config)\n  * [Boot entry key\u002Fvalue combinations](#boot-entry-keyvalue-combinations)\n  * [Boot entry key\u002Fvalue combinations for Exosphère](#boot-entry-keyvalue-combinations-for-exosphère)\n  * [Payload storage](#payload-storage)\n  * [Nyx Configuration keys\u002Fvalues](#nyx-configuration-keysvalues-nyxini)\n\n\n\n## Features\n\n- **Fully Configurable and Graphical** with Touchscreen and Joycon input support\n- **Launcher Style, Background and Color Themes**\n- **HOS (Switch OS) Bootloader** -- For CFW Sys\u002FEmu, OFW Sys and Stock Sys\n- **Android & Linux Bootloader**\n- **Payload Launcher**\n- **eMMC\u002FemuMMC Backup\u002FRestore Tools**\n- **SD Card Partition Manager** -- Prepares and formats SD Card for any combo of HOS (Sys\u002FemuMMC), Android and Linux\n- **emuMMC Creation & Manager** -- Can also migrate and fix existing emuMMC\n- **Switch Android & Linux flasher**\n- **USB Mass Storage (UMS) for SD\u002FeMMC\u002FemuMMC** -- Converts Switch into a SD Card Reader\n- **USB Gamepad** -- Converts Switch with Joycon into a USB HID Gamepad\n- **Hardware and Peripherals info** (SoC, Fuses, RAM, Display, Touch, eMMC, SD, Battery, PSU, Charger)\n- **Many other tools** like Archive Bit Fixer, Touch Calibration, SD\u002FeMMC Benchmark, AutoRCM enabler and more\n\n\n## Bootloader folders and files\n\n| Folder\u002FFile              | Description                                                           |\n| ------------------------ | --------------------------------------------------------------------- |\n| bootloader               | Main folder.                                                          |\n|  \\|__ bootlogo.bmp       | It is used if no `logopath` key is found. User provided. Can be skipped. |\n|  \\|__ hekate_ipl.ini     | Main bootloader configuration and boot entries in `Launch` menu.      |\n|  \\|__ nyx.ini            | Nyx GUI configuration                                                 |\n|  \\|__ patches.ini        | Add external patches. Can be skipped. A template can be found [here](.\u002Fres\u002Fpatches_template.ini) |\n|  \\|__ update.bin         | If newer, it is loaded at boot. Normally for modchips. Auto updated and created at first boot. |\n| bootloader\u002Fini\u002F          | For individual inis. `More configs` menu. Autoboot is supported.   |\n| bootloader\u002Fres\u002F          | Nyx user resources. Icons and more.                                   |\n|  \\|__ background.bmp     | Nyx - Custom background. User provided.                               |\n|  \\|__ icon_switch.bmp    | Nyx - Default icon for CFWs.                                          |\n|  \\|__ icon_payload.bmp   | Nyx - Default icon for Payloads.                                      |\n| bootloader\u002Fsys\u002F          | hekate and Nyx system modules folder. !Important!                     |\n|  \\|__ emummc.kipm        | emuMMC KIP1 module.                                                   |\n|  \\|__ libsys_lp0.bso     | LP0 (sleep mode) module.                                              |\n|  \\|__ libsys_minerva.bso | Minerva Training Cell. Used for DRAM Frequency training.              |\n|  \\|__ nyx.bin            | Nyx - hekate's GUI.                                                   |\n|  \\|__ res.pak            | Nyx resources package.                                                |\n|  \\|__ thk.bin            | Atmosphère Tsec Hovi Keygen.                                          |\n|  \\|__ \u002Fl4t\u002F              | Folder with firmware relevant to L4T (Linux\u002FAndroid).                 |\n| bootloader\u002Fscreenshots\u002F  | Folder where Nyx screenshots are saved                                |\n| bootloader\u002Fpayloads\u002F     | For the `Payloads` menu. All CFW bootloaders, tools, Linux payloads are supported. Autoboot only supported by including them into an ini. |\n| bootloader\u002Flibtools\u002F     | Reserved                                                              |\n\n\n\n## Bootloader configuration\n\nThe bootloader can be configured via `Nyx` -> `Options` or 'bootloader\u002Fhekate_ipl.ini'. The special section 'config' controls the actual global configuration. Any other ini section represents a boot entry and can only be edited manually via the ini.\n\n\nThere are four possible type of entries. \"**[ ]**\": Boot entry, \"**{ }**\": Caption, \"**#**\": Comment, \"*newline*\": .ini cosmetic newline.\n\n\n**You can find a template [Here](.\u002Fres\u002Fhekate_ipl_template.ini)**\n\n\n### hekate Configuration keys\u002Fvalues (section *[config]*)\n\nUse `Options` in Nyx to edit the following configuration:\n\n| Config option      | Description                                                    |\n| ------------------ | -------------------------------------------------------------- |\n| autoboot=0         | 0: Disable, #: Boot entry number to auto boot.                 |\n| autoboot_list=0    | 0: Read `autoboot` boot entry from hekate_ipl.ini, 1: Read from ini folder (ini files are ASCII ordered). |\n| bootwait=3         | 0: Disable (It also disables bootlogo. Having **VOL-** pressed since injection goes to menu.), #: Time to wait for **VOL-** to enter menu. Max: 20s. |\n| autohosoff=1       | 0: Disable, 1: If woke up from HOS via an RTC alarm, shows logo, then powers off completely, 2: No logo, immediately powers off.|\n| autonogc=1         | 0: Disable, 1: Automatically applies nogc patch if unburnt fuses found and a >= 4.0.0 HOS is booted. |\n| updater2p=0        | 0: Disable, 1: Force updates (if needed) the reboot2payload binary to be hekate. |\n| backlight=100      | Screen backlight level. 0-255.                                 |\n| ------------------ | --------- *The following can be edited via ini only* --------- |\n| noticker=0         | 0: Animated line is drawn during custom bootlogo, signifying time left to skip to menu. 1: Disable. |\n| bootprotect=0      | 0: Disable, 1: Protect bootloader folder from being corrupted by disallowing reading or editing in HOS. |\n\n\n### Boot entry key\u002Fvalue combinations\n\nA boot entry needs to be manually added\u002Fedited with the user's chosen key\u002Fvalue combos.\n\n| Config option          | Description                                                |\n| ---------------------- | ---------------------------------------------------------- |\n| warmboot={FILE path}   | Replaces the warmboot binary                               |\n| secmon={FILE path}     | Replaces the security monitor binary                       |\n| kernel={FILE path}     | Replaces the kernel binary                                 |\n| kip1={FILE path}       | Replaces\u002FAdds kernel initial process. Multiple can be set. |\n| kip1={FOLDER path}\u002F*   | Loads every .kip\u002F.kip1 inside a folder. Compatible with single kip1 keys. |\n| pkg3={FILE path}       | Takes an Atmosphere `package3` binary and `extracts` all needed parts from it. kips, exosphere, warmboot and mesophere. |\n| fss0={FILE path}       | Same as above. !Deprecated! |\n| pkg3ex=1               | Enables loading of experimental content from a PKG3\u002FFSS0 storage |\n| pkg3kip1skip={KIP name} | Skips loading a kip from `pkg3`\u002F`fss0`. Allows multiple and `,` as separator. The name must exactly match the name in `PKG3`. |\n| exofatal={FILE path}   | Replaces the exosphere fatal binary for Mariko             |\n| ---------------------- | ---------------------------------------------------------- |\n| kip1patch=patchname    | Enables a kip1 patch. Allows multiple and `,` as separator. If actual patch is not found, a warning will show up. |\n| emupath={FOLDER path}  | Forces emuMMC to use the selected one. (=emuMMC\u002FRAW1, =emuMMC\u002FSD00, etc). emuMMC must be created by hekate because it uses the raw_based\u002Ffile_based files. |\n| emummcforce=1          | Forces the use of emuMMC. If emummc.ini is disabled or not found, then it causes an error. |\n| emummc_force_disable=1 | Disables emuMMC, if it's enabled.                           |\n| stock=1                | OFW via hekate bootloader. Disables unneeded kernel patching and CFW kips when running stock. `If emuMMC is enabled, emummc_force_disable=1` is required. emuMMC is not supported on stock. If additional KIPs are needed other than OFW's, you can define them with `kip1` key. No kip should be used that relies on Atmosphère patching, because it will hang. If `NOGC` is needed, use `kip1patch=nogc`. |\n| fullsvcperm=1          | Disables SVC verification (full services permission). Doesn't work with Mesosphere as kernel. |\n| debugmode=1            | Enables Debug mode. Obsolete when used with exosphere as secmon. |\n| kernelprocid=1         | Enables stock kernel process id send\u002Frecv patching. Not needed when `pkg3`\u002F`fss0` is used. |\n| ---------------------- | ---------------------------------------------------------- |\n| payload={FILE path}    | Payload launching. Tools, Android\u002FLinux, CFW bootloaders, etc. Any key above when used with that, doesn't get into account. |\n| ---------------------- | ---------------------------------------------------------- |\n| l4t=1                  | L4T Linux\u002FAndroid native launching.                        |\n| boot_prefixes={FOLDER path} | L4T bootstack directory.                              |\n| ram_oc=0               | L4T RAM Overclocking. Check README_CONFIG.txt for more info. |\n| ram_oc_vdd2=1100       | L4T RAM VDD2 Voltage. Set VDD2 (T210B01) or VDD2\u002FVDDQ (T210) voltage. 1050-1175. |\n| ram_oc_vddq=600        | L4T RAM VDDQ Voltage. Set VDDQ (T210B01). 550-650.         |\n| uart_port=0            | Enables logging on serial port for L4T uboot\u002Fkernel.       |\n| sld_type=0x31444C53    | Controls the type of seamless display support. 0x0: Disable, 0x31444C53: L4T seamless display. |\n| Additional keys        | Each distro supports more keys. Check README_CONFIG.txt  for more info. |\n| ---------------------- | ---------------------------------------------------------- |\n| bootwait=3             | Overrides global bootwait from `[config]`.                 |\n| id=IDNAME              | Identifies boot entry for forced boot via id. Max 7 chars. |\n| logopath={FILE path}   | If it exists, it will load the specified bitmap. Otherwise `bootloader\u002Fbootlogo.bmp` will be used if exists |\n| icon={FILE path}       | Force Nyx to use the icon defined here. If this is not found, it will check for a bmp named as the boot entry ([Test 2] -> `bootloader\u002Fres\u002FTest 2.bmp`). Otherwise defaults will be used. |\n\n\n**Note1**: When using the wildcard (`\u002F*`) with `kip1` you can still use the normal `kip1` after that to load extra single kips.\n\n**Note2**: When using PKG3\u002FFSS0 it parses exosphere, warmboot and all core kips. You can override the first 2 by using `secmon`\u002F`warmboot` after defining `pkg3`\u002F`fss0`.\nYou can define `kip1` to load an extra kip or many via the wildcard (`\u002F*`) usage.\n\n**Warning**: Careful when you override *pkg3\u002Ffss core* kips with `kip1`.\nThat's in case the kips are incompatible between them. If compatible, you can override `pkg3`\u002F`fss0` kips with no issues (useful for testing with intermediate kip changes). In such cases, the `kip1` line must be **after** `pkg3`\u002F`fss0` line.\n\n\n### Boot entry key\u002Fvalue combinations for Exosphère\n\nThe following can be paired together with a HOS boot entry:\n\n| Config option          | Description                                                |\n| ---------------------- | ---------------------------------------------------------- |\n| nouserexceptions=1     | Disables usermode exception handlers when paired with Exosphère. |\n| userpmu=1              | Enables user access to PMU when paired with Exosphère.     |\n| cal0blank=1            | Overrides Exosphère config `blank_prodinfo_{sys\u002Femu}mmc`. If that key doesn't exist, `exosphere.ini` will be used. |\n| cal0writesys=1         | Overrides Exosphère config `allow_writing_to_cal_sysmmc`. If that key doesn't exist, `exosphere.ini` will be used. |\n| usb3force=1            | Overrides system settings mitm config `usb30_force_enabled`. If that key doesn't exist, `system_settings.ini` will be used. |\n| memmode=1              | Enables boot config memory mode for retail units. By default, max ram is limited to 4GB. Enabling this will automatically choose size. |\n\n\n**Note**: `cal0blank`, `cal0writesys`, `usb3force`, as stated override the `exosphere.ini` or `system_settings.ini`. 0: Disable, 1: Enable, Key Missing: Use original value.\n\n\n**Note2**: `blank_prodinfo_{sys\u002Femu}mmc`, `allow_writing_to_cal_sysmmc` and `usb30_force_enabled` in `exosphere.ini` and `system_settings.ini` respectively, are the only atmosphere config keys that can affect hekate booting configuration externally, **if** the equivalent keys in hekate config are missing.\n\n\n## Payload storage\n\nhekate has a boot storage in the binary that helps it configure it outside of BPMP environment:\n\n| Offset \u002F Name           | Description                                                       |\n| ----------------------- | ----------------------------------------------------------------- |\n| '0x94' boot_cfg         | bit0: `Force AutoBoot`, bit1: `Show launch log`, bit2: `Boot from ID`, bit3: `Boot to emuMMC`. |\n| '0x95' autoboot         | If `Force AutoBoot`, 0: Force go to menu, else boot that entry.   |\n| '0x96' autoboot_list    | If `Force AutoBoot` and `autoboot` then it boots from ini folder. |\n| '0x97' extra_cfg        | When menu is forced: bit5: `Run UMS`.                             |\n| '0x98' xt_str[128]      | Depends on the set cfg bits.                                      |\n| '0x98' ums[1]           | When `Run UMS` is set, it will launch the selected UMS. 0: SD, 1\u002F2\u002F3: eMMC BOOT0\u002FBOOT1\u002FGPP, 4\u002F5\u002F6: emuMMC BOOT0\u002FBOOT1\u002FGPP,  |\n| '0x98' id[8]            | When `Boot from ID` is set, it will search all inis automatically and find the boot entry with that id and boot it. Must be NULL terminated. |\n| '0xA0' emummc_path[120] | When `Boot to emuMMC` is set, it will override the current emuMMC (boot entry or emummc.ini). Must be NULL terminated. |\n\n\n## Nyx Configuration keys\u002Fvalues (nyx.ini)\n\nUse `Nyx Settings` in Nyx to edit the following configuration:\n\n| Config option      | Description                                                |\n| ------------------ | ---------------------------------------------------------- |\n| themebg=2d2d2d     | Sets Nyx background color in HEX. 0x0B0B0B to 0xC7C7C7.    |\n| themecolor=167     | Sets Nyx color of text highlights.                         |\n| entries5col=0      | 1: Sets Launch entry columns from 4 to 5 per line. For a total of 10 entries. |\n| timeoffset=0       | Sets time offset in HEX. Must be in epoch format           |\n| timedst=1          | Enables automatic daylight saving hour adjustment          |\n| homescreen=0       | Sets home screen. 0: Home menu, 1: All configs (merges Launch and More configs), 2: Launch, 3: More Configs. |\n| verification=1     | 0: Disable Backup\u002FRestore verification, 1: Sparse (block based, fast and mostly reliable), 2: Full (sha256 based, slow and 100% reliable). |\n| ------------------ | ----- *The following can be edited via nyx.ini only* ----- |\n| umsemmcrw=0        | 1: eMMC\u002FemuMMC UMS will be mounted as writable by default. |\n| jcdisable=0        | 1: Disables Joycon driver completely.                      |\n| jcforceright=0     | 1: Forces right joycon to be used as main mouse control.   |\n| bpmpclock=1        | 0: Auto, 1: 589 MHz, 2: 576 MHz, 3: 563 MHz, 4: 544 MHz, 5: 408 MHz. Use 2 to 5 if Nyx hangs or some functions like UMS\u002FBackup Verification fail. |\n\n\n```\nhekate  (c) 2018,      naehrwert, st4rk.\n        (c) 2018-2026, CTCaer.\n\nNyx GUI (c) 2019-2026, CTCaer.\n\nThanks to: derrek, nedwill, plutoo, shuffle2, smea, thexyz, yellows8.\nGreetings to: fincs, hexkyz, SciresM, Shiny Quagsire, WinterMute.\n\nOpen source and free packages used:\n - Littlev Graphics Library,\n   Copyright (c) 2016-2018 Gabor Kiss-Vamosi\n - FatFs R0.13c,\n   Copyright (c) 2006-2018, ChaN\n   Copyright (c) 2018-2022, CTCaer\n - bcl-1.2.0,\n   Copyright (c) 2003-2006, Marcus Geelnard\n - blz,\n   Copyright (c) 2018, SciresM\n - elfload,\n   Copyright (c) 2014 Owen Shepherd,\n   Copyright (c) 2018 M4xw\n\n                         ___\n                      .-'   `'.\n                     \u002F         \\\n                     |         ;\n                     |         |           ___.--,\n            _.._     |0) = (0) |    _.---'`__.-( (_.\n     __.--'`_.. '.__.\\    '--. \\_.-' ,.--'`     `\"\"`\n    ( ,.--'`   ',__ \u002F.\u002F;   ;, '.__.'`    __\n    _`) )  .---.__.' \u002F |   |\\   \\__..--\"\"  \"\"\"--.,_\n   `---' .'.''-._.-'`_.\u002F  \u002F\\ '.  \\ _.--''````'''--._`-.__.'\n         | |  .' _.-' |  |  \\  \\  '.               `----`\n          \\ \\\u002F .'     \\  \\   '. '-._)\n           \\\u002F \u002F        \\  \\    `=.__`'-.\n           \u002F \u002F\\         `) )    \u002F \u002F `\"\".`\\\n     , _.-'.'\\ \\        \u002F \u002F    ( (     \u002F \u002F\n      `--'`   ) )    .-'.'      '.'.  | (\n             (\u002F`    ( (`          ) )  '-;   [switchbrew]\n```\n","hekate 是一个基于图形界面的任天堂Switch启动加载程序。它支持触摸屏和Joycon输入，提供高度可配置的启动选项、主题背景以及多种功能，包括但不限于：自定义系统启动、Android\u002FLinux系统启动、有效载荷启动器、eMMC\u002FemuMMC备份与恢复工具、SD卡分区管理器等。该项目采用C语言编写，具有强大的硬件信息查询能力及额外工具集，如存档位修复器、触控校准等。适用于需要对Switch进行深度定制或开发的用户，特别是那些希望在Switch上运行非官方固件或其他操作系统的高级用户。","2026-06-11 03:06:25","top_language"]