Choosing an Operating System:
The most common options are Windows and Linux. I used DOS in my last system. While I loved DOS's compact
size, fast boot times, and not needing to perform a "proper" shutdown, hardware support was an uphill
battle. For this project, I used Windows 10 XPE.
(Think of it as a cut-down version of Windows 10.) If I switched to Linux, I'd need to find an alternative
audio player and come up with a way to control it. By using a Windows-based operating system, I was able to use
the Windows version of MPXPlay. Not having to "reinvent the wheel" is kind of nice. Unlike regular
Windows, the memory requirements are lighter and the operating system never updates. Any changes made are lost
on the next reboot. For me this provides a number of benefits:
- No waiting for Windows updates during startup and shutdown
- Startup and shutdown times are consistant and predictable
- No winrot, since the state of the operating system never changes
Security would be a big concern is this system was connected to the Internet. This isn't a problem for me, since this system will never be connected to any network, much less the Internet.
Software:
Back in 2001, I picked MPXPlay. While MPXPlay started out as a DOS-only application, there is a Windows version available, and it functions pretty much the same way. It supports disc/title/track naming. It can load a list of songs from a playlist, or it can be pointed to a particular directory. I do the latter, and use my software to handle the directory navigation.
Controller:
Options include keyboards, remotes, touchpads, and gamepads. Keyboards are big and cumbersome. While infrared remotes are small and compact, you have to look down in order to operate them. The makes them a hazard to use while driving. Touchpads are the same way, only worse. Gamepads are the one form of controller that don't have all of the problems, listed above.
For this project I'll be using a Gravis Gamepad Pro USB. Sure, it's been discontinued for about 20 years, but it's USB, it has a layout that I like, and I already own one.
Display:
Since a computer monitor is too big to use in a car, most people use TFT graphical LCD's or LCD character displays. Due to cost and space requirements, I chose to go with a character display during my first car-computer project. There are two types of character displays: parallel and serial. Parallel LCDs are less expensive, but require soldering and use thicker cabling. While serial LCDs are more expensive, they come pre-assembled, and the cabling is simpler.
My Matrix Orbital 2041 serial character display, from 2001, still works. Since it does what it's supposed to, and hasn't given me any trouble, I'll continue using it. The only change that I made to is was adding a USB/Serial adapter and wiring it so that it gets power and data from from a single USB cable.
Storage:
Since I'm no longer using DOS, USB storage is an option now. My music, VCC, and MPXPlay are all storaged on a 512GB flash drive. The operating system is stored on a 250GB NVMe drive, for fast boot times.
The computer:
Last time, I used a Mini-ITX system. For this project, I wanted something even smaller, so I wouldn't have to mount it in the trunk.
First attempt
Originally, I planned to use a LattePanda Delta 432. They're about the size of a smartphone. While it should have been the perfect device, I encounted several issues. First, it didn't power on automatically. This problem was solved with a BIOS update. Second, starting it from a hard-off power state adds about 10 seconds to the boot time. Third, the LattePanda has an oddball audio jack, requiring the use of an adapter. Fourth, I planned to use an NVMe SSD drive as a Windows boot drive, for faster boot times, but could never get it to work. For me, the last issue was the straw that broke the camel's back. The picture, below, shows the LattePanda and its AC adapter, next to a Samsung Galaxy S8.
Second attempt
After giving up on the LattePanda, I purchased an Up Squared V2 Edge. While I didn't like the larger size, it solves all of the problems mentioned above. Powering on from a hard-off power state works by default, without any significant delay. The NVMe SSD drive works fine. The audio jack accepts a standard 3-pin headphone mini-plug. One benefit to the larger case is that it has enough room to accomodate extra USB connectors. While I'll only need 3 USB ports during normal use, the extra ports are useful while testing things out. The picture, below, shows the Up Squared PC and the AC adapter, next to a Samsung Galaxy S8.
DC/DC Power Supply:
Unlike most Mini-ITX systems, the LattePanda and Up Squared V2 Edge only require a single voltage: 12V. This simpifies the power requirements a bit. Although cars use what's referred to as a 12 volt system, the actual voltage is usually higher. Voltages as high as 14.8V are normal. The power isn't very clean, either, definitely not clean enough to run a computer. I originally planned on using the DCDC-USB DC converter from Mini-Box, but gave up on it after switching to the Up Squared PC. This PC wouldn't even start up when powered by it. While the voltage was correct, and the power draw wasn't exessive, the two simply didn't like each other.
After giving up on the DCDC-USB power supply, I purchased a Meanwell RSD-30-G12. It converts DC power and does nothing else. What it lacks in features it more than makes up for in quality. One can tell just by picking it up and looking at it. It's heavy and the majority of the board is potted in silicone. It's designed for use in harsh environments, like trains, buses, and cars. It accepts an input between 9-36 volts and outputs 12 volts. It's rated for 2.5 amps. While that's not very much, the PC was only drawing between 0.5 and 1 amp when I measured the current.
While Windows 10 XPE can survive hard shutdowns, I still need to save data prior to shutting it down, so that it can remember which album, track, and track position it was at. To handle this, I purchased a programmable timer and plain 12 volt relay. The timer delays hard-off for a few seconds after the car is switched off. The relay triggers a signal on the computer's serial port so that it can monitor the status of the car's accessory wire. The picture, below, shows the Meanwell RSD-30-G12, the programmable timer, and the relay, next to a Samsung Galaxy S8.
Last Update: 5-29-2024
Copyright © 2001-2024, Brent Harris
All rights reserved.