Hardware Left joycon bricked using a tool called "Joycon toolkit"

D

Deleted User

Guest
So I was using a windows tool called joycon toolkit and what I've been doing with it is avoiding the link from my hacked switch and clean switch
basically I made a backup of both my joycon SPI's before doing any of this, when I use my hacked switch I change my joycon SNs to something fake and when
I use my clean switch I restore the backup I made, well I was doing this last night and in the middle of an SPI restore on my left joycon the program crashed
now this had some pretty weird results, my joycon is now detected by my switch and by the computer as a right joycon instead of a left joycon and the controls are inverted
and the left joycon can no longer be used attached to the console and the lights don't stay lit up when connected to the switch
so I tried restoring an SPI backup of the left joycon again hoping it would fix things
only to get an error from joycon toolkit saying that I cannot restore a backup for a left joycon onto a right joycon even though this is actually a left joycon
I'm lost and have no idea what to do, the joycon is basically bricked because joycon toolkit wont let me restore the proper backup
I was wondering if someone that knows how could mod the program to get rid of the restore limits?
made a mistake with the build (accidentally was trying to include my fixes. Which you don't need)

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

oh so your the one of the taff guys ,, ggod luck fixing your mistakes ... hope it turns out to be ok, but as i can tell it checks for size at point after the code ive changed and maybe the next code got messed up the things ^^

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

i wouldnt risk flashing my self ...
Yeah But also keep in mind since this is being made. Some idiot is going to also try to restore a spi flash on the wrong joycon. So might as well be the first idiot and then fix it.
 

Attachments

  • Release.zip
    241.8 KB · Views: 177

KuranKu

I am KranK
Developer
Joined
Jan 13, 2019
Messages
367
Trophies
0
Age
34
Location
Israel
XP
1,181
Country
Israel
made a mistake with the build (accidentally was trying to include my fixes. Which you don't need)

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


Yeah But also keep in mind since this is being made. Some idiot is going to also try to restore a spi flash on the wrong joycon. So might as well be the first idiot and then fix it.
you right about that ... well theres looks to be size checks , wich aperently cause the mistakes , not really sure

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

made a mistake with the build (accidentally was trying to include my fixes. Which you don't need)
https://github.com/CTCaer/jc_toolkit/blob/master/jctool/FormJoy.h#L4912
https://github.com/CTCaer/jc_toolkit/blob/master/jctool/FormJoy.h#L4916

maybe this 2 lines needs be swaped up in case side mismatch wich will need an extra check in this case
 
D

Deleted User

Guest
you right about that ... well theres looks to be size checks , wich aperently cause the mistakes , not really sure
Actually figured more of it out. It seems post flash windows doesn't want to detect it as a game controller anymore. And this specific situation changes how it's handled. As I've had windows (accidentally) make one of the joycons as a other device and not a game controller before. Which caused joycon toolkit to not detect it. Still reading through the code to figure out what it specifically checks for.
 

KuranKu

I am KranK
Developer
Joined
Jan 13, 2019
Messages
367
Trophies
0
Age
34
Location
Israel
XP
1,181
Country
Israel
Actually figured more of it out. It seems post flash windows doesn't want to detect it as a game controller anymore. And this specific situation changes how it's handled. As I've had windows (accidentally) make one of the joycons as a other device and not a game controller before. Which caused joycon toolkit to not detect it. Still reading through the code to figure out what it specifically checks for.
https://github.com/CTCaer/jc_toolkit/blob/9d0cc455aebd07930b557840b47cb26df9eb4a1f/jctool/hid.c#L526

all starts here ids nums and such ...

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

Actually figured more of it out. It seems post flash windows doesn't want to detect it as a game controller anymore. And this specific situation changes how it's handled. As I've had windows (accidentally) make one of the joycons as a other device and not a game controller before. Which caused joycon toolkit to not detect it. Still reading through the code to figure out what it specifically checks for.
try bypassing checks from line 529 to 532 in last link i sent ...
 
D

Deleted User

Guest
Thanks. I've also figured out another issue. It also seems at least with windows. It pairs funny seemingly. It will automatically turn off after a while, as if it's still in pairing mode. Despite windows pairing with it. Switch handles it fine.

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

https://github.com/CTCaer/jc_toolkit/blob/9d0cc455aebd07930b557840b47cb26df9eb4a1f/jctool/hid.c#L526

all starts here ids nums and such ...

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


try bypassing checks from line 529 to 532 in last link i sent ...
and alright
 

MasterZoilus

Well-Known Member
Member
Joined
Sep 10, 2014
Messages
152
Trophies
0
Age
50
XP
662
Country
United States
the tool kit isn't the problem as I've used it at least on 50 joy cons already. The ridiculous notion of changing the SN is/was the problem. Doing something that pointless. Like if a joycon can get banned lol .
 
D

Deleted User

Guest
https://github.com/CTCaer/jc_toolkit/blob/9d0cc455aebd07930b557840b47cb26df9eb4a1f/jctool/hid.c#L526

all starts here ids nums and such ...

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


try bypassing checks from line 529 to 532 in last link i sent ...
yep looks like we are going to have some big fun. So pairing, it doesn't work. Only wired pairing works, aka through the switch. Attempting to pair on windows, does not reset the pair, or make it pair with windows. Shouldn't be surprised I guess
 

KuranKu

I am KranK
Developer
Joined
Jan 13, 2019
Messages
367
Trophies
0
Age
34
Location
Israel
XP
1,181
Country
Israel
@monkeyman4412

try like this without all the id checks

Code:
HID_API_EXPORT hid_device * HID_API_CALL hid_open(unsigned short vendor_id, unsigned short product_id, const wchar_t *serial_number)
{
    /* TODO: Merge this functions with the Linux version. This function should be platform independent. */
    struct hid_device_info *devs, *cur_dev;
    const char *path_to_open = NULL;
    hid_device *handle = NULL;
   
    devs = hid_enumerate(vendor_id, product_id);
    cur_dev = devs;
    while (cur_dev) 
    {
        ath_to_open = cur_dev->path;
        cur_dev = cur_dev->next;
    }

    if (path_to_open) {
        /* Open the device */
        handle = hid_open_path(path_to_open);
    }

    hid_free_enumeration(devs);
   
    return handle;
}
 
D

Deleted User

Guest
@monkeyman4412

try like this without all the id checks

Code:
HID_API_EXPORT hid_device * HID_API_CALL hid_open(unsigned short vendor_id, unsigned short product_id, const wchar_t *serial_number)
{
    /* TODO: Merge this functions with the Linux version. This function should be platform independent. */
    struct hid_device_info *devs, *cur_dev;
    const char *path_to_open = NULL;
    hid_device *handle = NULL;
  
    devs = hid_enumerate(vendor_id, product_id);
    cur_dev = devs;
    while (cur_dev)
    {
        ath_to_open = cur_dev->path;
        cur_dev = cur_dev->next;
    }

    if (path_to_open) {
        /* Open the device */
        handle = hid_open_path(path_to_open);
    }

    hid_free_enumeration(devs);
  
    return handle;
}
We're going to get nowhere fast if the joycon can't pair with the OS
 
D

Deleted User

Guest
rip if its not pair in os
Yeah it seems like it can't reset/update pairing. (well this is what I get for fucking around) Well time for a cool fun project then. (at least the joycon CAN pair with switch OS. So I have a idea on how to fix it. Give me a couple months.)
 

KuranKu

I am KranK
Developer
Joined
Jan 13, 2019
Messages
367
Trophies
0
Age
34
Location
Israel
XP
1,181
Country
Israel
Yeah it seems like it can't reset/update pairing. (well this is what I get for fucking around) Well time for a cool fun project then. (at least the joycon CAN pair with switch OS. So I have a idea on how to fix it. Give me a couple months.)
there is disable connection check bat file in the release zip i dont know if it helps ummnn.
 

JustBrandonT

Well-Known Member
Newcomer
Joined
Mar 11, 2018
Messages
75
Trophies
0
Age
34
XP
518
Country
Canada
seems to work

So as far as I can tell some pieces need to be adjusted still. (because I like breaking things as well. and was my only means of checking if things worked) I restored a right joycon flash onto my left. And it does work. Problem is joycon toolkit doesn't want to pick up that joycon, post flash. (I obivously have a back up of the left. Not stupid)

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


This should let you fix your joycon assuming the computer still picks it up and allows it. (Now I just have to undo my fuckery with mine)


LOL.. What exactly did you do to your own? I thought we were just commenting out the lines I posted, and nothing more.. to help the OP?
 
D

Deleted User

Guest
LOL.. What exactly did you do to your own? I thought we were just commenting out the lines I posted, and nothing more.. to help the OP?
Mostly to make sure that the OP wouldn't have issues. I have a pro controller, so I'm not exactly loosing out on much until I get the left back up and running proper. (but there is also that base of people who are going to restore a bad backup of a joycon or insert other problem here, and then need tools to fix it as well since this one doesn't have checks.)

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

he flashed with no checks the wrong side
Lol, guess what just happened. Left joycon wanted to pair.

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

Don't know why now it want's to pair just fine. But I accept that. (better than writing a entire program on the switch end)
 
  • Like
Reactions: JustBrandonT

KuranKu

I am KranK
Developer
Joined
Jan 13, 2019
Messages
367
Trophies
0
Age
34
Location
Israel
XP
1,181
Country
Israel
Mostly to make sure that the OP wouldn't have issues. I have a pro controller, so I'm not exactly loosing out on much until I get the left back up and running proper. (but there is also that base of people who are going to restore a bad backup of a joycon or insert other problem here, and then need tools to fix it as well since this one doesn't have checks.)

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


Lol, guess what just happened. Left joycon wanted to pair.

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

Don't know why now it want's to pair just fine. But I accept that. (better than writing a entire program on the switch end)
joycons are nuts
 
  • Like
Reactions: Deleted User

Noah932282

Member
OP
Newcomer
Joined
Oct 10, 2019
Messages
6
Trophies
0
XP
78
Country
United States
seems to work

So as far as I can tell some pieces need to be adjusted still. (because I like breaking things as well. and was my only means of checking if things worked) I restored a right joycon flash onto my left. And it does work. Problem is joycon toolkit doesn't want to pick up that joycon, post flash. (I obivously have a back up of the left. Not stupid)

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


This should let you fix your joycon assuming the computer still picks it up and allows it. (Now I just have to undo my fuckery with mine)

tysvm my left joycon is saved
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    SylverReZ @ SylverReZ: Nope. Not into gaming.