Joy-Con: Difference between revisions
m →Colors: ...verified and added Hex-Values for Newly Released Pastel Colored Joy-Con (...Pastel-Pink, Pastel-Yellow, Pastel-Purple, & Pastel-Green) |
Clean up and merge in preparation for documentation |
||
| Line 1: | Line 1: | ||
Joy-Con is the name for the Switch's primary game controllers. The | Joy-Con is the name for the Switch's primary game controllers. The Joy-Con are internally called Ukyo (Left) and Sakyo (Right). | ||
= Hardware = | = Hardware = | ||
== Ukyo == | |||
{| class="wikitable" | {| class="wikitable" | ||
! | ! Component || Description | ||
|- | |- | ||
| | | SoC || Broadcom BCM20734 | ||
|- | |- | ||
| | | IMU || STMicroelectronics LSM6DS3H | ||
|- | |- | ||
| | | PMIC || Texas Instruments BQ24072 | ||
|- | |||
| Storage || Macronix International MX25U4033E 4 Mb CMOS Flash | |||
|} | |} | ||
= | == Sakyo == | ||
{| class="wikitable" | {| class="wikitable" | ||
! | ! Component || Description | ||
|- | |- | ||
| | | SoC || Broadcom BCM20734 | ||
|- | |- | ||
| | | MCU || STMicroelectronics STM32P411 | ||
|- | |||
| NFC || STMicroelectronics ST21NFCB | |||
|- | |||
| IMU || STMicroelectronics LSM6DS3H | |||
|- | |||
| PMIC || Texas Instruments BQ24072 | |||
|- | |||
| Storage || Macronix International MX25U4033E 4 Mb CMOS Flash | |||
|} | |} | ||
= Protocol = | = Protocol = | ||
| Line 295: | Line 297: | ||
|} | |} | ||
= | = Firmware = | ||
The firmware is stored inside the flash in Broadcom's PatchRAM format as follows: | |||
{| class="wikitable" border="1" | |||
{| class="wikitable" | |||
|- | |- | ||
! Offset | |||
! Size | |||
! Description | |||
|- | |- | ||
| | | 0x00 || 0x14 || Magic number?? | ||
|- | |- | ||
| | | 0x15 || 0x06 || Unique MAC Address of controller | ||
|- | |- | ||
| | | 0x3B3 || 0x04 || Offset to Factory Firmware | ||
|- | |- | ||
| | | 0x1FF4 || 0x08 || OTA Magic, if the controller is Over-The-Air updated. | ||
|- | |- | ||
| | | 0x1FFC || 0x04 || Offset to OTA Firmware, if OTA Magic is valid. | ||
|- | |- | ||
| | | 0x2000 || 0x1000 || PairingInfo | ||
|- | |- | ||
| | | 0x5000 || 0x1 || Shipment | ||
|- | |- | ||
| | | 0x6000 || 0x1000 || [[#FactoryConfiguration|FactoryConfiguration]] | ||
|- | |- | ||
| | | 0x8000 || 0x1000 || [[#UserCalibration|UserCalibration]] | ||
|} | |||
== FactoryConfiguration == | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Offset | |||
! Size | |||
! Description | |||
|- | |- | ||
| | | 0x00 || 0x10 || IdentificationCode | ||
|- | |- | ||
| | | 0x12 || 0x01 || [[#Type|Type]] | ||
|- | |- | ||
| | | 0x1B || 0x01 || FormatVersion | ||
|- | |- | ||
| | | 0x20 || 0x18 || [[#Cal1|Cal1]] | ||
|- | |- | ||
| | | 0x3D || 0x12 || [[#Cal2|Cal2]] | ||
|- | |- | ||
| | | 0x4F || 0x01 || Reserved | ||
|- | |- | ||
| | | 0x50 || 0x0D || [[#Design|Design]] | ||
|- | |- | ||
| | | 0x80 || 0x18 || [[#Model1|Model1]] | ||
|- | |- | ||
| | | 0x98 || 0x12 || [[#Model2|Model2]] | ||
|} | |||
=== Type === | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Value | |||
! Description | |||
|- | |- | ||
| | | 0x01 || JoyLeft | ||
|- | |- | ||
| | | 0x02 || JoyRight | ||
|- | |- | ||
| | | 0x03 || SwitchProController | ||
|- | |- | ||
| | | 0x04 || ([[HID_services#DeviceTypeInternal|DeviceType]] 4) | ||
|- | |- | ||
| | | 0x05 || ([[HID_services#DeviceTypeInternal|DeviceType]] 5) | ||
|- | |- | ||
| | | 0x06 || ([[HID_services#DeviceTypeInternal|DeviceType]] 6) | ||
|- | |- | ||
| | | 0x07 || LarkHvc1 | ||
|- | |- | ||
| | | 0x08 || LarkHvc2 | ||
|- | |- | ||
| | | 0x09 || LarkNesLeft | ||
|- | |- | ||
| | | 0x0A || LarkNesRight | ||
|- | |- | ||
| | | 0x0B || Lucia | ||
|- | |- | ||
| | | 0x0C || [12.0.0+] Lagon | ||
|- | |- | ||
| | | 0x0D || [13.0.0+] Lager | ||
|- | |- | ||
| | | 0x0E || [14.0.0+] ([[HID_services#DeviceTypeInternal|DeviceType]] 30) | ||
|- | |- | ||
| | | 0x21 || FiftyLeft ([[HID_services#DeviceTypeInternal|DeviceType]] 14) | ||
|- | |- | ||
| | | 0x22 || FiftyRight ([[HID_services#DeviceTypeInternal|DeviceType]] 18) | ||
|} | |||
=== Cal1 === | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Offset | |||
! Size | |||
! Description | |||
|- | |- | ||
| | | 0x00 || 0x18 || SixAxisSensorCalibrationValue | ||
|} | |||
=== Cal2 === | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Offset | |||
! Size | |||
! Description | |||
|- | |- | ||
| | | 0x00 || 0x09 || LeftAnalogStickCalibrationValue | ||
|- | |- | ||
| | | 0x09 || 0x09 || RightAnalogStickCalibrationValue | ||
|} | |||
=== Design === | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Offset | |||
! Size | |||
! Description | |||
|- | |- | ||
| | | 0x00 || 0x0C || [[#ControllerColor|ControllerColor]] | ||
|- | |- | ||
| | | 0x0C || 0x01 || [[#DesignVariation|DesignVariation]] | ||
|} | |||
==== ControllerColor ==== | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Offset | |||
! Size | |||
! Description | |||
|- | |- | ||
| | | 0x00 || 0x03 || Body color of controller in RGB Hex (see [[Joy-Con#Colors|Joy-Con Colors]]) | ||
|- | |- | ||
| | | 0x03 || 0x03 || Button color of controller in RGB Hex (see [[Joy-Con#Colors|Joy-Con Colors]]) | ||
|- | |- | ||
| | | 0x06 || 0x03 || Left grip color of controller in RGB Hex | ||
|- | |- | ||
| | | 0x09 || 0x03 || Right grip color of controller in RGB Hex | ||
|} | |||
==== DesignVariation ==== | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Value | |||
! Name | |||
|- | |- | ||
| | | 0x00 || LuciaJ, LagerJ | ||
|- | |- | ||
| | | 0x01 || LuciaE, LagerE | ||
|- | |- | ||
| | | 0x02 || LuciaU, LagerU | ||
|} | |||
=== Model1 === | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Offset | |||
! Size | |||
! Description | |||
|- | |- | ||
| | | 0x00 || 0x06 || SensorData | ||
|- | |- | ||
| | | 0x06 || 0x12 || AnalogStickModuleParam | ||
|} | |||
=== Model2 === | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Offset | |||
! Size | |||
! Description | |||
|- | |- | ||
| | | 0x00 || 0x12 || AnalogStickModuleParam | ||
|} | |||
== UserCalibration == | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Offset | |||
! Size | |||
! Description | |||
|- | |- | ||
| | | 0x10 || 0x18 || [[#UserCal1|UserCal1]] | ||
|- | |- | ||
| | | 0x28 || 0x18 || [[#UserCal2|UserCal2]] | ||
|} | |||
=== UserCal1 === | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Offset | |||
! Size | |||
! Description | |||
|- | |- | ||
| | | 0x00 || 0x02 || UserCalMagicNumber | ||
|- | |- | ||
| | | 0x02 || 0x09 || LeftAnalogStickCalibrationValue | ||
|- | |- | ||
| | | 0x0B || 0x02 || UserCalMagicNumber | ||
|- | |- | ||
|0x09 | | 0x0D || 0x09 || RightAnalogStickCalibrationValue | ||
|- | |- | ||
| | | 0x16 || 0x02 || UserCalMagicNumber | ||
|} | |||
=== UserCal2 === | |||
{| class="wikitable" border="1" | |||
|- | |- | ||
! Offset | |||
! Size | |||
! Description | |||
|- | |- | ||
| | | 0x00 || 0x18 || SixAxisSensorCalibrationValue | ||
|} | |} | ||
== Colors == | == Colors == | ||
HEX codes for the colors shown in the "Controllers" menu of the Switch UI can be found in a Joy-con SPI dump starting at offset 0x6050. Body color is first followed by button color and each is 3 bytes long. These values are able to be re-written with any HEX color value to make the Joy-cons show up as different colors in the UI. The following is a list of official HEX colors recovered from SPI dumps. | HEX codes for the colors shown in the "Controllers" menu of the Switch UI can be found in a Joy-con SPI dump starting at offset 0x6050. Body color is first followed by button color and each is 3 bytes long. These values are able to be re-written with any HEX color value to make the Joy-cons show up as different colors in the UI. The following is a list of official HEX colors recovered from SPI dumps. | ||
{| class="wikitable" | {| class="wikitable" | ||
! Developer Kit Joy-Con || Release || Body HEX || Button HEX | ! Developer Kit Joy-Con || Release || Body HEX || Button HEX | ||
| Line 580: | Line 617: | ||
| // *(Prize Awarded for Labo Contest - No Retail) // **(Available Japan Only) | | // *(Prize Awarded for Labo Contest - No Retail) // **(Available Japan Only) | ||
|} | |} | ||
Revision as of 21:42, 20 August 2023
Joy-Con is the name for the Switch's primary game controllers. The Joy-Con are internally called Ukyo (Left) and Sakyo (Right).
Hardware
Ukyo
| Component | Description |
|---|---|
| SoC | Broadcom BCM20734 |
| IMU | STMicroelectronics LSM6DS3H |
| PMIC | Texas Instruments BQ24072 |
| Storage | Macronix International MX25U4033E 4 Mb CMOS Flash |
Sakyo
| Component | Description |
|---|---|
| SoC | Broadcom BCM20734 |
| MCU | STMicroelectronics STM32P411 |
| NFC | STMicroelectronics ST21NFCB |
| IMU | STMicroelectronics LSM6DS3H |
| PMIC | Texas Instruments BQ24072 |
| Storage | Macronix International MX25U4033E 4 Mb CMOS Flash |
Protocol
The Joy-Con can communicate wirelessly over Bluetooth or through the rails over UART. This uses a Nintendo proprietary protocol called "Nwcp".
NwcpPacket
| Offset | Size | Description |
|---|---|---|
| 0x0 | 0x5 | HciHeader |
| 0x5 | 0x7 | NwcpHeader |
| 0xC | Variable | Data |
HciHeader
This is a 5-byte packet header used by Broadcom's HCI Control Protocol.
| Offset | Size | Description |
|---|---|---|
| 0x0 | 0x1 | PacketType (always 0x19) |
| 0x1 | 0x1 | CommandCode |
| 0x2 | 0x1 | GroupCode (always 0x03) |
| 0x3 | 0x2 | PacketLength |
CommandCode
| Value | Description |
|---|---|
| 0x1 | SendToDevice |
| 0x81 | ReceiveFromDevice |
NwcpHeader
| Offset | Size | Description |
|---|---|---|
| 0x0 | 0x1 | CommandType |
| 0x1 | 0x1 | DeviceCommand |
| 0x2 | 0x2 | DataSize |
| 0x4 | 0x1 | CommandResult |
| 0x5 | 0x1 | DataCrc (CRC8 over Data for DataSize bytes) |
| 0x6 | 0x1 | HeaderCrc (CRC8 over the previous 6 bytes) |
CommandType
| Value | Description |
|---|---|
| 0x91 | DeviceCommandToDevice |
| 0x92 | Hid |
| 0x94 | DeviceCommandFromDevice |
| 0x9A | |
| 0xA3 | |
| 0xA5 | Handshake |
DeviceCommand
| Value | Description |
|---|---|
| 0x01 | Inquiry |
| 0x02 | WriteChargerSettings |
| 0x03 | ReadChargerSettings |
| 0x04 | AttachmentEnable |
| 0x05 | IsAttachmentEnabled |
| 0x06 | GetBatteryVoltage |
| 0x07 | ReadWakeUpReason |
| 0x10 | CreateHidConnection |
| 0x11 | DisconnectHid |
| 0x12 | SetHidInterval |
| 0x13 | GetHidInterval |
| 0x18 | Pairing |
| 0x20 | UpdateUartBaudRate |
| 0x40 | Test |
HidCommand
| Value | Description |
|---|---|
| 0x01 | PairingOut |
| 0x02 | GetDeviceInfo |
| 0x03 | SetDataFormat |
| 0x04 | LRButtonDetection |
| 0x05 | Page |
| 0x06 | Reset |
| 0x07 | ClearPairingInfo |
| 0x08 | Shipment |
| 0x10 | SerialFlashRead |
| 0x11 | SerialFlashWrite |
| 0x12 | SerialFlashSectorErase |
| 0x20 | McuReset |
| 0x21 | McuWrite |
| 0x22 | McuResume |
| 0x24 | McuPollingEnable |
| 0x25 | McuPollingDisable |
| 0x28 | AttachmentWrite |
| 0x29 | AttachmentRead |
| 0x2A | AttachmentEnable |
| 0x2B | GetAttachmentInfo |
| 0x30 | SetIndicatorLed |
| 0x31 | GetIndicatorLed |
| 0x38 | SetNotificationLed |
| 0x40 | SensorSleep |
| 0x41 | SensorConfig |
| 0x42 | SensorWrite |
| 0x43 | SensorRead |
| 0x48 | MotorEnable |
| 0x50 | GetBatteryVoltage |
| 0x51 | WriteChargeSetting |
| 0x52 | ReadChargeSetting |
| 0x58 | ExtDevWrite |
| 0x59 | GetExtDevInfo |
| 0x5A | ExtDevPollingEnable |
| 0x5B | ExtDevPollingDisable |
| 0x5C | ExtDevInFormatConfig |
| 0x5D | |
| 0x60 | InternalAttachmentWrite |
| 0x61 | |
| 0x62 | InternalAttachmentEnable |
| 0x63 | InternalAttachmentPollingEnable |
| 0x64 | InternalAttachmentPollingDisable |
| 0x7A | AddButtonPlayData |
| 0x7B | StartStopButtonPlayData |
| 0x80 | Ack |
| 0x81 | PairingIn |
| 0x82 | DeviceInfo |
| 0x83 | LRButtonElapsedTime |
| 0x90 | SerialFlashData |
| 0xA0 | McuData |
| 0xA8 | AttachmentData |
| 0xA9 | AttachmentInfo |
| 0xAA | InternalAttachmentRead |
| 0xB0 | IndicatorLed |
| 0xC0 | SensorData |
| 0xD0 | BatteryVoltage |
| 0xD8 | ExtDevRead |
| 0xD9 | ExtDevInfo |
Firmware
The firmware is stored inside the flash in Broadcom's PatchRAM format as follows:
| Offset | Size | Description |
|---|---|---|
| 0x00 | 0x14 | Magic number?? |
| 0x15 | 0x06 | Unique MAC Address of controller |
| 0x3B3 | 0x04 | Offset to Factory Firmware |
| 0x1FF4 | 0x08 | OTA Magic, if the controller is Over-The-Air updated. |
| 0x1FFC | 0x04 | Offset to OTA Firmware, if OTA Magic is valid. |
| 0x2000 | 0x1000 | PairingInfo |
| 0x5000 | 0x1 | Shipment |
| 0x6000 | 0x1000 | FactoryConfiguration |
| 0x8000 | 0x1000 | UserCalibration |
FactoryConfiguration
| Offset | Size | Description |
|---|---|---|
| 0x00 | 0x10 | IdentificationCode |
| 0x12 | 0x01 | Type |
| 0x1B | 0x01 | FormatVersion |
| 0x20 | 0x18 | Cal1 |
| 0x3D | 0x12 | Cal2 |
| 0x4F | 0x01 | Reserved |
| 0x50 | 0x0D | Design |
| 0x80 | 0x18 | Model1 |
| 0x98 | 0x12 | Model2 |
Type
| Value | Description |
|---|---|
| 0x01 | JoyLeft |
| 0x02 | JoyRight |
| 0x03 | SwitchProController |
| 0x04 | (DeviceType 4) |
| 0x05 | (DeviceType 5) |
| 0x06 | (DeviceType 6) |
| 0x07 | LarkHvc1 |
| 0x08 | LarkHvc2 |
| 0x09 | LarkNesLeft |
| 0x0A | LarkNesRight |
| 0x0B | Lucia |
| 0x0C | [12.0.0+] Lagon |
| 0x0D | [13.0.0+] Lager |
| 0x0E | [14.0.0+] (DeviceType 30) |
| 0x21 | FiftyLeft (DeviceType 14) |
| 0x22 | FiftyRight (DeviceType 18) |
Cal1
| Offset | Size | Description |
|---|---|---|
| 0x00 | 0x18 | SixAxisSensorCalibrationValue |
Cal2
| Offset | Size | Description |
|---|---|---|
| 0x00 | 0x09 | LeftAnalogStickCalibrationValue |
| 0x09 | 0x09 | RightAnalogStickCalibrationValue |
Design
| Offset | Size | Description |
|---|---|---|
| 0x00 | 0x0C | ControllerColor |
| 0x0C | 0x01 | DesignVariation |
ControllerColor
| Offset | Size | Description |
|---|---|---|
| 0x00 | 0x03 | Body color of controller in RGB Hex (see Joy-Con Colors) |
| 0x03 | 0x03 | Button color of controller in RGB Hex (see Joy-Con Colors) |
| 0x06 | 0x03 | Left grip color of controller in RGB Hex |
| 0x09 | 0x03 | Right grip color of controller in RGB Hex |
DesignVariation
| Value | Name |
|---|---|
| 0x00 | LuciaJ, LagerJ |
| 0x01 | LuciaE, LagerE |
| 0x02 | LuciaU, LagerU |
Model1
| Offset | Size | Description |
|---|---|---|
| 0x00 | 0x06 | SensorData |
| 0x06 | 0x12 | AnalogStickModuleParam |
Model2
| Offset | Size | Description |
|---|---|---|
| 0x00 | 0x12 | AnalogStickModuleParam |
UserCalibration
| Offset | Size | Description |
|---|---|---|
| 0x10 | 0x18 | UserCal1 |
| 0x28 | 0x18 | UserCal2 |
UserCal1
| Offset | Size | Description |
|---|---|---|
| 0x00 | 0x02 | UserCalMagicNumber |
| 0x02 | 0x09 | LeftAnalogStickCalibrationValue |
| 0x0B | 0x02 | UserCalMagicNumber |
| 0x0D | 0x09 | RightAnalogStickCalibrationValue |
| 0x16 | 0x02 | UserCalMagicNumber |
UserCal2
| Offset | Size | Description |
|---|---|---|
| 0x00 | 0x18 | SixAxisSensorCalibrationValue |
Colors
HEX codes for the colors shown in the "Controllers" menu of the Switch UI can be found in a Joy-con SPI dump starting at offset 0x6050. Body color is first followed by button color and each is 3 bytes long. These values are able to be re-written with any HEX color value to make the Joy-cons show up as different colors in the UI. The following is a list of official HEX colors recovered from SPI dumps.
| Developer Kit Joy-Con | Release | Body HEX | Button HEX |
|---|---|---|---|
| Black / ブラック | 2015.10.16 | #313131 | #0F0F0F |
| Standard Retail Joy-Con Color | Release | Body HEX | Button HEX |
| Gray / グレー | 2017.03.03 | #828282 | #0F0F0F |
| Neon Red / ネオンレッド | 2017.03.03 | #FF3C28 | #1E0A0A |
| Neon Blue / ネオンブルー | 2017.03.03 | #0AB9E6 | #001E1E |
| Neon Yellow / ネオンイエロー | 2017.06.16 | #E6FF00 | #142800 |
| Neon Green / ネオングリーン | 2017.07.21 | #1EDC00 | #002800 |
| Neon Pink / ネオンピンク | 2017.07.21 | #FF3278 | #28001E |
| Red / レッド | 2017.10.27 | #E10F00 | #280A0A |
| Blue / ブルー | 2019.10.04 | #4655F5 | #00000A |
| Neon Purple / ネオンパープル | 2019.10.04 | #B400E6 | #140014 |
| Neon Orange / ネオンオレンジ | 2019.10.04 | #FAA005 | #0F0A00 |
| White / ホワイト | 2021.10.08 | #E6E6E6 | #323232 |
| Pastel Pink / パステルピンク | 2023.06.30 | #FFAFAF | #372D2D |
| Pastel Yellow / パステルイエロー | 2023.06.30 | #F5FF82 | #32332D |
| Pastel Purple / パステルパープル | 2023.06.30 | #F0CBEB | #373037 |
| Pastel Green / パステルグリーン | 2023.06.30 | #BCFFC8 | #2D322D |
| Special Edition Joy-Con Color | Release | Body HEX | Button HEX |
| Nintendo Switch Gray Joy-Con / Nintendo Switch グレー | 2017.03.03 | #828282 | #0F0F0F |
| Nintendo Switch Neon-Blue Left Joy-Con / Nintendo Switch ネオンブルー・ネオンレッド | 2017.03.03 | #0AB9E6 | #001E1E |
| Nintendo Switch Neon-Red Right Joy-Con / Nintendo Switch ネオンブルー・ネオンレッド | 2017.03.03 | #FF3C28 | #1E0A0A |
| Splatoon 2 Edition Neon-Green Left Joy-Con / スプラトゥーン2 | 2017.07.21 | #1EDC00 | #002800 |
| Splatoon 2 Edition Neon-Pink Right Joy-Con / スプラトゥーン2 | 2017.07.21 | #FF3278 | #28001E |
| Super Mario Odyssey Edition Red Joy-Con / スーパーマリオ オデッセイ | 2017.10.27 | #E10F00 | #280A0A |
| Super Smash Bros. Ultimate Edition Gray Joy-Con / 大乱闘スマッシュブラザーズ | 2018.11.02 | #828282 | #0F0F0F |
| Pokémon: Let's Go! Edition Eevee-Brown Left Joy-Con / ポケットモンスター Let's Go! イーブイ | 2018.11.16 | #C88C32 | #281900 |
| Pokémon: Let's Go! Edition Pikachu-Yellow Right Joy-Con / ポケットモンスター Let's Go! ピカチュウ | 2018.11.16 | #FFDC00 | #322800 |
| *Nintendo Labo Creators Contest Edition "Cardboard"-Colored Joy-Con | 2018. (...?) | #D7AA73 | #1E1914 |
| **Dragon Quest XI S Lotto Edition Royal-Blue Joy-Con / ドラゴン クエスト XI S (ロト版) | 2019.09.27 | #1473FA | #00000F |
| **Disney Tsum Tsum Festival Edition Neon-Purple Left Joy-Con / ディズニー ツムツム フェスティバル | 2019.10.10 | #B400E6 | #140014 |
| **Disney Tsum Tsum Festival Edition Neon-Pink Right Joy-Con / ディズニー ツムツム フェスティバル | 2019.10.10 | #FF3278 | #28001E |
| Animal Crossing: New Horizons Edition Pastel-Green Left Joy-Con / あつまれ どうぶつの森 | 2020.03.13 | #82FF96 | #0A1E0A |
| Animal Crossing: New Horizons Edition Pastel-Blue Right Joy-Con / あつまれ どうぶつの森 | 2020.03.13 | #96F5F5 | #0A1E28 |
| Fortnite Wildcat Edition Yellow Left Joy-Con / フォートナイト ワイルドキャット(山猫) | 2020.10.30 | #FFCC00 | #1A1100 |
| Fortnite Wildcat Edition Dark-Blue Right Joy-Con / フォートナイト ワイルドキャット(山猫) | 2020.10.30 | #0084FF | #000F1E |
| Mario Red × Blue Edition Red Joy-Con / マリオ レッド × ブルー | 2021.02.12 | #F04614 | #1E1914 |
| Monster Hunter Rise Edition Gray Joy-Con / モンスターハンターライズ | 2021.03.26 | #818282 | #0E0F0F |
| Fortnite Fleet Force Edition Dark-Blue Left Joy-Con / フォートナイト フリート フォース(力の艦隊) | 2021.06.04 | #0084FF | #000F1E |
| Fortnite Fleet Force Edition Yellow Right Joy-Con / フォートナイト フリート フォース(力の艦隊) | 2021.06.04 | #FFCC00 | #1A1100 |
| Legend of Zelda: Skyward Sword Edition Dark-Blue Left Joy-Con / ゼルダの伝説 スカイウォードソード | 2021.07.16 | #2D50F0 | #1E0F46 |
| Legend of Zelda: Skyward Sword Edition Dark-Purple Right Joy-Con / ゼルダの伝説 スカイウォードソード | 2021.07.16 | #500FC8 | #00051E |
| Nintendo Switch OLED Edition White Joy-Con / Nintendo Switch (有機ELモデル) ホワイト | 2021.10.08 | #E6E6E6 | #323232 |
| Splatoon 3 OLED Edition Blue-Gradient Left Joy-Con / (有機ELモデル) スプラトゥーン3 | 2022.08.26 | #6455F5 | #28282D |
| Splatoon 3 OLED Edition Neon-Yellow-Gradient Right Joy-Con / (有機ELモデル) スプラトゥーン3 | 2022.08.26 | #C3FA05 | #1E1E28 |
| Pokémon: Scarlet × Violet OLED Edition Scarlet Left Joy-Con / (有機ELモデル) ポケットモンスター スカーレット・バイオレット | 2022.11.04 | #F07341 | #322D1E |
| Pokémon: Scarlet × Violet OLED Edition Violet Right Joy-Con / (有機ELモデル) ポケットモンスター スカーレット・バイオレット | 2022.11.04 | #9650AA | #32322D |
| Legend of Zelda: Tears of the Kingdom Edition Gold Joy-Con / (有機ELモデル) ゼルダの伝説 ティアーズ オブ ザ キングダム | 2023.04.28 | #D2BE69 | #32322D |
| // *(Prize Awarded for Labo Contest - No Retail) // **(Available Japan Only) |