Freebird - Switch Clock Speed Control Sysmodule

This is a sysmodule/service for Atmosphere and ReiNX that uses IPC's to communicate with its companion NRO, Freeset. This allows you to use any clock speed I've found on the Switch. The only restriction I have put in place is that you must be plugged into an official charger or docked if you are crazy enough to want to use the highest two GPU clock speeds. I am leaving it completely up to you to choose what clock speeds you want to use. Be careful.

2019070911351400-DB1426D1DFD034027CECDE9C2DD914B8.jpg

Intructions:
  • Atmosphere: Copy over the contents of the zip and reboot your system to load the module. Open Freeset and use that to send over the clock speeds you want.
  • ReiNX: Create a folder in your ReiNX folder named titles if there isn't one. Copy the titles folder from the atmosphere folder to ReiNX/titles. Open "010000000000C235" and move the boot2.flag to the same directory as the exefs.nsp file. Reboot and freebird should now be working on ReiNX.

X turns freebird's clock setting feature on and off. Remember to turn this off before putting your system to sleep. I'm working on it™, but it will cause and require you to fully shutdown and restart your Switch if accidentally left on. When on, freebird will check and set the clocks if they don't match what you choose. When turned off, your clock speeds will be reset and no longer forced.

A sends over the clock speeds shown/chosen from the menu. Up and down change the currently selected option, left and right change speed.

If I missed anything, don't be afraid to ask. I'm open to suggestions too.

I'd like to thank @taggen86, @nabelo, @mathew77, @vanraz86, and @Kirby567fan for taking the chances and testing it. Thanks guys!

Download link: https://gbatemp.net/download/freebird.35566/
 
Last edited by JK_,

pietempgba

Well-Known Member
Member
Joined
Jun 9, 2016
Messages
1,049
Trophies
0
XP
1,515
Country
United States
@_JK can you make it so there's a way to possibly maybe detect if the console is docked or not and then have configs for docked and in portable mode?
 
  • Like
Reactions: p-sam

AliciaBurrito

Well-Known Member
Newcomer
Joined
Sep 8, 2018
Messages
48
Trophies
0
XP
406
Country
United States
I'm not interested in causing another shit storm. I'm gonna leave what I really think out of this. I will make an NSP for Freeset for the next release and the wake up thing was brought up by testers. It's an option now.

Anyways, thanks @AliciaBurrito for sharing your results with ReiNX. After checking it out for myself, I will be adding instructions to the OP for it tomorrow since it's late here.

Take it easy, everyone. I'm all for sharing results, even screenshots if you want. Arguing and pointing the finger at X, Y, and Z without anything to back it up, not so much.
I'm just glad to help in any way that I can - really like this project :)

I know you're working on a more "Advanced User" sort of option outside of the planned profiles, would it be possible to perhaps allow a "Seriously this is you're own risk" option that perhaps allows you to go even farther as long as you are connected to the official charger? Eg. the stock Tegra X1 allows the CPU to go to 1.9GHz, and GPU to 1GHz. I don't think the battery would be happy with that, so likely keep it the same red option as the existing GPU option.

I'd be willing to test that on my Switch as well if you think that might be something that could be added :)
 

JK_

Well-Known Member
OP
Member
Joined
Sep 4, 2015
Messages
694
Trophies
1
XP
2,296
Country
United States
@_JK can you make it so there's a way to possibly maybe detect if the console is docked or not and then have configs for docked and in portable mode?
I'm just glad to help in any way that I can - really like this project :)

I know you're working on a more "Advanced User" sort of option outside of the planned profiles, would it be possible to perhaps allow a "Seriously this is you're own risk" option that perhaps allows you to go even farther as long as you are connected to the official charger? Eg. the stock Tegra X1 allows the CPU to go to 1.9GHz, and GPU to 1GHz. I don't think the battery would be happy with that, so likely keep it the same red option as the existing GPU option.

I'd be willing to test that on my Switch as well if you think that might be something that could be added :)
We'll see how far I'm willing to go guys. I'm only one person doing this in their free time. Free time I like to spend doing other things too. Straight up, it was just a good reason/excuse to fiddle with making a service and IPC's. Something I've wanted to do since 3DS.

Edit: Added ReiNX instructions to OP. Tell me if I messed up or they need to be clearer, haha.
 
Last edited by JK_,
  • Like
Reactions: Shibbro

Adran_Marit

Walküre's Hacker
Member
Joined
Oct 3, 2015
Messages
3,781
Trophies
1
Location
42*South
XP
4,559
Country
Australia
We'll see how far I'm willing to go guys. I'm only one person doing this in their free time. Free time I like to spend doing other things too. Straight up, it was just a good reason/excuse to fiddle with making a service and IPC's. Something I've wanted to do since 3DS.

Edit: Added ReiNX instructions to OP. Tell me if I messed up or they need to be clearer, haha.

  • ReiNX: Create a folder in your ReiNX folder named titles if there isn't one. Copy the titles folder from the atmosphere folder to ReiNX/titles. Open "010000000000C235" and move the boot2.flag to the same directory as the exefs.nsp file. Reboot and freebird should now be working on ReiNX.

Should be reworded

  • ReiNX: Create a folder in your ReiNX folder named titles if there isn't one. Copy the 010000000000C235 folder from the atmosphere/titles folder to ReiNX/titles. Open "010000000000C235" and move the boot2.flag out of the flags folder to the same directory as the exefs.nsp file. Reboot and freebird should now be working on ReiNX.
 

Centergaming

Well-Known Member
Member
Joined
Apr 17, 2016
Messages
695
Trophies
0
XP
923
Country
United States
This doesn't make sense. Stock system using a patched PPC service exhibits the same behaviour.
The system simply uses a lot of timings based to ticks that then get converted into nanoseconds, changing the clocks will skew all of ninties internal calculations in nearly all sysmodules, especially nvservices.
The issue is inherently a race condition.

Doesn't this have to do with a messed up implementation with atmosphere or something? :unsure:

(Whoops, responded to old reply, did not see the other pages. Still, a lot of what you have said does not make any sense... )

I just noticed something... why is there a rule in your discord saying that "- SX OS and ReiNX related discussions equals admitting doing piracy and are banned and inexcusable"? If ReiNX = enabling piracy, shouldn't Atmosphere be considered enabling piracy? :unsure:
 
Last edited by Centergaming,

ZeroFX

why?
Member
Joined
Jun 18, 2018
Messages
1,114
Trophies
1
Location
napaJ
XP
3,017
Country
Japan
Here.
That's what I gave to testers to check out. Tell me if anything happens. It's going to automatically turn itself off at sleep. This is intentional. You will have to start it again when the system wakes up.
Shall test it, will report any caveats, time to stop using the cagedbird (ya know what I mean) and use freebird again.
 

Xebastron

Member
Newcomer
Joined
Nov 3, 2014
Messages
23
Trophies
0
Age
40
XP
121
Country
I have tried and tested it, the truth is that I am very happy, but it only works in a stable way in ReiNX :( a pity ... I really like how the load times have improved, even using SD. allowed CPU: 1.7, GPU: 768 and RAM: 1600, the ARK game even looks better and not only that, you can play !!!!! the graphic quality is impressive.

I would like to be able to help the project in some way.

a greeting
 

Nastas95

Well-Known Member
Member
Joined
May 13, 2018
Messages
145
Trophies
0
Location
Well, I'm Italian.
XP
791
Country
Italy
So, after 48 hours of testing i can give you a feedbeck

@JK_ gave us the unreleased BETA, it has no problem. The Forwarder i made speeds up setting up the clock after the wake up (@crow132 it's not that dumb, i just use the same settings for every single title, so it's faster for me to launch it directly from the game list rather then from the album)

Edit: i forgot to say that i am using latest Kosmos, usually i don't use the CPU OC, but i used it for testing purposes.

These are the setting i used in the past 48 hours and NEVER had a single crash (again, i'm using Kosmos)

Cpu: 1224 mhz
Gpu: 537 mhz
Ram: 1600 mhz

I usually disable OC when docked 'cause i'm happy with the stock experience
 
Last edited by Nastas95,
D

Deleted User

Guest
So, after 48 hours of testing i can give you a feedbeck

@JK_ gave us the unreleased BETA, it has no problem. The Forwarder i made speeds up setting up the clock after the wake up (@crow132 it's not that dumb, i just use the same settings for every single title, so it's faster for me to launch it directly from the game list rather then from the album)
I for one love the forwarder. THANK YOU!!
 
  • Like
Reactions: Nastas95

JK_

Well-Known Member
OP
Member
Joined
Sep 4, 2015
Messages
694
Trophies
1
XP
2,296
Country
United States
i think making a forwarder for freebird is kinda dumb, I rather have it as a NRO so I can change clocks during game
That was actually part of my reason for making it the way I did. If they want an NSP, they can have it though. It's not difficult to throw one together at all.

Anyway guys, I'm currently considering and planning where I want to go with it. Adding profiles was asked of me early on in testing/dev. I guess my real issue is keeping this all maintainable and together. I have a bad habit of jumping in head first and not planning much, if anything. Something that often bites me in the ass later on, unfortunately.
 
D

Deleted User

Guest
That was actually part of my reason for making it the way I did. If they want an NSP, they can have it though. It's not difficult to throw one together at all.

Anyway guys, I'm currently considering and planning where I want to go with it. Adding profiles was asked of me early on in testing/dev. I guess my real issue is keeping this all maintainable and together. I have a bad habit of jumping in head first and not planning much, if anything. Something that often bites me in the ass later on, unfortunately.
I actually love the simplicity of your tool and actually prefer it over the alternative for that reason. No .ini files to mess with, no profiles to manage, no BS. I wouldn't mind a prettier GUI but as-is, there's nothing stopping me from enjoying this everyday. Thank you for all your work on this.
 
Last edited by ,

Gee19

Active Member
Newcomer
Joined
Dec 30, 2018
Messages
37
Trophies
0
Website
github.com
XP
223
Country
Canada
We'll see how far I'm willing to go guys. I'm only one person doing this in their free time. Free time I like to spend doing other things too. Straight up, it was just a good reason/excuse to fiddle with making a service and IPC's. Something I've wanted to do since 3DS.

Edit: Added ReiNX instructions to OP. Tell me if I messed up or they need to be clearer, haha.

If only there was a way to outsource some of this effort to the community ;)
 

crow132

Well-Known Member
Member
Joined
Jan 19, 2016
Messages
302
Trophies
0
Age
34
XP
1,373
Country
Saint Helena
That was actually part of my reason for making it the way I did. If they want an NSP, they can have it though. It's not difficult to throw one together at all.

Anyway guys, I'm currently considering and planning where I want to go with it. Adding profiles was asked of me early on in testing/dev. I guess my real issue is keeping this all maintainable and together. I have a bad habit of jumping in head first and not planning much, if anything. Something that often bites me in the ass later on, unfortunately.

I honestly feel like ur first goal should be fixing sleep mode, disabling it when going into sleep mode is ok but doesnt feel like a real solution, just morr like a way of hiding the problem
 

JK_

Well-Known Member
OP
Member
Joined
Sep 4, 2015
Messages
694
Trophies
1
XP
2,296
Country
United States
I honestly feel like ur first goal should be fixing sleep mode, disabling it when going into sleep mode is ok but doesnt feel like a real solution, just morr like a way of hiding the problem
I'm not hiding it though. It was intentional so people wouldn't forget it was on. If you want one that doesn't turn itself off at sleep, you're more than welcome to try the attached one. If you have issues, feel free to tell me. Compatibility is my biggest worry here. Future versions will have strict version matching because of it, but I think these two should play nice. I can't really say that'll always be true though.
 

Attachments

  • freebird_exefs.zip
    17.5 KB · Views: 294

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Veho @ Veho: Link the Twink?