Hacking [Tool] Joy-Con Toolkit

CTCaer

Developer
OP
Developer
Joined
Mar 22, 2008
Messages
1,154
Trophies
0
XP
3,008
Country
Greece
New v1.5.1 hotfix version released!

Check OP for changelog.

About the HOME LED:
The problem with HOME LED is not the app.
In Linux I run only the 0x38 command or a chain of commands and it always work. USB or BT
In windows I do the same, one command or the same chain and it doesn't lit up.
Checked with Wireshark and the packets were the same.

So I think that linux and windows do a different pairing. And in initialization something is not sent to the device in windows and for some reason the HOME led is disabled.
I will create a dummy app to try with USB and see what will happen...
 

Ep8Script

Well-Known Member
Member
Joined
Aug 5, 2017
Messages
335
Trophies
0
XP
555
Country
Australia
Cheers!

And oh, okay I guess it'll be difficult in the long run... how strange. Oh well, we'll see how it goes. Thank you!
 

dsantor9

New Member
Newbie
Joined
Aug 9, 2017
Messages
4
Trophies
0
Website
twitter.com
XP
44
Country
Canada
I'm seeing a heated war in the comments of Spawn Wave's video about this, and I get that its unlikely but I'd like to have evidence just to be sure: Has anyone played online using Joy-Con with edited colours, and have you been warned/banned from the online service as a result? Looking for personal experience here. Oh and also, is it possible for Nintendo to see if the colours have been edited, even if you change them back before sending them in for repairs (do joy-con save records or something)? I doubt it, but I guess anything's possible. Thanks.
 
Last edited by dsantor9,
D

Deleted User

Guest
upload_2017-8-8_20-11-11.png
 

dsantor9

New Member
Newbie
Joined
Aug 9, 2017
Messages
4
Trophies
0
Website
twitter.com
XP
44
Country
Canada
Sorry, is there supposed to be something attached here? The comment is empty outside of my profile next to yours and your signature, but under your profile it says ATTACH (my bad if I'm missing something here, I just made my account lol). EDIT: WAIT THATS A SCREENSHOT MY BAD

--------------------- MERGED ---------------------------

Sorry, is there supposed to be something attached here? The comment is empty outside of my profile next to yours and your signature, but under your profile it says ATTACH (my bad if I'm missing something here, I just made my account lol). EDIT: WAIT THATS A SCREENSHOT MY BAD
Boi I wanted to ask so I made an account what do you want from me lol
 
Last edited by dsantor9,

CTCaer

Developer
OP
Developer
Joined
Mar 22, 2008
Messages
1,154
Trophies
0
XP
3,008
Country
Greece
I will reply because common sense is bit of a problem nowadays..

  1. 2 months now with changed color. And online all the time.
  2. Repair center can't see if you changed them back. It's a flash storage. You write directly to the physical layer.
  3. It's a controller... You can't ban an account for that. Then everyone with 3rd party controller should be banned.

Let's be realistic.

The only problem is if you need to send it for repair. Then you must change it back.
And if you can't change it back, 99% they can't also check it and that means mainboard repair..

EDIT:
In topic
So, HOME led does not work with USB also. It has something to do with windows (I only tested Windows 10).
The funny thing is that it's the only sub command that does not work.
Lastly, USB is a pain. It's quirky and the controller rejects packets if they are fast enough... I don't think I want to dive into this mess...
 
Last edited by CTCaer,

dsantor9

New Member
Newbie
Joined
Aug 9, 2017
Messages
4
Trophies
0
Website
twitter.com
XP
44
Country
Canada
I will reply because common sense is bit of a problem nowadays..

  1. 2 months now with changed color. And online all the time.
  2. Repair center can't see if you changed them back. It's a flash storage. You write directly to the physical layer.
  3. It's a controller... You can't ban an account for that. Then everyone with 3rd party controller should be banned.

Let's be realistic.

The only problem is if you need to send it for repair. Then you must change it back.
And if you can't change it back, 99% they can't also check it and that means mainboard repair..
Makes sense. Sorry, I've seen a ton of comments regarding this and I figured this would be the answer but i just wanted to be absolutely sure since Spawn Wave's pinned comment suggested a ban was possible. Don't wanna cause trouble, this tool looks awesome. I'll be sure to add a comment with a screenshot once I get it working. Thanks!
 

CTCaer

Developer
OP
Developer
Joined
Mar 22, 2008
Messages
1,154
Trophies
0
XP
3,008
Country
Greece
No worries. If you want to keep your account, just don't mess with the actual hardware that uses the account.
And ofc if you are a media creation company, you keep some distance. This is a must behavior.

Also, it's true that the Joy-Con warranty is voided. (But we all know that you can just write the warranty back :P)
 
  • Like
Reactions: dsantor9

SirDapper

New Member
Newbie
Joined
Aug 9, 2017
Messages
2
Trophies
0
Age
24
XP
41
Country
United States
I ran into a big issue, so I got custom joycons done and I wanted to change the colors of them to reflect the shell, well I downloaded everything I needed and backed up my left joycon, then I changed the body color and clicked write colors, it was loading for quite some time but then the program crashed, now none of my joycons connect to my computer anymore so I can no longer change the color... any fix for this would be greatly appreciated and first one to help me out with a fix to this I am willing to give $5 on paypal if you link your paypal email. This just really sucks and I would love to find out a fix!
 

Ep8Script

Well-Known Member
Member
Joined
Aug 5, 2017
Messages
335
Trophies
0
XP
555
Country
Australia
EDIT:
In topic
So, HOME led does not work with USB also. It has something to do with windows (I only tested Windows 10).
The funny thing is that it's the only sub command that does not work.
Lastly, USB is a pain. It's quirky and the controller rejects packets if they are fast enough... I don't think I want to dive into this mess...
Damn, that's really odd, huh? Maybe Shiny Quagsire (@shinyquagsire23) can give you a hand, but as far as I know he would probably only work on Linux. It's very weird it's the only subcommand that doesn't work, yeah. Interesting...
 

CTCaer

Developer
OP
Developer
Joined
Mar 22, 2008
Messages
1,154
Trophies
0
XP
3,008
Country
Greece
then I changed the body color and clicked write colors, it was loading for quite some time but then the program crashed, now none of my joycons connect to my computer anymore

Go to Devices and Printers (if you have windows 10, do the same, dont go to settings).
There you will find Joy-Con L or R, right click remove.

Then go to settings->add devices or to bt settings and re-pair.

The problem is windows being windows. Because of testing I had this problem many times. For me it happened when I was connecting it to Switch and then I was doing the whole remove/add device to re-pair it very fast.

Also when you are using the toolkit, make sure that only one device is connected at a time (press sync button once to the other device to turn it off).
 

CTCaer

Developer
OP
Developer
Joined
Mar 22, 2008
Messages
1,154
Trophies
0
XP
3,008
Country
Greece
or try core. But that would be a little bit more work :D

You can now check the source code :D

BTW, I remembered a suggestion you did for the color dialog,
why ALL custom color dialogs and frameworks are in C#?
In the end I will write my own color dialog, with retail colors and then it will call the winforms colordialog.

Lastly, my plans for now:
1. Deduplicate all the protocol functions. And some winforms stuff.
2. Split Main/connection logic and protocol functions
3. Color dialog once and for all?
4. Secret?!
 
Last edited by CTCaer,

DarkIrata

Well-Known Member
Member
Joined
Jun 12, 2015
Messages
493
Trophies
0
Age
29
Website
ipmix.de
XP
1,591
Country
Germany
You can now check the source code :D

BTW, I remembered a suggestion you did for the color dialog,
why ALL custom color dialogs and frameworks are in C#?
In the end I will write my own color dialog, with retail colors and then it will call the winforms colordialog.

Lastly, my plans for now:
1. Deduplicate all the protocol functions. And some winforms stuff.
2. Split Main/connection logic and protocol functions
3. Color dialog once and for all?
3. Secret?!
Ok :) sure will.
naah, i don't have a problem with the use of all c# stuff. I just like the Color Wheel from the control i showed you. Using it for my Wireless RGB Light Strip Control. :D
 

CTCaer

Developer
OP
Developer
Joined
Mar 22, 2008
Messages
1,154
Trophies
0
XP
3,008
Country
Greece
Damn, that's really odd, huh? Maybe Shiny Quagsire (@shinyquagsire23) can give you a hand, but as far as I know he would probably only work on Linux. It's very weird it's the only subcommand that doesn't work, yeah. Interesting...
So I found out why the HOME led does not work...
Because I documented wrong, believing that it takes only one argument.

Actually it takes more, the 2nd is when to stop blinking/breathing.
So in Linux, Shinys tool sends a packet with a set length, unlike windows which for some reason hid api has a minimum output buffer.
So mine sends an initialized to zeroes buffer, so the 2nd argument becomes 0 and therefore stop blinking after 0 time.
 

Mnecraft368

I hate my name.
Member
Joined
Aug 8, 2015
Messages
1,763
Trophies
0
XP
3,331
Country
United Kingdom
So I found out why the HOME led does not work...
Because I documented wrong, believing that it takes only one argument.

Actually it takes more, the 2nd is when to stop blinking/breathing.
So in Linux, Shinys tool sends a packet with a set length, unlike windows which for some reason hid api has a minimum output buffer.
So mine sends an initialized to zeroes buffer, so the 2nd argument becomes 0 and therefore stop blinking after 0 time.
any plans on fixing it?
I would like to have my home LED activated.
 

CTCaer

Developer
OP
Developer
Joined
Mar 22, 2008
Messages
1,154
Trophies
0
XP
3,008
Country
Greece
Already fixed locally, but I have to see what approach to follow. E.g. argument can now take 8 bytes.
Also, I will publish it after I document the subcommand correctly.
 
  • Like
Reactions: Ep8Script

dj505

Inexperienced Romhacker
Member
Joined
Oct 4, 2014
Messages
556
Trophies
0
Location
Most likely at the arcade
Website
www.youtube.com
XP
844
Country
Canada
I don't have time to clean or deduplicate the source more, so there you have it:

The source code is now up!
I'm gonna have to start learning some C# now lol. I might mess around with it and experiment with new features.

Edit: Ok, it took like half an hour, but I finally figured out how to actually build the project (having literally never done any C# development ever)
 
Last edited by dj505,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: https://www.youtube.com/watch?v=FQOFpDdg5rQ