Tesla - The Nintendo Switch Overlay Menu

fhwyjbd.png

Hey all.
I'd like to introduce to you, Tesla: My answer to the growing need for proper ingame front ends for sysmodules.


What is this?

  • Tesla consists of three individual parts. nx-ovlloader, the Tesla menu and libtesla.
    • nx-ovlloader is basically nx-hbloader ported to run as a sysmodule. It runs in the background and loads overlay NROs (.ovl files) given to it.
    • Tesla Menu is the equivalent to the hbmenu. It's the initial thing loaded by nx-ovlloader and acts as a hub for you to select all other overlays.
    • libtesla is where it becomes interesting for developers. It's an easy to use library that handles layer creation, UI drawing and all the overlay UX. It makes it very easy to create a new overlay for anything
  • A frontend for sysmodules that before required either a homebrew or a config file to change settings or used sounds or the LED to give the user feedback.

What is this not?

  • A tool that lets you create overlays that are always visible. Overlays can get unloaded way to easily for this.
  • An excuse to port absolutely everything to a overlay. Nobody's going to need a title manager overlay. If you consider making a overlay, keep it simple. You don't have a whole lot of memory to work with.


How do I use this?

First of all, download the latest release of nx-ovlloader and the Tesla Menu from the GitHub Release page and extract it onto your SD card.
After a reboot, hold down L and DPad Down and push on the right joy stick to bring up Tesla at any time. Navigation works as you imagine it.
Similar to normal homebrews, you place your .ovl files in the /switch/.overlays folder on your SD card.


Screenshots

W8yN2M6.jpg

fdfWAXw.jpg


Notice


Make sure to use the latest Atmosphere release when trying this as older versions ( as the one SX OS uses too ) probably won't have enough memory available for this to run. Overlays do take a lot of space so nx-ovlloader reserves 6MB. 2MB for framebuffers and around 4MB for overlay developers to use in their overlays.


GitHub

nx-ovlloader: https://github.com/WerWolv/nx-ovlloader
Tesla Menu: https://github.com/WerWolv/Tesla-Menu


For Developers

libtesla: https://github.com/WerWolv/libtesla
Tesla build template: https://github.com/WerWolv/Tesla-Template


Download

nx-ovlloader: https://github.com/WerWolv/nx-ovlloader/releases/latest
Tesla-Menu: https://github.com/WerWolv/Tesla-Menu/releases/latest
EdiZon Overlay: https://download.werwolv.net/EdiZonOverlay.zip ( As a little preview for what this is capable of and what EdiZon 4.0.0 will have even more of soon :) )

Special thank especially to averne without him, this would not have been possible!


Obligatory Donation links

GitHub Sponsors https://github.com/sponsors/WerWolv
PayPal https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=KP7XRJAND9KWU&source=url

Patreon https://www.patreon.com/werwolv


Thanks a lot and have fun using and extending it :)
 
Last edited by WerWolv,
hi, I'm experiencing various crashes and every time it tells me that the error is caused by a folder in atmosphere/contents, and specifically "420000000007E51A" which is none other than the nx-ovlloader. I've read around and I know there are compatibility issues with the latest FW, does anyone know a way to fix this?
 
hi, I'm experiencing various crashes and every time it tells me that the error is caused by a folder in atmosphere/contents, and specifically "420000000007E51A" which is none other than the nx-ovlloader. I've read around and I know there are compatibility issues with the latest FW, does anyone know a way to fix this?
1 post above yours
 
i do it , i use his atmosphere fork , but if i open tesla menu and select amiibo or other, only edizon work, give me the error.
It has nothing to do with atmosphere. It’s libnx. You can recompile Atmosphere with the new libnx, but you’ll also need to create your own loader sigpatches using Mr.Dude’s tool.

Anyway, for newbs, compiling libnx isn’t enough. You must also install it. If you’re compiling on a system that requires sudo, use sudo -E make install.
 
you have to recompile ovlloader with latest libnx with PR from @masagrator and all overlays need to be recompiled too.

I was able to avoid crashes now.

you can git clone https://github.com/ELY3M/libnx
then cd libnx and make and make install
just compiled all my overlays with this libnx and the latest libtesla, so far all woking fine.
 
I am on 16.0.1 and it is still working. must make sure you fully exit the overlay menu by pressing B few times.
 
@impeeza , if you don't mind , would you like share your compiled all overlays with lastest libnx and the latest libtesla ?

Thank you

Can you upload your recompiled overlays ?

This are a set of homebrew build with latest Libnx from SwitchBrew (https://github.com/Atmosphere-NX/libnx) branch 4.8.0 (2024_11_24), using MinGW on Windows and Ubuntu:

For the overlays to work, you need the

Sysmodule and the overlay menu.



TESLA NX OvlLoader SYSMODULE (Enable Overlays)
File:
nx-ovlloader-zdm-v1.0.7-2024_10_20-601e9e2d-LibNX-v4.9.0.zip
Repo: https://github.com/WerWolv/nx-ovlloader (Original)
Repo: https://github.com/zdm65477730/nx-ovlloader (The Most Updated)


Tesla Menu (Overlay Menu)
File:
ovlmenu_1_2_3-6b86e3d3_LibTesla-v1.3.3-f766e9b6_LibNX-v4.9.0.zip
Repo: https://github.com/WerWolv/Tesla-Menu
Please use the latest release from Werewolv https://github.com/WerWolv/Tesla-Menu/releases/
ZDM Fork, actively updated.
File:
Tesla-Menu_1_2_3-7399eb35_LibTesla-v1.3.3-140a268(ZDM)_LibNX-v4.9.0.zip
Repo: https://github.com/zdm65477730/Tesla-Menu/


Ultra Hand
An alternative to Tesla Menu has raise in hands of the great @ppkantorski , is called UltraHand Overlay, has been tested by the scene and is becoming the defacto standard, is in active development and with a lot of additions and new functions; the thread https://gbatemp.net/threads/ultrahand-overlay-the-fully-craft-able-overlay-executor.633560/ have all the information.
UltraHand have also a new version of TESLA NX OvlLoader SYSMODULE called UltraHand Overlay Menu, the configuration of the UltrHand SysModule is stored on sdmc:/config/ultrahand/config.ini, the default key combo for show Overlay Menu is ZL+ZR+DDOWN
UltraHand OvlLoaders Sysmodule:
File:
nx-ovlloader+_2025_05_023-1.0.9-c4fbd3d-LibNX-v4.9.0.zip
Repo: https://github.com/ppkantorski/nx-ovlloader
UltraHand Overlay Menu:
File:
Ultrahand-Overlay_1.8.3-LibNX-v4.9.0.zip
Repo: https://github.com/ppkantorski/Ultrahand-Overlay/releases/




OVERLAYS:



InfoNX
File:
InfoNX-ovl_v1.0.1-3d4c11df_LibTesla-v1.3.3-f766e9b6_LibNX-v4.9.0_Source.zip
Repo: https://github.com/renA21/InfoNX/

DNS-MITM_Manager
File:
DNS-MITM_Manager_0_2_0-0475e9c7_LibNX-v4.9.0_LibTesla-v1.3.3-f766e9b6.zip
Repo: https://github.com/znxDomain/DNS-MITM_Manager

EdizonOverlay
File:
Use the latest release on the official repo today (2024 10 20, @proferabg released an updated version for FW 19.x.x, thanks a lot) Including improvement of Temp display and latest LibNX.
Repo: https://github.com/proferabg/EdiZon-Overlay

Emuiibo
You need the most recent Emuiibo release from: https://github.com/XorTroll/emuiibo/releases
For the latest build, it can be get from action link on GitHub: https://github.com/XorTroll/emuiibo/actions


ldn_mitm (Full) UPGRADED TO SUPPORT FW 19+ AND 20+
File:
https://github.com/DefenderOfHyrule/ldn_mitm/releases
Repo: https://github.com/DefenderOfHyrule/ldn_mitm/

OvlSysmodules
File:
ovlSysmodules_1_3_1-9b114b3c_LibNX-v4.9.0_LibTesla-v1.3.3-f766e9b6.zip
Repo: https://github.com/WerWolv/ovl-sysmodules

QuickNTP
File:
QuickNTP-1.2.8-1_2024_10_20-e64a63cc_LibNX-v4.9.0_LibTesla-v1.3.3-f766e9b6.zip
Repo: https://github.com/nedex/QuickNTP

ShareNX-Overlay
File:
ShareNX-Overlay-v1.2.0-6faa8b8_LibNX-v4.9.0_LibTesla-v1.3.3-f766e9b6.zip
Repo: https://github.com/HookedBehemoth/ShareNX-Overlay

Status-Monitor-Overlay
File:
Status-Monitor-Overlay_1_1_8-07a4f9e-LibNX-v4.9.0-20_support_LibTesla-v1.0.1-152-aef295c(Masagrator)_Atmosphere-libs-989fb7b_source.zip
Repo: https://github.com/masagrator/Status-Monitor-Overlay/releases (Also you can use the latest release on repo)

Studious-Pancake (full) With Mariko support
File:
studious-pancake-1.0.0-cc9c9ab8_LibNX-v4.9.0_LibTesla-v1.3.3-f766e9b6.zip
Repo: https://github.com/btc08gh/studious-pancake, seems it doesn-t work at all, I have not a Mariko Switch, so can not test beyond to build, and as asked by HookedBehemoth is not for been shared on GBATemp https://github.com/HookedBehemoth/studious-pancake/issues/3#issuecomment-1541892855 so removing it. Download latest version from https://github.com/HookedBehemoth/studious-pancake/releases

Sys-CLK not working on FW 18 yet
File:
sys-clk-2.0.1-c86ce66_LibNX-v4.8.0_LibTesla-v1.3.3-f766e9b6.zip
Repo: https://github.com/retronx-team/sys-clk/

Hope this help so many of us.

If you like to build this overlay yourself the steps are on the tutorial:

https://gbatemp.net/threads/how-to-build-overlays-from-code.659331/




-- Edited May 16th 2025, update most of the overlays and sysmodules to latest LibNX hence Support FW 20.0.1
 

Attachments

Last edited by impeeza,
Thanks for the upload, would have recompiled it myself, but there seems to be an issue in the devkitpro install on my setup.


Edit : can confirm it solved all problems. No more crashes.

That's is thanks to @masagrator and @ELY_M they are the mages I just compiled the sources from they.

By the way that's why I love MSYS if something gey sketchy you only delete a folder and reinstall (pacman) all packages you use and no problem. No inter software dependencies no system variables no duplicated libraries to catch etc.
 
  • Like
Reactions: deejay87
  • Like
Reactions: [Truth]
  • Love
Reactions: impeeza
Last edited by josete2k,

Site & Scene News

Popular threads in this forum