XboxHD+ Update

Posted by Dustin Holden on

Hey, guess what? It's Dustin from MakeMHz with another update! We're quickly approaching July 1st and will begin shipping kits very soon.

Since our last update a lot has happened so here's a quick update. (The tl;dr of this post)

  • Extended ordering window until June 1st.
  • All components and parts have been ordered. With all hard to find components, due the global chip shortage, in hand.
  • Validated CPU upgraded Xbox systems with new QSB design.
  • Complete rewrite of kernel patch using project kpatcher.
  • Complete rewrite of the configuration app with lvgl and online auto-updating functionality.

XboxHD+ Orders Open Again!

Back at the end of April we had to make the very hard decision to limit the number of orders for the next batch of XboxHD+ kits. Due to the global chip shortage we had only received a partial order of some of the critical and hard to find components needed. The last thing we wanted was to oversell.

A few days before May 12th, the original end date, we had to close orders. Today, I'm happy to say that we were able to acquire enough components to reopen orders for an additional 100 kits at an adjusted shipping begin date of July 30th. These kits will not last and will close on June 1st.

XboxHD+ Components Ordered

This won't be the last time you hear 'global chip shortage', but it's very real and it's hitting us hard. If you follow other hobby electronic companies you've probably seen a lot about delays and stock issues.

We're very happy to say that all components have been ordered and all critical parts are already in-hand. With that, we're fully on track, as long as there's no unexpected delivery delays.

XboxHD+ QSB Validated for CPU Upgraded Systems

More power and signal filtering? Yes. Is there room for more? Nope.

 

One issue that caught us off guard from the original XboxHDMI kits was the unexpected compatibility issues with N64freak's CPU upgraded 1.0 and 1.1 systems. After receiving a board on loan, huge thanks to community member Alpha, work began on identifying the issue.

The Xbox shares a power plane between the CPU and GPU/encoder section. When the CPU is changed, or the system has failing capacitors, noise can be introduced into the GPU's voltage reference. When an unstable voltage reference is applied to the GPU, it can affect clock signals going to the encoder or the proper triggering of CLKO from the onboard encoder. If the system fails to lock onto a stable CLKO from the encoder on boot, it will FRAG or freeze post-boot.

On later revision Xbox motherboards, proper transmission termination on the GPU's CLK output was added, along with additional GPU voltage reference decoupling capacitors.

With the additional noise from the CPU upgrade and the load of the XboxHDMI, the system would be unstable in most instances. And even with a full system recap, it was not enough to correct the issue.

The redesigned QSB, shipping with XboxHD+ kits, injects a cleaner voltage to the GPU/encoder section via a ultra-low noise LDO. In addition, proper CLK signal termination is added, and an overkill amount of filtering and decoupling is used. This has been shown to fix all power noise-related issues on 1.0 and 1.1 motherboards.

Project kpatcher

Hook, load, and execute. Beautiful and simple early code execution in the Microsoft kernel.

 

When we started this project, the goals and expectations were pretty simple. It was about creating a simple digital to digital video output mod for Original Xbox enthusiasts.

A lot has changed since then. This solution is no longer limited to 1:1 video output and instead is leveraging the built-in video output scaler of the Nvidia NV2A to act as our own polyphase scaler.

With that comes changes via patches to the Xbox kernel. Not only have we reimplemented all of the kernel level video output logic to allow for full control of the video output scaler, but we've also placed select code hooks to work around video output issues and other oversights left in by game publishers and Microsoft.

But not everyone has the time or knowledge to patch the kernel and repack the BIOS for every update, right? Right! And that's why we've started the kpatch project.

The kpatch project is a very light weight and portable framework that's very similar in goals to the well-known Xbox softmodding tool known as nkpatcher. Instead, it is in the form of a kernel patch that's executed very early in the Xbox boot process. The patch executes and gains full system control right after the kernel is unpacked into memory and allows for us to dynamically load executable code from the hard drive to perform any desired operation 'pre-boot', such as patching.

With this method, the patch loads kpatch.bin from the harddrive and executes the XboxHDMI/XboxHD+ logic for detecting the device and applying the necessary patches. This allows us to easily and completely update the patch logic by replacing the kpatch.bin automatically during the online update function of the configuration app without the user having to do anything.

New XboxHD+ Configuration App

Is there any love for the configuration app? Yes! With a huge thanks to Ryzee119 and their port of lvgl to the Xbox, the configuration app has been completely rewritten and is nearing completion. A full dedicated post will be written in the future covering all of the features and changes.

Conclusion

If you made it this far, thank you! None of this would have been possible without the support from our users and community members.

We look forward to the future and everything that the XboxHD+ has to offer.

Thanks,
Dustin