modzvilleusa / Modxo-PCB-for-Rp2040-tiny

Modxo PCB for Rp2040 tiny
GNU General Public License v3.0
63 stars 3 forks source link

Modxo Carrier board for use with Waveshare rp2040-tiny or rp2040-zero

Download the latest Gerbers and BOM from the releases page.

IMG_1253

The board has been updated to use the latest Modxo 1.0 or PrometheOS firmware.

https://github.com/Team-Resurgent/Modxo/releases/tag/latest

For flashing the firmware, check section 3. Flashing Firmware here

https://github.com/Team-Resurgent/Modxo

Assembly

In order to use the RGB led output, You will need to run a wire from the bottom right pad of the RGB led to the RGB pad on the PCB like so.

IMG_1255

Installation (1.0 - 1.4)

Remove the following pin from the pinheader. I like to use a pair of flush cutters to push the pin out from the bottom then use the flush cutters to grab the pin and pull it out from the top.

IMG_1243 IMG_1241 IMG_1238

Solder the pinheader to the xbox lpc port, plug in to modxo adapter board and solder a wire from D0 on the xbox motherboard to the D0 pad on the Modxo adapter. These vias are quite weak, I recommend 30awg kynar single core and tacking the wire to the board with some uv resin. If the wire gets snagged it can easily pull up the via along with the trace it's connected to. The uv resin will protect the joint in the event the wire gets snagged.

d0

Installation (1.6)

For 1.6 you will need to do an LPC rebuild along with lframe rebuild like you would for an Open Xenium install. The lpc rebuild should be like this. Credit to reddit user u/strictlyfocused02 for this image of very clean lpc rebuild wiring.

lpc_rebuild_strictlyfocused02

1.6 is unique in that the 5v line of the LPC is always active when the console is plugged in. This is no good since the lcd and rgb lighting both run off of 5v. Therefore we need to remove the 5v pin from the pinheader and pull 5v from elsewhere.

Remove the following pin from the pinheader.

IMG_1250

Now we're going pull 5v from the vreg near the top of the 1.6 board here. I recommend using 26 or 28awg

IMG_1249

Now wire the other end the to 5v input pad on the adapter board here.

IMG_1251

LCD support.

PLEASE NOTE! - The current public release (at the time of writing 1.4.0) of PrometheOS does not have support for LCD or RGB led output. I've tested a private build in which it is indeed working. However if you're interested in building these specifically for those features, I'd recommend waiting until they're added to the public release of PrometheOS.

For an lcd you will need to use a spi2par adapter similar to OpenXenmium. The spi2par code has been tweaked for modxo, you will want to flash the spi2par firmware from here and follow the wiring diagram. I will be making a custom spi2par board soon that uses the same connectors as this modxo board to make the install easier.

https://github.com/Team-Resurgent/ModxoLegacyLCD/blob/main/ArdruinoProMicro/README.md

Pinout

This board was designed with the latest Modxo 1.0 pinout for rp2040-zero / rp2040-tiny

RP2040_Zero_pinout

Here are the pinouts for the various connectors. for expansion boards, we've decided to do a 1:1 pinout which means the cables will have inverted connectors. If you would like to design an add on board, please keep this as a standard.

LCD Pinout

lcd pinout

RGB pinout

RGB_pinout

I2C pinout

i2c pinouts

Preassembled adapters

If you'd like to get one of these adapters prebuild (minus the rp2040-tiny) you can grab one from my shop here

https://modzvilleusa.com/products/xbox-modxo-adapter-for-rp2040-tiny