Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Sys-con Switch by cathery: Difference between revisions

From GameBrew
(Created page with "{{Infobox Switch Homebrews |title=Sys-Con |image=sysconswitch.png |description=Nintendo Switch sysmodule that allows support for third-party controllers |author=cathery |lastupdated=2021/09/24 |type=System Tools |version=0.6.4 |license=GPL-3.0 |download=https://dlhb.gamebrew.org/switchhomebrews/sysconswitch.7z |website=https://github.com/cathery/sys-con |source=https://github.com/cathery/sys-con |donation= }} {{#seo: |title=Switch Homebrew Apps (System Tools) - GameBrew...")
 
m (HydeWing moved page Sys-con Switch to Sys-con Switch by cathery without leaving a redirect)
 
(19 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Infobox Switch Homebrews
{{Infobox Switch Homebrews
|title=Sys-Con
|title=sys-con
|image=sysconswitch.png
|image=sysconnx.png
|description=Nintendo Switch sysmodule that allows support for third-party controllers
|description=Nintendo Switch sysmodule that allows support for third-party controllers.
|author=cathery
|author=cathery
|lastupdated=2021/09/24
|lastupdated=2024/11/07
|type=System Tools
|type=Sysmodules
|version=0.6.4
|version=0.6.5
|license=GPL-3.0
|license=GPL-3.0
|download=https://dlhb.gamebrew.org/switchhomebrews/sysconswitch.7z
|download=https://dlhb.gamebrew.org/switchhomebrews/sysconnx.7z
|website=https://github.com/cathery/sys-con
|website=https://github.com/cathery/sys-con
|source=https://github.com/cathery/sys-con
|source=https://github.com/cathery/sys-con
|donation=
|donation=https://ko-fi.com/cathery
}}
}}
{{#seo:
Nintendo Switch sysmodule that allows support for third-party controllers. It aims to provide complete functionality for most popular game controllers not supported by Nintendo Switch.
|title=Switch Homebrew Apps (System Tools) - GameBrew
 
|title_mode=append
At the current moment, only USB connection is supported. If you want to connect your controllers using Bluetooth, you can use ndeadly's [[MissionControl_Switch|MissionControl]].
|image=sysconswitch.png
 
|image_alt=Sys-Con
==Features==
}}
* Docked USB support.
{{cleanup|article|Needs cleanup}}
* 19.0.0 FW Version support.
Nintendo Switch sysmodule that allows support for third-party controllers
* Xbox 360 Controller support.
* Xbox One X/S Controller support.
* Dualshock 3 support.
* Undocked USB support. Works with a USB-C OTG adapter. Some knock-off brands may not support OTG.
* Xbox 360 Wireless adapter.
* Dualshock 4 support.
 
==Installation==
Grab the [https://github.com/cathery/sys-con/releases latest zip], extract it in your SD card and boot/reboot your switch.
 
sys-con comes with a config folder located at <code>sdmc:/config/sys-con/</code>. It contains options for adjusting stick/trigger deadzone, as well as remapping inputs.
 
For more information, see <code>example.ini</code> in the same folder. All changes to the files will be updated in real time.


==Media==
==Media==
<youtube></youtube>
'''sys-con on Logitech F710''' ([https://www.youtube.com/watch?v=ohGRO3UsFYs de\/ELOPER.su]) <br>
<youtube>ohGRO3UsFYs</youtube>


==Compatibility==
Switch FW 19.0.0. Atmosphère 1.8.0.


==Screenshots==
==Known issues==
https://dlhb.gamebrew.org/switchhomebrews/sysconswitch-01.png
This app is missing a lot of features. For more information, see the [https://github.com/cathery/sys-con/issues issues page].
https://dlhb.gamebrew.org/switchhomebrews/sysconswitch-02.png
https://dlhb.gamebrew.org/switchhomebrews/sysconswitch-03.png
https://dlhb.gamebrew.org/switchhomebrews/sysconswitch-04.png
https://dlhb.gamebrew.org/switchhomebrews/sysconswitch-05.png
https://dlhb.gamebrew.org/switchhomebrews/sysconswitch-06.png
https://dlhb.gamebrew.org/switchhomebrews/sysconswitch-07.png
https://dlhb.gamebrew.org/switchhomebrews/sysconswitch-08.png


==Changelog==
==Changelog==
'''v.1.0'''
'''v0.6.5 2024/11/07'''
* First Release.
* Updated for latest Atmosphere/FW (19.0.0).
** Make sure to update your console to [https://github.com/Atmosphere-NX/Atmosphere/releases/tag/1.8.0-prerelease Atmosphere 1.8.0]! Otherwise the sysmodule might not start up.
* Disclosure: this binary was built with a custom version of libnx that fixes a crash during controller initialization. Keep that in mind when building sys-con from source. For more information, see issue [https://github.com/switchbrew/libnx/issues/653 switchbrew/libnx#653].
 
'''v0.6.4 2021/09/24'''
* Updated for FW 13.0.0.
 
'''v0.6.3 2021/04/12'''
* Recompiled for compatibility with FW 12.0.0.
 
'''v0.6.2 2020/05/30'''
*Reduced FS sessions used by the sysmodule from 3 to 1.
**This might have caused FS to run out of sessions and crash the system if you had too many sysmodules enabled.
*Reduced time sessions used by the sysmodule to 0.
**Again to prevent time services to run out of sessions. Time was only used by logs anyway. They use system tick-based time now.
 
'''v0.6.1 2020/04/25'''
*Fixed an issue that caused version 0.6.0 to always use 100% of CPU core 3.
*The sysmodule will now detect both versions of Dualshock 4 controllers at the same time (thanks @p-sam again).
**As such, the config option for it has been removed.
*Changed how controller configs work:
**Added separate options for both Left trigger deadzone and Right trigger deadzone.
**Controller key mapping now supports multimapping, aka mapping multiple keys to the same button.
**Additionally, you can also disable a key entirely, by writing KEY_* = NONE.
**Previously, a line key_SYNC = LSTICK_CLICK would make the Sync/Capture button press the Left stick button, and make the Left stick button press the Capture button.
**This has been changed, so that this would only modify the Sync/Capture button. The Left stick button would still press the left stick button.
**The syntax has also been changed to KEY_CAPTURE = LSTICK_CLICK.
 
'''v0.6.0 2020/04/19'''
*The sysmodule codebase has been rewritten to use libstratosphere.
**This will make it easier in the future to allow other homebrew to directly communicate with sys-con.
**The code now also looks a little bit cleaner.
*Fixed an issue introduced by v0.5.2 causing the system to completely freeze when left in sleep mode with a controller plugged in.
*Fixed an issue introduced by v0.5.2 causing sys-con to not recognize more than 2-3 controllers simultaneously.
*(Hopefully) fixed an issue causing controllers to be no longer recognized until sys-con is restarted.
**This was caused by sys-con randomly losing the USB handle, rendering the USB side of sys-con completely useless.
*(Hopefully) fixed an issue causing the system to freeze when a controller is disconnected.
*The sysmodule will now delete the previous log file if it's too large (about ~130KB) on startup.
*Note: This is the last release of sys-con that can still be enabled and disabled directly through Kosmos Toolbox without rebooting the console. All later versions will require a reboot.
 
'''v0.5.3 2020/01/28'''
*Fixed the maximum and minimum stick values generated by sys-con.
**This caused games like Xenoblade Chronicles 2 and Resident Evil 4 to crash when that stick value has been reached.
*When using the mode that swaps left stick with d-pad, the stick values generated by d-pad are now clamped to a circle radius.
*If you have the latest version of Kosmos Toolbox, you can now manually enable/disable sys-con right from the toolbox menu without having to reboot your console. Hurray.
 
'''v0.5.2 2019/12/11'''
*Nothing much has changed, just updating this for the new Atmosphere 0.10 release.
*There is a known issue on all versions of sys-con regarding Xbox One controllers. if you update your Xbox One controller to the latest firmware, it stops working properly. Since you can't downgrade the firmware, I suggest you don't update your Xbox One controllers until a fix has been found.
*Instructions:
**Extract the zip file and copy the contents onto your SD card.
**If you're not using Atmosphere, rename the <code>atmosphere/</code> folder with the desired CFW name.
**Reboot your Nintendo Switch.
**If you're not using Atmosphere 0.10 for whatever reason, you have to rename the <code>contents</code> folder in the zip file back to <code>titles</code> folder.
 
'''v0.5.1 2019/11/25'''
*Fixed multiple controllers being disconnected when disconnecting any controller.
*Fixed the sysmodule crashing during sleep mode or eventually stopping recognizing controllers.
*Fixed Dualshock 3 getting chaotic inputs when Dualshock 4 is connected.
*Added an option to change the LED color of Dualshock 4 in <code>config_dualshock4.ini</code>: <code>color_led</code>. Optionally, if you want to turn LED off, set the color values to <code>0, 0, 0</code>.
 
'''v0.5.0 2019/11/15'''
*Added support for Dualshock 4.
**NOTE: Due to firmware limitations, only one generation of Dualshock 4 can be recognized at a time. If you have a Dualshock 4 model "CUH-ZCT2E", you need to go to sdmc:/config/sys-con/config_global.ini and change the value of use_dualshock_2nd_generation to true.
*Bonus feature: You can now customize controller colors! Head over to sdmc:/config/sys-con/ and modify the color values for each type of controller. Most controllers already have customized colors in place.
 
'''v0.4.2 2019/11/11'''
*Fixed some Xbox One controllers being recognized, but not receiving any input. Let me know if this release breaks your controller.
*Fixed original Xbox controllers not having correct input mapping.
 
'''v0.4.1 2019/11/10'''
*Stopped LED blinking on Xbox 360 Wireless controllers (now shows up as top left).
*Added an option to swap d-pad and left stick inputs in the config. simply set <code>swap_dpad_and_lstick</code> from <code>false</code> to <code>true</code> in your desired controller config file.
 
'''v0.4.0 2019/11/09'''
*The sysmodule now detects generic XInput devices. I can't promise every single XInput device will work, I can only hope your controller manufacturer follows the XInput protocol to the dot.
*Xbox 360 Wireless Receiver is partially supported! When I say partially, it means that the LED is still blinking and the app doesn't seem to detect controllers disconnect. However, it has full button support and allows to connect up to 4 controllers at once. The config for it is the same as the Xbox 360 Wired.
 
'''v0.3.0 2019/11/08'''
*There is now a config folder for the sysmodule! You can find it at sdmc:/config/sys-con/ and modify the stick/trigger deadzones and remap inputs. All the config changes are updated in real time.
*The log file has also been moved to the config folder.
*Fixed an issue with some of the Microsoft Xbox controllers not connecting properly.
*Xbox 360 and Dualshock 3 LEDs now no longer blink.
*If you're having crashes or hangs when booting up a game, try turning off other sysmodules.
 
'''v0.2.3.1 2019/11/07'''
*The 0.2.3 version had improper naming. Download this if 0.2.3 was not working for you.
*Halves the memory used by the sysmodule.
*[9.0.0+] If you're having freezes or crashes (error 2003-0008) when launching a game, try disabling other memory-intensive sysmodules (sys-ftpd, emuiibo). Or downgrade to 8.0.0.
 
'''v0.2.2 2019/11/06'''
*This one goes out to those having issues with their 1st generation Xbox One controller.
*Currently known issue on [9.0.0+]: The app uses too much memory resulting in freezing/crashing.
 
'''v0.2.1 2019/11/06'''
*Added a small deadzone for all controllers to fix stick drifting.
*Xbox One Sync Button now takes a capture.
 
'''v0.2.0 2019/11/05'''
*It is possible to plug Xbox 360, Xbox One, and Dualshock 3 controllers into the dock and play. No rumble.


== External links ==
== External links ==
* Gbatemp - https://github.com/cathery/sys-con
* GitHub - https://github.com/cathery/sys-con
* Github - https://github.com/cathery/sys-con
* GBAtemp - https://gbatemp.net/threads/sys-con-lets-you-use-third-party-controllers-on-a-docked-switch-via-usb.551627/
* Reddit -
* ForTheUsers - https://apps.fortheusers.org/switch/sys-con

Latest revision as of 00:52, 10 November 2024

sys-con
Sysconnx.png
General
Authorcathery
TypeSysmodules
Version0.6.5
LicenseGPL-3.0
Last Updated2024/11/07
Links
Download
Website
Source
Support Author

Nintendo Switch sysmodule that allows support for third-party controllers. It aims to provide complete functionality for most popular game controllers not supported by Nintendo Switch.

At the current moment, only USB connection is supported. If you want to connect your controllers using Bluetooth, you can use ndeadly's MissionControl.

Features

  • Docked USB support.
  • 19.0.0 FW Version support.
  • Xbox 360 Controller support.
  • Xbox One X/S Controller support.
  • Dualshock 3 support.
  • Undocked USB support. Works with a USB-C OTG adapter. Some knock-off brands may not support OTG.
  • Xbox 360 Wireless adapter.
  • Dualshock 4 support.

Installation

Grab the latest zip, extract it in your SD card and boot/reboot your switch.

sys-con comes with a config folder located at sdmc:/config/sys-con/. It contains options for adjusting stick/trigger deadzone, as well as remapping inputs.

For more information, see example.ini in the same folder. All changes to the files will be updated in real time.

Media

sys-con on Logitech F710 (de\/ELOPER.su)

Compatibility

Switch FW 19.0.0. Atmosphère 1.8.0.

Known issues

This app is missing a lot of features. For more information, see the issues page.

Changelog

v0.6.5 2024/11/07

  • Updated for latest Atmosphere/FW (19.0.0).
    • Make sure to update your console to Atmosphere 1.8.0! Otherwise the sysmodule might not start up.
  • Disclosure: this binary was built with a custom version of libnx that fixes a crash during controller initialization. Keep that in mind when building sys-con from source. For more information, see issue switchbrew/libnx#653.

v0.6.4 2021/09/24

  • Updated for FW 13.0.0.

v0.6.3 2021/04/12

  • Recompiled for compatibility with FW 12.0.0.

v0.6.2 2020/05/30

  • Reduced FS sessions used by the sysmodule from 3 to 1.
    • This might have caused FS to run out of sessions and crash the system if you had too many sysmodules enabled.
  • Reduced time sessions used by the sysmodule to 0.
    • Again to prevent time services to run out of sessions. Time was only used by logs anyway. They use system tick-based time now.

v0.6.1 2020/04/25

  • Fixed an issue that caused version 0.6.0 to always use 100% of CPU core 3.
  • The sysmodule will now detect both versions of Dualshock 4 controllers at the same time (thanks @p-sam again).
    • As such, the config option for it has been removed.
  • Changed how controller configs work:
    • Added separate options for both Left trigger deadzone and Right trigger deadzone.
    • Controller key mapping now supports multimapping, aka mapping multiple keys to the same button.
    • Additionally, you can also disable a key entirely, by writing KEY_* = NONE.
    • Previously, a line key_SYNC = LSTICK_CLICK would make the Sync/Capture button press the Left stick button, and make the Left stick button press the Capture button.
    • This has been changed, so that this would only modify the Sync/Capture button. The Left stick button would still press the left stick button.
    • The syntax has also been changed to KEY_CAPTURE = LSTICK_CLICK.

v0.6.0 2020/04/19

  • The sysmodule codebase has been rewritten to use libstratosphere.
    • This will make it easier in the future to allow other homebrew to directly communicate with sys-con.
    • The code now also looks a little bit cleaner.
  • Fixed an issue introduced by v0.5.2 causing the system to completely freeze when left in sleep mode with a controller plugged in.
  • Fixed an issue introduced by v0.5.2 causing sys-con to not recognize more than 2-3 controllers simultaneously.
  • (Hopefully) fixed an issue causing controllers to be no longer recognized until sys-con is restarted.
    • This was caused by sys-con randomly losing the USB handle, rendering the USB side of sys-con completely useless.
  • (Hopefully) fixed an issue causing the system to freeze when a controller is disconnected.
  • The sysmodule will now delete the previous log file if it's too large (about ~130KB) on startup.
  • Note: This is the last release of sys-con that can still be enabled and disabled directly through Kosmos Toolbox without rebooting the console. All later versions will require a reboot.

v0.5.3 2020/01/28

  • Fixed the maximum and minimum stick values generated by sys-con.
    • This caused games like Xenoblade Chronicles 2 and Resident Evil 4 to crash when that stick value has been reached.
  • When using the mode that swaps left stick with d-pad, the stick values generated by d-pad are now clamped to a circle radius.
  • If you have the latest version of Kosmos Toolbox, you can now manually enable/disable sys-con right from the toolbox menu without having to reboot your console. Hurray.

v0.5.2 2019/12/11

  • Nothing much has changed, just updating this for the new Atmosphere 0.10 release.
  • There is a known issue on all versions of sys-con regarding Xbox One controllers. if you update your Xbox One controller to the latest firmware, it stops working properly. Since you can't downgrade the firmware, I suggest you don't update your Xbox One controllers until a fix has been found.
  • Instructions:
    • Extract the zip file and copy the contents onto your SD card.
    • If you're not using Atmosphere, rename the atmosphere/ folder with the desired CFW name.
    • Reboot your Nintendo Switch.
    • If you're not using Atmosphere 0.10 for whatever reason, you have to rename the contents folder in the zip file back to titles folder.

v0.5.1 2019/11/25

  • Fixed multiple controllers being disconnected when disconnecting any controller.
  • Fixed the sysmodule crashing during sleep mode or eventually stopping recognizing controllers.
  • Fixed Dualshock 3 getting chaotic inputs when Dualshock 4 is connected.
  • Added an option to change the LED color of Dualshock 4 in config_dualshock4.ini: color_led. Optionally, if you want to turn LED off, set the color values to 0, 0, 0.

v0.5.0 2019/11/15

  • Added support for Dualshock 4.
    • NOTE: Due to firmware limitations, only one generation of Dualshock 4 can be recognized at a time. If you have a Dualshock 4 model "CUH-ZCT2E", you need to go to sdmc:/config/sys-con/config_global.ini and change the value of use_dualshock_2nd_generation to true.
  • Bonus feature: You can now customize controller colors! Head over to sdmc:/config/sys-con/ and modify the color values for each type of controller. Most controllers already have customized colors in place.

v0.4.2 2019/11/11

  • Fixed some Xbox One controllers being recognized, but not receiving any input. Let me know if this release breaks your controller.
  • Fixed original Xbox controllers not having correct input mapping.

v0.4.1 2019/11/10

  • Stopped LED blinking on Xbox 360 Wireless controllers (now shows up as top left).
  • Added an option to swap d-pad and left stick inputs in the config. simply set swap_dpad_and_lstick from false to true in your desired controller config file.

v0.4.0 2019/11/09

  • The sysmodule now detects generic XInput devices. I can't promise every single XInput device will work, I can only hope your controller manufacturer follows the XInput protocol to the dot.
  • Xbox 360 Wireless Receiver is partially supported! When I say partially, it means that the LED is still blinking and the app doesn't seem to detect controllers disconnect. However, it has full button support and allows to connect up to 4 controllers at once. The config for it is the same as the Xbox 360 Wired.

v0.3.0 2019/11/08

  • There is now a config folder for the sysmodule! You can find it at sdmc:/config/sys-con/ and modify the stick/trigger deadzones and remap inputs. All the config changes are updated in real time.
  • The log file has also been moved to the config folder.
  • Fixed an issue with some of the Microsoft Xbox controllers not connecting properly.
  • Xbox 360 and Dualshock 3 LEDs now no longer blink.
  • If you're having crashes or hangs when booting up a game, try turning off other sysmodules.

v0.2.3.1 2019/11/07

  • The 0.2.3 version had improper naming. Download this if 0.2.3 was not working for you.
  • Halves the memory used by the sysmodule.
  • [9.0.0+] If you're having freezes or crashes (error 2003-0008) when launching a game, try disabling other memory-intensive sysmodules (sys-ftpd, emuiibo). Or downgrade to 8.0.0.

v0.2.2 2019/11/06

  • This one goes out to those having issues with their 1st generation Xbox One controller.
  • Currently known issue on [9.0.0+]: The app uses too much memory resulting in freezing/crashing.

v0.2.1 2019/11/06

  • Added a small deadzone for all controllers to fix stick drifting.
  • Xbox One Sync Button now takes a capture.

v0.2.0 2019/11/05

  • It is possible to plug Xbox 360, Xbox One, and Dualshock 3 controllers into the dock and play. No rumble.

External links

Advertising: