OpenXHD

OpenXHD

@openxhd.org

The open source HDMI mod coming soon to an Xbox near you @ https://openxhd.org

164 followers352 following23 posts

Burnout 3: Takedown may not be the best game to showcase video clarity due to the game's intentional use of blurring effects but it sure is fun!

If you are near Hamilton, Ontario today; stop by the local game swap to see OpenXHD on display in person. A demo unit will be on display side by side with analog video output to HDMI with a Chimeric adapter all on the same display for a true apples to apples comparison.

Harcroft@harcroft.ca

I will be at a small game swap in Hamilton, ON today with an OpenXHD demo system with side by side dual analog+OpenXHD HDMI video out, S/PDIF over mini TOSLink audio out, and debug into on screen from the OpenXHD itself. Come buy some games and see the difference an all digital solution makes!

Outputting HDMI is one thing, but doing it *correctly* is another thing entirely, and how do you know you've done it correctly? By building yet another board! This is our "test sink" which receives an HDMI signal, decodes it, and displays info about the incoming video stream and metadata.

Video mode switching demo using Evox M8+ bios which has stock 5838 BIOS video modes. Captured using a dual input Datapath VisionAV-HD scaled to 1280x720 with OBS. OpenXHD top, YPbPr through a THS7376IPWR video amp bottom. We aim to be BIOS agnostic so you can use your favorite bios.

Halo 2 HD 1.1 on Evox M8+, same capture method as above. These were captured from an Original Xbox 1.2/3 motherboard, conexant video encoder, running an OpenXHD all digital HDMI mod installed above the AV port. The original video output remains on the console and is fully usable alongside OpenXHD.

When working out the kinks in handling the pixel bus clock things went a bit off the rails. Don't worry, we fixed it :)

Not a fan of color? No problem! Get yourself a black PCB, flex, and installation cables. The 4 pin TRRS jack is wired for UART for debugging, UART will available in public FW builds. The wings on the 1.6 flex cable are a quality of life improvement to help align the FPC around the resistor arrays.

One of the biggest challenges early on in firmware development was 1.6 support (there is no datasheet for the proprietary Xcalibur encoder). We used a homebrew app to cycle through all possible video modes with a logic analyzer hooked up the SMBus interface. Worth noting there are over 100 modes!

Once we had all the modes, we put them through some scripts to figure out which registers changed for "similar" modes, and then put all those registers in a spreadsheet. Some color coding and we had a couple registers narrowed down, and added to the code.

Final notes about the 4-pin OpenXHD port - JP5 is a 1.25mm vertical through hole picoblade connector - traces are electrically isolated from the rest of the board - traces were designed to have a roughly 75Ω impedance for analog video signals - the 3.5mm port, 4 pin and S/PDIF LED are all optional

Early in the design process we wanted more I/O on OpenXHD. A 3.5mm jack and TOSlink port would not fit next to the HDMI port, so we started with a combo 3.5mm TRS/Mini TOSlink port. That was quickly replaced with a 3.5mm TRRS jack and a red LED firing at the back end of it for mini TOSlink S/PDIF.

What can you do with the 3.5mm port? Anything you can dream up! Testers and FW devs have used the port for: - S/PDIF digital audio out - a second video out with YPbPr component video - stereo audio out - a UART port for debugging OpenXHD - an STLink programming port for OpenXHD

Early in the project we decided to migrate from Ryzee119's 20 pin flex cable design, to the standard 24 pin connection the community was already using. This is from mid 2024 using a very early flex cable with overly thick and too densely packed traces causing pixel bus crosstalk. < HDMI | YPbPr >

It has taken around 15 iterations to get to the current 1.0-1.4 flex cable. The 1.6 flex cable took 3 iterations. Top is the early flex cable design from 2024 which is causing the video issues above. Bottom is the current design,with numerous quality of life improvements over existing FPC designs.

Two iterations and a couple months later in 2024, the crosstalk is gone, the pixel data is good! This type of PbP testing is very crude, so we will go more into our the tooling for our testing in a future post. We will also have higher quality captures in future posts. This time <-YPbPr | HDMI->

After many iterations and testing we have settled on a 12mm riser above the AV port screw mounts for users who want to install OpenXHD and keep their AV port. These and other 3D models will be available for free when OpenXHD releases. The "Sidequest Prototype" flexes are for an upcoming project...

Preview boards and installation kits are being prepared and sent out to firmware developers and testers.

You are up to date.