More actions
Joy-Con Toolkit | |
---|---|
General | |
Author | CTCaer |
Type | Theme Tools |
Version | 5.2.0 |
License | MIT License |
Last Updated | 2018/04/24 |
Links | |
Download | |
Website | |
Source | |
An easy tool that allows you to modify the Joy-Con colors your Switch system associates with your Joy-Cons and Pro Controllers.
The change is carried in the controllers software and shows on any Switch, ideal for controllers with aftermarket shells.
This tool was inspired by Shinyquagsire23's HID-Joy-Con-Whispering.
Note: Before you do anything, make a backup of your SPI flash. If you have done one, change the name a little bit to avoid overwrites and keep it for life.
Features
- Change colors of your Joy-Con and Pro Controller (plus left/right grip).
- Use the IR stream or capture and save photos.
- Use the NFC to check type and UID.
- Save your custom colors for future use.
- Backup your SPI flash.
- Edit user calibration for analog sticks.
- View S/N, FW Version, MAC address and Battery.
- Restore from a backup. Restore colors, S/N, Calibration, Full restore.
- Change S/N.
- If you didn't do a valid backup and you lost your S/N, you are the only responsible.
- If for whatever reason you lost it, check the plastic slivers that your Joy-Con were wrapped inside the retail box.
- Debug - Send Custom Commands. Send Vibrations, set player and HOME leds, etc, and see their reply.
- Only for users that know what they are doing. You are the only responsible.
- Full test controls. Test buttons, analog sticks, motion controls, complete with calibration.
- Temperature reading. Check the current Joy-Con or the ambient temperature after letting it for some minutes.
- Easter Egg: Play 2 Mario themes through Joy-Con HD Rumble.
- Capture traffic between the controller and the PC into a log file.
- Led indicator:
- Player Led behavior: Solid - Waiting for command; 4th Led Blinking - Doing stuff.
- Additionally for Right JC and Pro HOME led: Heartbeat - Waiting for command; Breathing - Doing stuff.
- For more, check Changelog.
User guide
Prerequisites
Install only if needed:
- Microsoft Visual C++ 2017 (x86) Redistributable (All Windows versions).
- Microsoft .NET Framework 4.7.1 (for Windows lower than Windows 10).
- Bluetooth 2.0 and up (USB adapter or built-in).
- Microsoft Bluetooth stack/drivers or Toshiba Bluetooth stack/drivers. Other stacks are not supported by the controllers for unlocked feature usage.
- Windows 7 and up (host or VM guest).
How to use
Press the sync button to connect the Joy-Con to your computer. Wait until it starts searching, then open your computer's Bluetooth menu. You should see the Joy-Con pop up. If done correctly, it should automatically show up in the Joy-Con Toolkit program.
In the Joy-Con Toolkit, you'll see the "backup SPI" option, which will create a default state you can revert to. Please make a backup of your SPI flash before doing anything, in case anything goes wrong (may take ~10 mins).
You can now customize the colors by changing the "body colour" or the "buttons colour", press "write colours" to save. Then slot your Joy-Cons back onto your Switch, it should register them as whatever colours you assigned.
▼ Example illustration by soaresden |
---|
|
Troubleshooting
The colors do not show up in Switch:
Switch 2.3.0 and older:
- Clear the controller cache by doing the following:
- Go to System Settings > Controllers and Sensors and do Disconnect all controllers. Restart your Switch and then pair.
Switch 3.0.0, 4.0.0 and newer:
- Just pair the controller with Switch.
Screenshots
Joy-Con Toolkit
On the Switch
Media
Change Nintendo Switch Joy-Con Colors Through Software! (Spawn Wave)
Changelog
v5.2.0 2018/04/12
- Near Infrared Camera:
- Add live configuration when streaming.
- Add many new IR settings (de-noise, led intensity, strobe lights, etc).
- Change custom IR sensor registers.
- Auto exposure mode (This is done manually, so it's experimental. Expect bugs)..
- User Calibration Editing:
- Add Accelerometer/Gyroscope user calibration editing.
- Add Stick device factory parameters editing. Helps when you have drifting issues, that can't be fixed by calibrating the stick. Just raise the deadzone value.
- Debugging / Troubleshooting:
- Add 2 command line options:
- -d: Dumps the communication packets into a log text file.
- -f: Forces the app to not check for connection again. Helps in some cases that the app reports that the controller was disconnected.
- Add 2 command line options:
- Others:
- Organize the IR/Playground/Calibration panels a little better.
- Many bugfixes and optimizations.
v5.0.0 2018/03/30
- Near Infrared Camera:
- Look through the IR camera of the Joy-Con (R) controller.
- Capture and save a photo or Stream video.
- Fully configurable: Resolution, IR leds, Exposure time, Digital gain and External IR light filter (filters lighters/candles, sunlight, etc.)
- 4 color filters to choose: Grey, Ironbow (pseudothermal color), Night vision (green) and Red.
- Look through the IR camera of the Joy-Con (R) controller.
- NFC:
- Check simple info (type and uid) from NFC tags, credit cards and nfc-enabled phones via the Pro controller and Joy-Con (R).
- Edit analog sticks user calibration:
- Edit the analog stick's X/Y ranges and centers. All controllers are supported.
- This can correct accidental walking and slow running when the switch's calibration does not let you calibrate them correctly.
- Updated color edit:
- You can now edit the Grips color for the Pro controller individually along the body and buttons color.
- (Viewing the grips color is only supported in Switch update 5.0.0+).
- The controller preview is now optimized and way faster.
- Other:
- Added traffic logging by using the command line argument -d.
- Made it fully non-blocking. Now the app will mostly not hang when the controller is disconnected when it does an operation.
- Countless bugfixes and optimizations.
v3.0.2 2019/03/01
- Hotfixes:
- Implemented mitigations for Pro Controller erratic/random behavior of x3F input reports.
- Now certain read/write SPI commands will be more difficult to be skipped.
- Added error checking for read/write SPI commands and user inform messages when these happen.
- Some bugfixes/protections.
v3.0.1 2018/02/24
- Removed redundant testing code that broke compilation.
v3.0.0 2018/02/24
- Joy-Con Color Picker:
- Beautiful dark design.
- Adobe style color picker, with different color spectrums for each mode and arrows/mouse wheel support.
- HEX input:
- Eyedropper. Pick any color on your screen.
- Choose both Body and Buttons colors in one screen.
- Presets that you can name. Save up to 16 retail custom colors and 32 user custom colors.
- Legacy support. It will automatically load your old saved presets and save them to the new config format.
- New config xml layout, which has the color in HEX RGB along with the preset name.
- Modular support. With some small changes it can be reworked to fit your project.
- High DPI scaling support:
- Every control is now reworked so it will scale with your Windows DPI setting.
- Forget any blurred look or out of bounds text.
- Smoother controller preview image:
- The preview box that you can check how the controller will look like with the new colors is now reworked.
- It now produces nice HQ images with smooth color transition and no more color spots.
- Other:
- Many bugfixes and code refactoring!.
- Fully support Windows 10 (Fall Creators Update).
- Important - You will now need the following for the app to work:
- Microsoft Visual C++ 2017 (x86) Redistributable (All Windows versions).
- Microsoft .NET Framework 4.7.1 (for Windows lower than Windows 10).
- And as always, check here for the executable binaries.
v2.5.1 2017/11/01
- Full featured controls, motion sensor and calibration readings. Check your user or factory calibrations, test buttons, stick and motion sensors raw and calibrated readings.
- Temperature readings. Check your current Joy-Con temperature or the ambient temperature (by leaving it alone for some minutes).
- Added Battery Voltage reading.
- Added Pro controller buttons color support.
- Small redesign of some parts for better UX.
- Added Refresh and Disconnect buttons.
- You can now change on the fly different Joy-Con without the need to close the toolkit for refreshing info, or just refresh temperature/battery/etc. *Additionally "Disconnect" also reboots your device.
- Added Red Joy-Con body and buttons colors. Thanks to SciresM. If you want to keep your custom colors, add them manually: 225,15,0 | 40,10,10.
- Added New Easter Egg. Happy SMO release.
- Countless bugfixes and improvements.
v2.0 2017/08/21
- Full featured bnvib and jcvib HD Rumble Player. Also added EQ and support to Loop .bnvib format.
- Full Debug reply report. You can now check buttons/joystick/battery from the received packet.
- Added S/N protection mechanism. With the first S/N change, it now saves it in an unused area inside your SPI. If you already changed it, it will not trigger. *You need to restore it from a backup and then change it back.
- Added option to restore it from inside the SPI. Needs the above. Otherwise you can still restore it from your SPI backup.
- Battery percent based on regulated voltage reported from the device.
- Now Joy-Con (R) and Pro Controller utilize the HOME led. Heartbeat = Standby/Awaiting command, Breathing = Doing stuff.
v1.5.2 2017/08/11
- Fixed a major compatibility issue with newest shipments of Joy-Con. Previously we were expecting 2 FW Ram Patches inside the SPI dump. New Joy-Con have only 1 like Pro. This was triggering a "Backup is corrupt" message, even though the backup was perfect.
- Revambed the debug and made it like a normal feature a little bit. Added sent subcmd/arguments windows and you can now send 25byte subcmd arguments (this fixes the HOME LED).
- Some bugfixes.
Credits
References:
- Official forum and Binary releases.
- Protocol reverse engineering.
- Protocol and hidapi usage in Linux.
- In windows.
Special thanks:
- Everyone at Nintendo_Switch_Reverse_Engineering: General BT protocol usage.
- shinyquagsire23: General hidapi and BT protocol usage.
- shuffle2: General hidapi usage for windows.
- Ceri: Neon-Yellow hex color values.
- Cosmic_Link: Splatoon Pink and Green Joy-Con dumps and colors.
- SciresM: Red Joy-Con color values.
- KapuDaKoopa, Sam S, SomeGamer, Jackson Ferrell, Starwort, trainboy2019, Hario337, Ep8Script,Lixmo: Testing.
- Spawn Wave, Thomhack: For the video tutorials.