Bit of an update here - the cabinet is now about 98% complete, needing only the addition of dust filters and exterior trim bezels for the intake vents in the base. I will try to get some good photos of it uploaded in the next couple of days. I will say that it has cleaned up remarkably well, and its function/performance has exceeded my expectations. Chuffed.
I haven't shown much of the internals of the cab yet, and now is as good a time as any for a rundown. Below are some work-in progress photos from an earlier date - please excuse the poor lighting and sawdust/debris, and keep in mind that wire management hadn't really been attempted at this point.
The PC powering this build is a Firebat T8 (Intel N100 Alder Lake) mini running what is basically a stripped down Linux installation. Although it's a very low-power PC with integrated graphics, after installing a lot of tables and doing a lot of playtesting I've found that it really works quite well at 1080p/60Hz resolution. If you're contemplating a build using one of these, I'd say that it works great so long as you're not trying to push 4K.
Some of the early testing I had done was with more recent tables (such as those from VPW) set up for 4K high-refresh monitors, and some of those ran pretty poorly - typically 20-30fps or so. Using some of the less hyper-detailed VPX tables as alternates, performance has been fine and totally playable with solid framerates and more than acceptable display quality.
This is a screenshot of btop (a system monitor application) running via ssh from my desktop computer, with the pinball cab running Monster Bash in a game session with multiball active. The little N100 4-core system is chugging right along at 16% utilization. The only time I see CPU utilization approach even 50% is during game selection and loading from the frontend; at the left of the CPU histogram the burst of activity shown is the game being selected and loaded:
The mini PC's cooling solution is pretty tightly integrated in its very small case, with an intake fan that draws air in from the bottom and exhausts through one side. It didn't make much sense to decase the PC for this build as it would lose the benefit of what's basically a fitted duct channeling air directly through the CPU heatsink. The PC has been oriented so that its exhaust is mostly inline with the cabinet's exhaust fan, but it's rotated slightly out of plane in order to keep all of the i/o ports more easily accessible.
I needed to break out a couple of functions from the motherboard in order for it to function seamlessly in the cabinet, but this was definitely made trickier due to the very tight packaging of components inside the mini PC case. I went with a 3-pin audio cable with the JST connectors snipped off the ends to solder to the motherboard V+ and ground contacts for the power switch, and to the +5V lead for the cooling fan header. A small hole was drilled in the case to allow passage for the cable:
The PC is powered by a laptop-style switching power brick, but this one is 12V rather than the more common 19.5V laptop power supplies. Since the PC only needs 12V, I was able to power the relay module used to run the cabinet's exhaust fan without stepping the voltage down before it reaches the relay. Instead, a buck converter was installed on the output side of the relay to act as a fan speed controller of sorts. The relay is triggered by the +5V signal coming from the mini PC's fan header, and output voltage to the cabinet's exhaust fan was adjusted to ~7.8V for best acoustics. System temperature hasn't exceeded ~65C in testing so far:
There was a need for multiple +5V outputs to power the amplifier board, DMD screen, and various button LEDs, and I spent some time thinking about how to manage those. The SJ@JX USB encoder is "capable" of supporting about a dozen LEDs on its own, but the cabinet didn't need quite that many. I considered using some of those encoder outputs to power the amplifier and DMD, but had some concerns about combined amperages and ground loops. Rooting around in a junk drawer netted a handful of small 1 amp USB AC adapters which were pressed into service to power the amplifier and DMD instead, and these are plugged into the power strip mounted into the rear of the cab.
In the photo below the button LEDs are plugged into the +5V encoder outputs, but I've switched those up based on the desired behavior of the system when different power states are taken into account. By default all of the USB ports are powered during suspend, and while there may be a BIOS switch to alter that behavior I've decided that it's actually easier to handle what I want to do in hardware instead:
Typical for this sort of installation, the PC is set to suspend/hibernate with a short press of the power button, and it shuts down with a long press. The power button is illuminated, and its conditionals for lighting pretty much follow what the encoder board outputs during suspend and power-off, so it alone is powered from the encoder. The control panel button LEDs instead receive their power from my fan control circuit so that they only illuminate when the system is active.
Most i/o to the cabinet is handled wirelessly with a bluetooth keyboard, RF wireless mouse, and a PS3 controller connected via BT to remotely navigate Emulation Station menus. I threw a 4-port USB extender into the cab mainly for convenient reach to plug in USB thumbdrives for bulk file transfer.
I hope to post photos of the more or less completed unit tomorrow or the next day