Skip to the content
PCBKitNew board
2 layers28.9 × 21.9 mmClassic+, the printed circuit board in 3D

Wii Classic Controller and Nunchuk emulator.

Size
28.9 × 21.9 mm
Copper layers
2
Thickness
1.6 mm
Parts
43
Nets
43
Pads
109
Tracks, vias
253, 29
Pours
1
Routed
Yes
KiCad
KiCad 4
Created
5 Jul 2018
Updated
20 May 2019

Overview

Classic+ is an open-source printed circuit board by JSnowden33, from the JSnowden33/ClassicPlus repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 28.9 × 21.9 mm with 43 parts on 43 nets, routed with 253 tracks and 29 vias.

It is built around the PIC16F18875-E/P and LSM6DSO. Its parts include 29 connectors, 4 capacitors, 4 resistors and 2 ICs. It belongs with the PIC boards of this library.

Main components

2

README

README.md

Classic+

Classic+ is a hardware emulator that replaces the Wii Classic Controller and Nunchuk.

Classic+

Usage

Classic+ normally operates as a Classic Controller. Nunchuk mode can be enabled at any time by connecting the MD pin to GND. The device can be temporarily disabled by connecting the EN pin to GND. The SDA, SCL, and DET pins should be connected to a Wii Remote expansion port. Unofficial Wii Remotes may not be supported.

The Wii Remote IR camera can be emulated using the right joystick only in Nunchuk mode. This feature is only supported on non-TR Wii Remotes. The real IR camera must be removed from the Wii Remote before using IR camera emulation. Sensitivity adjustment is available in the homebrew app.

Soldering the accelerometer IC is optional. Without it, Nunchuk mode will report neutral values.

Classic+ works with Wii Remotes and SNES Classic. NES Classic support is untested.

PCBs can be ordered here: https://oshpark.com/shared_projects/poSQyyw2

Updating

Place update.hex from the Firmware folder on the root of an SD card or USB storage device. Run the Wii homebrew app with a Classic+ board connected to a Wii Remote and select "Update Classic+". Note that the update process can take up to 10 minutes.

Safe Mode

Safe mode can be enabled by holding the X and Y buttons when the Classic+ powers on. Safe mode only supports updating through the homebrew app. Buttons, joysticks, and calibration will not work.

Programming

Flash the pre-compiled firmware.hex using MPLAB IPE with a PICkit 3.

Compiling

Make a project in MPLAB X IDE for PIC16F18876 with the XC8 compiler. The Bootloader and Main Program must be compiled as separate projects and flashed onto the same device using the code offset and Preserve Program Memory features or by manually combining the compiled .hex files.

Parts

43
QtyValueFootprintReferences
28TEST_1PClassic:Test_PadJ1, J2, J10, J11, J12, J13, J14, J15, J16, J17, J18, J19, J20, J21, J22, J23 +12
4CClassic:C_0603C1, C2, C3, C5
4RClassic:R_0603R1, R2, R3, R4
1CONN_01X06Classic:Pin_Header_Straight_1x06_Pitch2.54mmJ7
1LSM6DSClassic:LGA-14_3x2.5mm_Pitch0.5mmU2
1PIC16F18875Classic:QFN-40-1EP_5x5mm_Pitch0.4mmU1

The 39 most common of 43 parts.

Questions

How big is the Classic+ PCB?

It measures 28.9 × 21.9 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Classic+ use?

43 parts, built around the PIC16F18875-E/P and LSM6DSO. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Classic+ KiCad files?

From the JSnowden33/ClassicPlus repository on GitHub, at the commit this page was made from: the board is Hardware/Classic+.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Classic+ design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers166.4 × 124.5 mmFirefighter bot, the printed circuit board in 3D

    Firefighter bot

    Yourself1011/firefighter-bot

    31 partsBSD-3-Clause
  • 2 layers35 × 50 mmImu rc hand unit, the printed circuit board in 3D

    Imu rc hand unit

    DimitriOnLSD/imu-rc

    Gesture-based RC car controller using ESP32-S3, BLE, LSM6DSO IMU, OLED display, and LiPo battery with USB-C charging.

    76 parts7MIT
  • 4 layers23.8 × 36.3 mmHaptic knob, the printed circuit board in 3D

    Haptic knob

    wirano/haptic-knob

    70 parts3
  • 4 layers70.1 × 40 mmCARP, the printed circuit board in 3D

    CARP

    aweeri/Control-Avionics-RP2350

    Control Avionics RP2350 [CARP] is a compact system designed specifically for operating small scale sounding rockets.

    158 parts2
  • 4 layers55 × 154.1 mmGPS module, the printed circuit board in 3D

    GPS module

    Dizzerin/Rocket-Flight-Data-Computer

    This project uses an STM32H743VGT6 MCU along with some innertial measurement units (IMU)s and barometric pressure sensors to and an SD card to record flight data from a model rocket and for later analysis, graphing, and…

    161 parts1
  • 4 layers85 × 55 mmServo Test Board v4, the printed circuit board in 3D

    Servo Test Board v4

    DoggeBoi/Servo_PCBs

    Collection of proof of consept and "production" PCBs

    115 parts1MIT
  • 2 layers64.9 × 33 mmJazzhands main, the printed circuit board in 3D

    Jazzhands main

    wearpants/jazzhands-hardware

    A small multi-PCB handheld keyboard for chording style input.

    44 parts1