2019-11-09, 15:00
Hey guys,
This is something that I've wanted to do for a long time but I never really got around to it for various reasons - but its finally happening. This thread is going to be a build log, because I know if I don't start it now, all you will get is a couple of photos of a finished build. I'm still waiting on parts to come and I have alot of other things going on so it will probably take a while.
Why am I doing this? The OG Xbox rocked our world - we still call the media player 'the xbox' to this day. After it was modded it became a media powerhouse that was way ahead of its time. Loading games off the HDD, emulators and of course, XBMP. Unfortunately, due to the march of technology, it had to be retired. With my s912 box giving me headaches and the board I wanted was finally back in stock, I decided it was time to start this project and get the Xbox back into the lounge room.
The hardware I will be using is a Odroid H2. I chose this because of the Intel GPU which has great support under Linux, with HDR support coming soon + the x86 CPU, which outperforms ARM boxes and opens up more software possibilities, such as emulators, Firefox, Steam and Project M visualisations (its not a media player if it doesn't have Project M!). The board has 2 video outs (HDMI2.0 + DP++) and with a passive DP to HDMI adaptor the DP++ port becomes a HDMI port which allows me to send 4k60 video to my TV and send HD passthrough audio to my HDMI 1.4 AVR at the same time. The board runs cool, has an external PSU and is small which will allow me to integrate a few things into the case and keep it uncluttered and quiet at the same time. I did think about a mini-itx board, but the H2 has almost everything I need at a reasonable price.
The plan is to keep the outside fairly stock. I'm not going to use an optical drive, so the DVD faceplate will be attached to the case. The LED will be changed to white and the front buttons will be used for power and reset. The smaller button as a power imprint and the larger one has an eject imprint and I'm going to fill those up, paint them a similar colour and leave them blank, because I want to use the big button for power. I though about attaching power + reset decals to the buttons, but I don't think that's really that important as 99% of the time a remote will be used to power it on. The left two controller ports will be covered with some smoked acrylic, with a IR receiver hiding behind one and I did think about putting a headphone port on the other, but I've never had the need for one and I have a USB soundcard or a USB DAC + amp that can be used if I ever do need it. The right two controller ports will be a USB 2 and 3 port, which again I don't often need, but they'll be handy for the occasional USB drive, wired controllers and charging the DS3 controllers I'll be using with it. I did think about adding some kind of Kodi branding to the front, but I think the textured surface would make it difficult to get a good finish, so I'll probably skip that.
Inside will be the board, 2x 4gb RAM sticks, a 60gb SSD for the OS and a 2.5" 320gb HDD for some backups and media storage. These are drives that I had spare, and the 320gb will fill up very quickly so it will probably get upgraded pretty soon, maybe to an old 3.5" HDD I have. I will be using the NVME slot for a Intel WiFi + BT 4 card (7265ngw) via an adaptor, which will allow me to use dual large internal antennas and provide good BT range for controllers. There will also be a 4 port USB3 hub inside to provide ports for the ir receiver, BT module, an arduino to drive TV backlighting and a Logitech unifying receiver. The front USB ports will be directly connected to the rear ports, which will leave 1 spare USB2 port on the rear. The H2 is about 10x10cm and the Xbox is about 35x30cm so I don't see any issues fitting all that, just cable management. I purchase a 5v 92mm fan with the H2 and it is too big to fin in the same location and the original fan, so I'm going to mount it to the heatsink. It will overhang a bit so it will also move some air around the case which should help keep other components cool. I'll keep an eye on temps and add a rear fan if need be, but many people run these fanless without issue so I don't think it will be a problem.
Software used will be Xubuntu 19.10 for now and I'll upgrade it to the 20.04 LTS and keep it on LTS versions. Because multiple aplications will be used, I wanted a simple, light and customisable deskop environment. I generally run LTS versions for these types of applications, but I had some stuttering issues at first and tried a few versions of Xubuntu + Ubuntu + Libreelec while nutting out the issue and finally got it fixed on 19.10 and with 20.04 so close I decided to stay with it because I didn't want to do another reinstall. If I knew what I know now I'd stick with 18.04 because it has more precompiled software available (eg attract mode, emulationstation and an emulation PPA I found). Because it is a dual monitor setup, though not it the traditional sense as the two monitors are the one TV, I have disabled use of the AVR monitor through some xrandr trickery because having a second monitor that wasn't easily accessible was really annoying. Mirroring doesn't work because of the different max resolutions of both monitors and disabling the second monitor would also disable sound. The only issue I have with this now is that the alt-tab switcher shows up twice, which isn't a big issue because it will really only run one graphical program at a time, but a quick google shows that there are some possible alternatives for workarounds.
So far I am really impressed with this little machine and I highly recommend it for HTPC use - it plays 4k60 content smoothly, HDR coming soon and I don't have to buy a new AVR to get 4k video with passthrough audio. I have a script which automatically switches audio outputs depending on if the AVR is on or off and unlike the s912 box, it doesn't send audio to multiple outputs at the same time which makes operation simpler. 3D performance is lacking, but I was always expecting that. At 4k the Kodi GUI + Project M lag, but they're smooth at 1080p. At 1080p, the 3D map of Broforce is choppy, but the 2D sections are smooth. Super Meat Boy runs smoothly at 1080p. I tried Portal 2 but it loads to a blank screen. I've read that using DXVK can improve performance, but I haven't delved into that yet. And there is always Steam in home streaming for anything too demanding.
Finally, some photos of the H2 in its temporary home. Next will be dismantling the Xbox and I'll be finding a home for the unused parts.
This is something that I've wanted to do for a long time but I never really got around to it for various reasons - but its finally happening. This thread is going to be a build log, because I know if I don't start it now, all you will get is a couple of photos of a finished build. I'm still waiting on parts to come and I have alot of other things going on so it will probably take a while.
Why am I doing this? The OG Xbox rocked our world - we still call the media player 'the xbox' to this day. After it was modded it became a media powerhouse that was way ahead of its time. Loading games off the HDD, emulators and of course, XBMP. Unfortunately, due to the march of technology, it had to be retired. With my s912 box giving me headaches and the board I wanted was finally back in stock, I decided it was time to start this project and get the Xbox back into the lounge room.
The hardware I will be using is a Odroid H2. I chose this because of the Intel GPU which has great support under Linux, with HDR support coming soon + the x86 CPU, which outperforms ARM boxes and opens up more software possibilities, such as emulators, Firefox, Steam and Project M visualisations (its not a media player if it doesn't have Project M!). The board has 2 video outs (HDMI2.0 + DP++) and with a passive DP to HDMI adaptor the DP++ port becomes a HDMI port which allows me to send 4k60 video to my TV and send HD passthrough audio to my HDMI 1.4 AVR at the same time. The board runs cool, has an external PSU and is small which will allow me to integrate a few things into the case and keep it uncluttered and quiet at the same time. I did think about a mini-itx board, but the H2 has almost everything I need at a reasonable price.
The plan is to keep the outside fairly stock. I'm not going to use an optical drive, so the DVD faceplate will be attached to the case. The LED will be changed to white and the front buttons will be used for power and reset. The smaller button as a power imprint and the larger one has an eject imprint and I'm going to fill those up, paint them a similar colour and leave them blank, because I want to use the big button for power. I though about attaching power + reset decals to the buttons, but I don't think that's really that important as 99% of the time a remote will be used to power it on. The left two controller ports will be covered with some smoked acrylic, with a IR receiver hiding behind one and I did think about putting a headphone port on the other, but I've never had the need for one and I have a USB soundcard or a USB DAC + amp that can be used if I ever do need it. The right two controller ports will be a USB 2 and 3 port, which again I don't often need, but they'll be handy for the occasional USB drive, wired controllers and charging the DS3 controllers I'll be using with it. I did think about adding some kind of Kodi branding to the front, but I think the textured surface would make it difficult to get a good finish, so I'll probably skip that.
Inside will be the board, 2x 4gb RAM sticks, a 60gb SSD for the OS and a 2.5" 320gb HDD for some backups and media storage. These are drives that I had spare, and the 320gb will fill up very quickly so it will probably get upgraded pretty soon, maybe to an old 3.5" HDD I have. I will be using the NVME slot for a Intel WiFi + BT 4 card (7265ngw) via an adaptor, which will allow me to use dual large internal antennas and provide good BT range for controllers. There will also be a 4 port USB3 hub inside to provide ports for the ir receiver, BT module, an arduino to drive TV backlighting and a Logitech unifying receiver. The front USB ports will be directly connected to the rear ports, which will leave 1 spare USB2 port on the rear. The H2 is about 10x10cm and the Xbox is about 35x30cm so I don't see any issues fitting all that, just cable management. I purchase a 5v 92mm fan with the H2 and it is too big to fin in the same location and the original fan, so I'm going to mount it to the heatsink. It will overhang a bit so it will also move some air around the case which should help keep other components cool. I'll keep an eye on temps and add a rear fan if need be, but many people run these fanless without issue so I don't think it will be a problem.
Software used will be Xubuntu 19.10 for now and I'll upgrade it to the 20.04 LTS and keep it on LTS versions. Because multiple aplications will be used, I wanted a simple, light and customisable deskop environment. I generally run LTS versions for these types of applications, but I had some stuttering issues at first and tried a few versions of Xubuntu + Ubuntu + Libreelec while nutting out the issue and finally got it fixed on 19.10 and with 20.04 so close I decided to stay with it because I didn't want to do another reinstall. If I knew what I know now I'd stick with 18.04 because it has more precompiled software available (eg attract mode, emulationstation and an emulation PPA I found). Because it is a dual monitor setup, though not it the traditional sense as the two monitors are the one TV, I have disabled use of the AVR monitor through some xrandr trickery because having a second monitor that wasn't easily accessible was really annoying. Mirroring doesn't work because of the different max resolutions of both monitors and disabling the second monitor would also disable sound. The only issue I have with this now is that the alt-tab switcher shows up twice, which isn't a big issue because it will really only run one graphical program at a time, but a quick google shows that there are some possible alternatives for workarounds.
So far I am really impressed with this little machine and I highly recommend it for HTPC use - it plays 4k60 content smoothly, HDR coming soon and I don't have to buy a new AVR to get 4k video with passthrough audio. I have a script which automatically switches audio outputs depending on if the AVR is on or off and unlike the s912 box, it doesn't send audio to multiple outputs at the same time which makes operation simpler. 3D performance is lacking, but I was always expecting that. At 4k the Kodi GUI + Project M lag, but they're smooth at 1080p. At 1080p, the 3D map of Broforce is choppy, but the 2D sections are smooth. Super Meat Boy runs smoothly at 1080p. I tried Portal 2 but it loads to a blank screen. I've read that using DXVK can improve performance, but I haven't delved into that yet. And there is always Steam in home streaming for anything too demanding.
Finally, some photos of the H2 in its temporary home. Next will be dismantling the Xbox and I'll be finding a home for the unused parts.
watch gallery