project_S - GCCPCB2 / Model S


project_S, the GCCPCB2, is a fully featured circuit board for custom controllers, designed with project_MX and project_B in mind. After finalizing the design in May 2020, I assembled and sold about 30 of them over the summer.

Going into 2021, I hope to place a large order with a fab that can assemble the entire board to reduce the time required to fulfill each order.


Alpha1

This is the first project_S prototype, retroactively named Alpha1.

Originally I planned to use the 32u4-MU microcontroller, but JLCPCB who assembled most of the SMT components didn't have it in stock.

I attempted to solder it myself, but the 32u4-MU's QFN package proved to be too difficult with just a soldering iron.

I decided to redesign the board using the 32u4-AU which uses a TQFP package instead. This chip was in stock on JLC, but even if it wasn't, I am able to solder that chip easily.


Alpha2

The Alpha2 prototype’s only change was switching the 32u4 model, since I never finished an Alpha1 board to find any other issues.

The top board shows the components of project_S that JLC is able to assemble for me, which includes the microcontroller, resistors, capacitors, diodes, the crystal oscillator, a reset switch, the power boosting circuit, and the GameCube data level shifting circuit.

The bottom board has the rest of the components which I have to assemble, including the USB-C port, I/O pin headers, I/O screw terminals, the Brook board USB-A passthrough, and the USB multiplexer labeled U2 which JLC has never had in stock.

This board had two major issues. I had the USB multiplexer’s control lines backwards, and the Brook 20 pin header was too close to the other components for a ribbon cable to fit on it.


Alpha3

For the Alpha3 board, I fixed the two major issues found on Alpha2: the control lines on the USB multiplexer and the location of the Brook 20 pin header.

I also removed three of the I/O pins that weren’t necessary, added a decoupling capacitor for the USB MUX, and switched which pin was controlling the MUX.


Beta1

The Beta1 board ended up having the final circuit. The changes between Alpha3 and Beta1 were removing the USB MUX debug header, hard wiring the MUX control line to pin 11, and adding a pulldown resistor to the MUX control line so that if the microcontroller pin is floating (such as while programming the board), the multiplexer will route the microcontroller through the USB-C port.


Release - v2.0

This is the first finished board design, v2.0. The only difference since the Beta1 version is adding labels in front of the screw terminals.


Release - v2.1

v2.1 was the first version to be totally assembled by a PCB manufacturer. The only changes since v2.0 were renaming the board to the Model S, and changing the I/O connectors to be parts that the PCB manufacturer had in stock.


Release - v2.2

v2.2 changed the way in which the USBC port is mounted to the Model S. Instead of mounting the port directly to the main PCB, it is now mounted on a separate PCB named the Model U.

The Model U can either be socketed onto the Model S via pin headers and sockets, or it can be soldered directly to the Model S with just pin headers.

The only other change for v2.2 is changing the voltage boost IC, since the old one was no longer in stock.


Release - v2.3

v2.3 only changed the USB multiplexer from the VSSOP variant to the UQFN variant of the TS3USB30e, once again due to the former running out of stock.

Here you can see what the Model U looks like when it is soldered to the Model S with just pin headers.

Previous
Previous

Glyph

Next
Next

project_MX