App Details
Custom Nintendo Switch bootloader, firmware patcher, and more.
Check out the Github page for more information: https://github.com/CTCaer/hekate .
Features
Fully Configurable and Graphical with Touchscreen and Joycon input support
Launcher Style, Background and Color Themes
HOS (Switch OS) Bootloader -- For CFW Sys/Emu, OFW Sys and Stock Sys
Android & Linux Bootloader
Payload Launcher
eMMC/emuMMC Backup/Restore Tools
SD Card Partition Manager -- Prepares and formats SD Card for any combo of HOS (Sys/emuMMC), Android and Linux
emuMMC Creation & Manager -- Can also migrate and fix existing emuMMC
Switch Android & Linux flasher
USB Mass Storage (UMS) for SD/eMMC/emuMMC -- Converts Switch into a SD Card Reader
USB Gamepad -- Converts Switch with Joycon into a USB HID Gamepad
Hardware and Peripherals info (SoC, Fuses, RAM, Display, Touch, eMMC, SD, Battery, PSU, Charger)
Many other tools like Archive Bit Fixer, Touch Calibration, SD/eMMC Benchmark, AutoRCM enabler and more
Screenshots
Changelog
v6.4.1
Supports booting ALL current CFWs, Android, Linux and payload tools.
No more SD card removals
Latest HOS supported: 21.0.0
hekate v6.4.1 hotfix changes
-
- HOS 21.0.0 support
- Fixed NOGC patches for HOS 21.0.0- (v6.4.1 hotfix)
- TUI now has a Load Nyx option in case the SD card was inserted later or init temporarily failed.
- HOS: Sanitized MC carveouts for very old versions
- L4T: Fixed TSECB permissions for TSEC GSC
- Various fixes and improvements
emuMMC Changes
-
- HOS 21.0.0 support
As always based on https://github.com/m4xw/emuMMC
Nyx v1.8.1 changes
-
- HOS 21.0.0 support
- eMMC Partition Manager
A new functionality was added so users with > 32/64GB emuMMC can resize HOS USER partition to fit the new eMMC easily
As a side-effect, since that mirrors a SD partitioning, adding/flashing Linux and Android partitions is also supported.
All performance related tricks for SD are also applied here and to the HOS USER partition.
As always, resizing HOS USER partition re-formats it.
The functionality is hidden and can be accessed by holding Partition SD Card for 5 seconds.
- Many fixes/improvements to Partition Manager
- Partition manager's FAT fs creation was further improved to additionally optimize performance for FAT records access- on new partitioning/formatting
- A bug was fixed when partitioning SD Card with Android Dynamic scheme that would cause the emuMMC partition to be offset by -30MB in GPT table
Use Fix Hybrid MBR/GPT to apply the fix on existing setups
- Fixed an issue on resized emuMMC where it would not allow HOS to create PrFILE2 SAFE record (can't be applied retroactively)
- Fix Hybrid MBR / GPT functionality is now extended
Added removal of invalid/out-of-bounds and empty partitions from GPT
Added a fix for wrong emuMMC offset because of older bugged Android Dynamic scheme
- An issue was fixed when creating 58GB FULL emuMMC on Switch OLED where it would be possible to overwrite the last 1MB of it (no need to retroactively fix)
- An issue was fixed on resized emuMMC where it was invalidating backup GPT (no need to retroactively fix)
- Raw based resized emuMMC in partition manager now allows up to 24GB (was 12GB)
- FULL emuMMC sizes are not allowed in the partition manager anymore on upgraded and bigger- eMMCs to avoid confusion with create emuMMC (it's not allowed there already).
- Improved Package1/2 dumping
It can now dump and decrypt both main and safe (recovery) pkg firmware and also the relevant BCTs.
Additionally, the FS kip that supports both FAT32 and exFAT will now be renamed to FS_exfat.kip1, while the FAT32 only one will remain with FS.kip1
- Automatic Daylight Saving Time- support for clock was added.
Since timezones do not adjust clock on the same date/time, it's done on an averaged timely manner to avoid TZ clutter.
An issue was also fixed with calculating time/day/month.
The pop up to adjust time will show up again on first boot. Adjust it accordingly to fix the bug and to select auto dst.
- Joycon as PC HID Gamepad improved
It now allows OS to control the report rate in order for OS driver to not cause a pipe fail or congestion (it also fixes OSes where it gets disconnected)
It's also possible for Host now to manually request input reports
- SD Card Info now shows warning if vendor of SD is fake
- All battery and power management ICs in Battery Info are now checked for communication errors and if the version matches.
In case one of them can't be reached an Error! message will show up.
- Several UX issues were fixed on various backup/restore tools
Fixed verification % and bar if restored backup is smaller than partition
Bar is now orange for restoring when writing to eMMC/emuMMC.
Fixed bar color on restoring after verification
Allow verification to be skipped for all parts in partial mode (FAT32 or small card) automatically after the first skip
Corrected several warnings where it would refer to eMMC instead of emuMMC
- HW Info will now say when SBK/DK is locked and can't be read, instead of showing FF.
- SDMMC errors now update automatically after running SD benchmark to avoid reentering SD Card Info to check them
- bpmpclock is now extended from 3 to 5 modes. 4 being the slowest boost and 5 being the stock clock.
- Various fixes and improvements
BDK changes
-
- DIRLIST: dirlist function was revamped and it now uses flags for options that also allow ASCII/Aa-Zz ordering selection.
- INI: Restored ASCII ordering for ini_parse when reading .ini files
- SMMU: Ability to disable smmu was added
- USB: Removed unused endpoints from descriptors and adjusted driver to not expect them
- USB: HID: Idle rate support was added for HID gadgets so badly coded OS drivers do not cause a pipe fail
- USB: HID: Get report support was added in case host wants to pull a report manually
- RAMDISK: Size was extended 1280 MB via reordering memory mapping
- FatFS: mkfs was improved further in order to optimize filesystem performance even more
- FatFS: PrFILE2: Fixed an issue on mkfs that would not allow PrFILE2 to create a SAFE record
- RTC: Fixed an off-by-one calculation for Month that affects also day and time because of conversion calculations.
- RTC: Added DST support
- PMC: pmc_enable_partition was renamed to pmc_domain_pwrgate_set
- FUSE: Added a fuse sense function
- HWINIT: Fix RAM_SVOP_PDP set for good
- HWINIT: Refactored T210 bootloader MBIST WAR
- Tegra: Added BIT/BCT headers for T210 and T210B01
- Minerva: Updated to v1.5
- Various fixes and improvements
FAQ
-
Click to expand FAQ notes
- Which Linux/Android distributions are supported in Partition Manager?
For L4T Linux you can use the official Ubuntu Bionic 3.4.0 and newer or any other supported distro.
For android you can get Android 10/11 (legacy) or 13/14 (dynamic) or newer.
- I don't care about emuMMC/Linux/Android. Can the Part manager be used for something else?
Yes. You can still reformat your SD card to a single FAT32 partition.
You can even use it when you have exFAT and you want to format to FAT32.
It is also suggested to format your sd card via hekate. That's because it prepares it for performance. something that many partitioning tools neglect.
Notes
-
Check readme.md: ./README.md for more.
NOTE:
For maximum performance of UMS in Windows, you need to run nyx_usb_max_rate__run_only_once_per_windows_pc.reg, only once per PC you have.
It only affects hekate's usb device. You can also view that file with text editor and see what it does. Linux/Mac OS users do not need that.
How to update:
- Drag n drop bootloader folder into sd card root and hit merge/replace.
No need to delete that folder first, especially if you want your configs and payloads.
- You can choose to update your RCM injection device or PC with the new hekate_ctcaer_x.x.x.bin or not.
In any case, bootloader/update.bin, will be checked and if newer it will get loaded.
update.bin is hekate and it is already copied with the bootloader folder drag n drop update process.
Download:
v6.4.0
Supports booting ALL current CFWs, Android, Linux and payload tools.
No more SD card removals
Latest HOS supported: 21.0.0
hekate v6.4.0 changes
-
- HOS 21.0.0 support
- TUI now has a Load Nyx option in case the SD card was inserted later or init temporarily failed.
- HOS: Sanitized MC carveouts for very old versions
- L4T: Fixed TSECB permissions for TSEC GSC
- Various fixes and improvements
emuMMC Changes
-
- HOS 21.0.0 support
As always based on https://github.com/m4xw/emuMMC
Nyx v1.8.0 changes
-
- HOS 21.0.0 support
- eMMC Partition Manager
A new functionality was added so users with > 32/64GB emuMMC can resize HOS USER partition to fit the new eMMC easily
As a side-effect, since that mirrors a SD partitioning, adding/flashing Linux and Android partitions is also supported.
All performance related tricks for SD are also applied here and to the HOS USER partition.
As always, resizing HOS USER partition re-formats it.
The functionality is hidden and can be accessed by holding Partition SD Card for 5 seconds.
- Many fixes/improvements to Partition Manager
- Partition manager's FAT fs creation was further improved to additionally optimize performance for FAT records access- on new partitioning/formatting
- A bug was fixed when partitioning SD Card with Android Dynamic scheme that would cause the emuMMC partition to be offset by -30MB in GPT table
Use Fix Hybrid MBR/GPT to apply the fix on existing setups
- Fixed an issue on resized emuMMC where it would not allow HOS to create PrFILE2 SAFE record (can't be applied retroactively)
- Fix Hybrid MBR / GPT functionality is now extended
Added removal of invalid/out-of-bounds and empty partitions from GPT
Added a fix for wrong emuMMC offset because of older bugged Android Dynamic scheme
- An issue was fixed when creating 58GB FULL emuMMC on Switch OLED where it would be possible to overwrite the last 1MB of it (no need to retroactively fix)
- An issue was fixed on resized emuMMC where it was invalidating backup GPT (no need to retroactively fix)
- Raw based resized emuMMC in partition manager now allows up to 24GB (was 12GB)
- FULL emuMMC sizes are not allowed in the partition manager anymore on upgraded and bigger- eMMCs to avoid confusion with create emuMMC (it's not allowed there already).
- Improved Package1/2 dumping
It can now dump and decrypt both main and safe (recovery) pkg firmware and also the relevant BCTs.
Additionally, the FS kip that supports both FAT32 and exFAT will now be renamed to FS_exfat.kip1, while the FAT32 only one will remain with FS.kip1
- Automatic Daylight Saving Time- support for clock was added.
Since timezones do not adjust clock on the same date/time, it's done on an averaged timely manner to avoid TZ clutter.
An issue was also fixed with calculating time/day/month.
The pop up to adjust time will show up again on first boot. Adjust it accordingly to fix the bug and to select auto dst.
- Joycon as PC HID Gamepad improved
It now allows OS to control the report rate in order for OS driver to not cause a pipe fail or congestion
It's also possible for Host now to manually request input reports
- SD Card Info now shows warning if vendor of SD is fake
- All battery and power management ICs in Battery Info are now checked for communication errors and if the version matches.
In case one of them can't be reached an Error! message will show up.
- Several UX issues were fixed on various backup/restore tools
Fixed verification % and bar if restored backup is smaller than partition
Bar is now orange for restoring when writing to eMMC/emuMMC.
Fixed bar color on restoring after verification
Allow verification to be skipped for all parts in partial mode (FAT32 or small card) automatically after the first skip
Corrected several warnings where it would refer to eMMC instead of emuMMC
- HW Info will now say when SBK/DK is locked and can't be read, instead of showing FF.
- SDMMC errors now update automatically after running SD benchmark to avoid reentering SD Card Info to check them
- bpmpclock is now extended from 3 to 5 modes. 4 being the slowest boost and 5 being the stock clock.
- Various fixes and improvements
BDK changes
-
- DIRLIST: dirlist function was revamped and it now uses flags for options that also allow ASCII/Aa-Zz ordering selection.
- INI: Restored ASCII ordering for ini_parse when reading .ini files
- SMMU: Ability to disable smmu was added
- USB: Removed unused endpoints from descriptors and adjusted driver to not expect them
- USB: HID: Idle rate support was added for HID gadgets so badly coded OS drivers do not cause a pipe fail
- USB: HID: Get report support was added in case host wants to pull a report manually
- RAMDISK: Size was extended 1280 MB via reordering memory mapping
- FatFS: mkfs was improved further in order to optimize filesystem performance even more
- FatFS: PrFILE2: Fixed an issue on mkfs that would not allow PrFILE2 to create a SAFE record
- RTC: Fixed an off-by-one calculation for Month that affects also day and time because of conversion calculations.
- RTC: Added DST support
- PMC: pmc_enable_partition was renamed to pmc_domain_pwrgate_set
- FUSE: Added a fuse sense function
- HWINIT: Fix RAM_SVOP_PDP set for good
- HWINIT: Refactored T210 bootloader MBIST WAR
- Tegra: Added BIT/BCT headers for T210 and T210B01
- Minerva: Updated to v1.5
- Various fixes and improvements
FAQ
-
Click to expand FAQ notes
- Which Linux/Android distributions are supported in Partition Manager?
For L4T Linux you can use the official Ubuntu Bionic 3.4.0 and newer or any other supported distro.
For android you can get Android 10/11 (legacy) or 13/14 (dynamic) or newer.
- I don't care about emuMMC/Linux/Android. Can the Part manager be used for something else?
Yes. You can still reformat your SD card to a single FAT32 partition.
You can even use it when you have exFAT and you want to format to FAT32.
It is also suggested to format your sd card via hekate. That's because it prepares it for performance. something that many partitioning tools neglect.
Notes
-
Check readme.md: ./README.md for more.
NOTE:
For maximum performance of UMS in Windows, you need to run nyx_usb_max_rate__run_only_once_per_windows_pc.reg, only once per PC you have.
It only affects hekate's usb device. You can also view that file with text editor and see what it does. Linux/Mac OS users do not need that.
How to update:
- Drag n drop bootloader folder into sd card root and hit merge/replace.
No need to delete that folder first, especially if you want your configs and payloads.
- You can choose to update your RCM injection device or PC with the new hekate_ctcaer_x.x.x.bin or not.
In any case, bootloader/update.bin, will be checked and if newer it will get loaded.
update.bin is hekate and it is already copied with the bootloader folder drag n drop update process.
Download:
6.3.1
HOS 20.1.0 support
6.3.0
HOS 20.0.0 support
Config: Added pkg3 key support that replaces fss0 with the same exact functionality
fss0 will still work for compatibility reasons but it's now deprecated.
At some point fss0 will become obsolete, so make sure you update your configs to use pkg3 instead.
The templates were updated to use that.
Config: Added pkg3kip1skip key support. Only for advanced users, read README.
Config: atmosphere key is now renamed to kernelprocid to match what it does
Only advanced users that do not use fss0/pkg3 are affected by this
Config: fss0experimental key was renamed to pkg3ex
Fixed parsing of system_settings.ini for usb3 enable. Thanks @new-waifu for reminding that.
Fixed an issue that could have caused black screen on stock booting in some rare cases (kernelldr related)
L4T: Updated SC7exit firmware to latest
L4T: Added sld_type key that allows you to disable seamless display
Or use the deprecated coreboot method
Various fixes and improvements
emuMMC Changes
HOS 20.0.0 support
As always based on https://github.com/m4xw/emuMMC
Nyx v1.7.0 changes
HOS 20.0.0 support
SD/eMMC Benchmark now shows 95th and 5th percentile industry standard IOPS info. It also now uses in-spec A2 test sizes.
Additionally, the window was made more compact so the info underneath it is still visible for sharing screenshots.
It's preferable to compare between sd cards on the same updated benchmark, because of the changes.
The 95% best accesses is generally your expected performance.
The 5% worst accesses shows degraded nand parts or copies from SLC/MLC to TLC/QLC nands, big cache flushes, bad controller management, fw bugs, etc.
SD info now checks if card's A2 support is proper or not. White: full support, Yellow: needs quirks, Red: broken.
SD info will now immediately show SDMMC errors before calculating free space in FAT partition
Fixed an issue where emuMMC could fail to be found for backing up or restoring
Fixed an issue where emuMMC could fail to be backed up
RAM real capacity detection is now more robust
Made Nyx a bit more faster.
Fixed an issue where reserved Android partition size could be calculated wrong on the HOS leftover slider
Fixed an issue where a window could not be closed with B button on Joy-Con
Nyx reload will now check if nyx.bin still exists and not reload, so user can fix that with UMS again
Various fixes and improvements
BDK changes
DIRLIST: It now uses alphabetical ordering instead of ASCII based
SDMMC: Do not allow out of bound accesses since they need a power cycle to clear the error
SDMMC: Add performance extension register parsing support
UITLS: qsort compare functions added for int, char and char case insensitive.
SE: Support 0 sized SHA256 hashing
SE and DISPLAY drivers do not use heap anymore
Various fixes and improvements