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,
First time using Tesla, after i select an overlay i cant go back and press the buttons to switch to another one? because its not working for me

only way to disable the overlays is to reboot my switch...
 
Currently running in to the problem where the overlay never pops up. In fact the tesla config.ini is never written letting me believe it is never loaded into memory to begin with. This seems to point to a nx-ovlloader issue. The infamous folder 420000000007E51A that so many had to delete to boot. It no longer crashes when you have the updated overlays but now I am thinking it isn't crashing because it isn't running. Unfortunately what makes atmosphere run this folder is left up to magic because the entire install is drag an dropping this folder... well what happens when that doesn't work?
This sysmodule loads Tesla overlay. The menu overlay is just a overlay like any other overlay. If you want you can rename any overlay to have the file name and it will be loaded by this sysmodule
Post automatically merged:

Care to explain? All of my CFW run on sysnand and never set emunand at all. I use payload that SciresM provided with latest atmosphere.

I use CFW for cheating (Edizon), JKSV (save backup), tesla overlay to load the cheats and English translation patch via romfs, that it.

All games that I bought legally and never play pirated games nor install CIA.
When you say edizon did you mean the original? Many people are lazy to type it in full when they mean edizon overlay or edizon se. They almost always forget to mention if it is a fork and never state the version.

It’s been known since a very long time that if you have Tesla and you run demanding game + applet there will be memory problem and the crash may not be immediate

If you have ever ran edizon ( either original or se) have tesla loaded ( having the sysmodule and the menu overlay ) with some demanding game ( there are a few, yours is one of them ) your system will crash when the straw that breaks the camel’s back comes ( can appear random, quite often before you quit the game but some times after )

Tesla is always on. The only way to turn it off is to terminate the sysmodule. You can do that with a sysmodule manager. SciresM said it’s not a clean removal if there is no reboot but it seems to do enough to stop the crash even if you don’t reboot. I use this method to toggle Tesla on/off. You probably can safely use edizon ( original or se ). Edizon se has a sysmodule manager that can turn off Tesla this way but run it when these demanding game isn’t running
 
Last edited by TomSwitch,
  • Like
Reactions: impeeza
When you say edizon did you mean the original? Many people are lazy to type it in full when they mean edizon overlay or edizon se. They almost always forget to mention if it is a fork and never state the version.
I use latest version of Edizon SE and version is 3.8.36.

I'm wonder if Nintendo deliberately reduce the memory available as attempt to thwart the CFW?
 
  • Like
Reactions: impeeza
I use latest version of Edizon SE and version is 3.8.36.

I'm wonder if Nintendo deliberately reduce the memory available as attempt to thwart the CFW?
If Nintendo wants to come after CFW there are probably much safer ways than to mess with HOS. If I were them I would never take that risk no matter how small some engineer may say it is.

HOS16 probably runs on Switch2 and has been for a long time. What they do is making Switch2 a better product while keeping it compatible with Switch. Should Switch start to die Switch2 is ready to take over.
Post automatically merged:

River City Girls 2 crashed the atmosphere after load the tesla overlay when game is first loading with "please wait", even if there is no cheat file in contents.

but... there is workaround - don't open the tesla overlay when game is first loading and just wait until cutscene show up, so you can open tesla overlay safely.

I use tesla overlay to get TID and BID info to determine to find a right cheat.

Edit: I’m going to do clean installation of atmosphere today.
I did some investigation, I now think teslamenu is the one you have problem with and what you did is an unusual thing that I suppose most user won't encounter and is only nice to fixed and not really worth that much effort to fix.

Here is my theory: You launch teslamenu when the game is accessing files and teslamenu runs in a loop scanning the .overlay directory, if the timing match the two will interfere with each other. BOOM teslamenu crashed.

A simple work around would be to press home then call up teslamenu. (seems to work)

Not all games pause and release resources when home is press but by and large home works like magic
 
Last edited by TomSwitch,
  • Like
Reactions: Moe87 and impeeza
Currently running in to the problem where the overlay never pops up. In fact the tesla config.ini is never written letting me believe it is never loaded into memory to begin with. This seems to point to a nx-ovlloader issue. The infamous folder 420000000007E51A that so many had to delete to boot. It no longer crashes when you have the updated overlays but now I am thinking it isn't crashing because it isn't running. Unfortunately what makes atmosphere run this folder is left up to magic because the entire install is drag an dropping this folder... well what happens when that doesn't work?
i have the same problem did you get any solution?
 
This sysmodule loads Tesla overlay. The menu overlay is just a overlay like any other overlay. If you want you can rename any overlay to have the file name and it will be loaded by this sysmodule
Yea..I now suspect the culprit is nx-ovlloader. Not only do nothing popup, but there should have been a tesla.ini created for the first time the stuff is all executed and there isn't. I humored myself and created one just to make sure the key combo was set but it effected nothing. There is no tell tale sign nx-ovlloader is loaded, as neither the tesla nore edizon overlays get loaded.
 
Yea..I now suspect the culprit is nx-ovlloader. Not only do nothing popup, but there should have been a tesla.ini created for the first time the stuff is all executed and there isn't. I humored myself and created one just to make sure the key combo was set but it effected nothing. There is no tell tale sign nx-ovlloader is loaded, as neither the tesla nore edizon overlays get loaded.
https://github.com/WerWolv/nx-ovlloader is not broken
It's as strong as ever, other than consuming a lot of memory when it loads an overlay which is since day one

Check your .overlay directory, any file that is before HOS16 won't work on HOS16. This line which can be found in tesla.hpp will crash on HOS16 "ASSERT_FATAL(plInitialize(PlServiceType_System)); "

Fixed since 23 Feb
1677999419191.png
 
Last edited by TomSwitch,
  • Like
Reactions: Moe87
For me, Tesla is not autostarting after booting, too on Atmo 1.5.0 with 16.0.0.0

You can enable it via, e.g., the Kosmos Toolbox or via EdiZon (hit L for the sysmodule loadings)
 
(banned link.. hahaha) is not broken
It's as strong as ever, other than consuming a lot of memory when it loads an overlay which is since day one

Check your .overlay directory, any file that is before HOS16 won't work on HOS16. This line which can be found in tesla.hpp will crash on HOS16 "ASSERT_FATAL(plInitialize(PlServiceType_System)); "

Fixed since 23 Feb
View attachment 357121
yea no one here is running the old stuff still. we have the updates tesla and edizon and nothing else. some are crashing while using edizon and that may be some unstableness from the quick hos16 build, but some of us are having zero response from the overlay. Nothing pops up, no tesla folder in the config folder. zip zilch and nadda.
 
  • Like
Reactions: Robru1
yea no one here is running the old stuff still. we have the updates tesla and edizon and nothing else. some are crashing while using edizon and that may be some unstableness from the quick hos16 build, but some of us are having zero response from the overlay. Nothing pops up, no tesla folder in the config folder. zip zilch and nadda.
There is no edizon update and edizon don't need an update for HOS16. My condolence to your pain, nothing I can do for you.

Do not use edizon (original or SE) when tesla is on is my only advise to any users of edizon ( has been since after HOS9 ). The memory problem is not likely to disappear on it's own and no body is doing anything about it as far as I know.
 
yea no one here is running the old stuff still. we have the updates tesla and edizon and nothing else. some are crashing while using edizon and that may be some unstableness from the quick hos16 build, but some of us are having zero response from the overlay. Nothing pops up, no tesla folder in the config folder. zip zilch and nadda.
There is no issue with Edizon SE that I use, but atmosphere crash is related to old tesla overlay, so Ely fixed it initially until proferabg updated tesla overlay to work with FW 16.0.0.
 
  • Like
Reactions: slaphappygamer
For me, Tesla is not autostarting after booting, too on Atmo 1.5.0 with 16.0.0.0

You can enable it via, e.g., the Kosmos Toolbox or via EdiZon (hit L for the sysmodule loadings)
if nothing is showing when I hit L for sysmoduals (it says non are available) where should I be looking to fix that? is there something I need to install for sysmoduals?

No idea what kosmos toolbox is but it looks super old.
 
if nothing is showing when I hit L for sysmoduals (it says non are available) where should I be looking to fix that? is there something I need to install for sysmoduals?

No idea what kosmos toolbox is but it looks super old.
this fixed my issue:
Hekate home> Tool (central up)> Arch bit (down left almost to the corner) > Fix Archive Bit
 
this fixed my issue:
Hekate home> Tool (central up)> Arch bit (down left almost to the corner) > Fix Archive Bit
You are a god send.. this worked. FYI it said it unset thousands (I have all gbatemp cheats unpacked so lotsa folders) were unset and 0 set. Apparently this is GOOD.
 
  • Like
Reactions: timbru31
Is this fixed now?
I'm searching in the three contents (Tesla, libtesla and nx-ovlloader and neither of all are updated)
 
Hope a proper update is out soon for atmosphere/tesla. with the files on the forum it works. but today it crashed on tesla ID. When I was using the menu to show/dissappear when playing crash bandicoot 4.

0x4A8 (2168-0002)
Processname ovlloader
program id 420000000007e51a
processid 00000000000082
process flags 00000133
user exception addres 0000000059c8e000
exception info
type Data abort
adress 0000078b66c000
fault adress 00000000000000000
crashed thread info
thread id 000000000000001b2

(i just guessed the amount of zero's in that report above too annoying to count lol)
 
Last edited by Chrisssj2,

Site & Scene News

Popular threads in this forum