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: http://werwolv.net/downloads/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,

trtibak

New Member
Newbie
Joined
May 18, 2020
Messages
4
Trophies
0
Age
33
XP
35
Country
Mexico
Hi there @WerWolv thanks for these amazing projects you're working on.
I'm currently trying to create a tesla overlay, but I find it really hard from the learning curve of C++ to all the new stack required just to compile.
One thing that could help me a lot is finding a way to debug my overlay, even nxlink may do the trick, but I find no way to integrate it to the overlay so it servers the printf to my computer.

Do you have any advice for me? I really want to keep going, but going blind this way is a pain.
 

WerWolv

EdiZon and Tesla Developer
OP
Developer
Joined
Mar 30, 2018
Messages
252
Trophies
0
Age
25
XP
1,864
Country
Switzerland
Hi there @WerWolv thanks for these amazing projects you're working on.
I'm currently trying to create a tesla overlay, but I find it really hard from the learning curve of C++ to all the new stack required just to compile.
One thing that could help me a lot is finding a way to debug my overlay, even nxlink may do the trick, but I find no way to integrate it to the overlay so it servers the printf to my computer.

Do you have any advice for me? I really want to keep going, but going blind this way is a pain.

I debugged pretty much all of my code by either crashing the console with specific values using for example `fatalThrow(0xDEADBEEF);` or once I got the UI up and running, I used the drawString function of the renderer I wrote. I suggest you to do the second thing.
 
  • Like
Reactions: trtibak

Jayammi

Well-Known Member
Newcomer
Joined
May 2, 2017
Messages
75
Trophies
0
Age
28
XP
955
Country
with the new sx os update this should now work, but can someone please tell me where to direct the files to because the menu isnt showing up when i press L + down + right stick
 

jnl1

Well-Known Member
Member
Joined
Jan 12, 2020
Messages
502
Trophies
0
Age
36
XP
1,619
Country
Germany
with the new sx os update this should now work, but can someone please tell me where to direct the files to because the menu isnt showing up when i press L + down + right stick
Tesla Menu (file is called ovlmenu.ovl) into switch\.overlays
Ovlloader (folder is called 420000000007E51A) into sxos/titles
But as it is stated above, it only works up to sxos 2.9.5 beta. as far as i know not with 3.0.0
 
  • Like
Reactions: sergux and Jayammi

Jayammi

Well-Known Member
Newcomer
Joined
May 2, 2017
Messages
75
Trophies
0
Age
28
XP
955
Country
Tesla Menu (file is called ovlmenu.ovl) into switch\.overlays
Ovlloader (folder is called 420000000007E51A) into sxos/titles
But as it is stated above, it only works up to sxos 2.9.5 beta. as far as i know not with 3.0.0
3.0.1 was released today apparently fixing extensions like tesla
 
  • Like
Reactions: jnl1

Spider_Man

Well-Known Member
Member
Joined
May 28, 2015
Messages
3,924
Trophies
0
Age
38
XP
5,165
Country
United States
im trying to use this and cant seem to get it working, if i copy the nx-ovlloader 420000000007E51A folder into atmos, i get error screen when trying to boot atmos (after the nintendo switch logo)
 

trtibak

New Member
Newbie
Joined
May 18, 2020
Messages
4
Trophies
0
Age
33
XP
35
Country
Mexico
I debugged pretty much all of my code by either crashing the console with specific values using for example `fatalThrow(0xDEADBEEF);` or once I got the UI up and running, I used the drawString function of the renderer I wrote. I suggest you to do the second thing.

I was trying the second one in a more comlpex way, but your suggestion does make sense. Thanks for your quick reply :)
 

Reecey

Mario 64 (favorite game of all time)
Member
Joined
Mar 7, 2010
Messages
5,864
Trophies
2
Location
At Home :)
XP
4,454
Country
with the new sx os update this should now work, but can someone please tell me where to direct the files to because the menu isnt showing up when i press L + down + right stick
It works all ok on sxos beta 3.0.2 make sure you change "Atmosphere" to sxos and "contents" to titles then boot up and press L, Down Arrow and then push down on the right joy stick it should appear.
 
  • Like
Reactions: sergux

Viri

Well-Known Member
Member
Joined
Sep 13, 2009
Messages
4,226
Trophies
2
XP
6,819
Country
United States
I installed Tesla yesterday for the first time, worked just fine. The moment I updated Atmosphere, it began crashing right on the home screen. Once I removed Tesla, my Atmosphere stopped crashing.

Nevermind, I fixed it. I just reinstalled everything completely.
 
Last edited by Viri,

k3lv1n

Active Member
Newcomer
Joined
Feb 8, 2020
Messages
25
Trophies
0
XP
155
Country
Singapore
on OFW 10.0.3, AMS 0.13.0, Hekate 5.3.0. Titles with cheat codes will stuck at load screen (infinite loading until force power off), With Tesla removed, titles launched normally, can you update it? TQ. edited: works fine now
 
Last edited by k3lv1n,
  • Like
Reactions: Sookie69

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: @salazarcosplay, gta v is down since november 2021