Picking the Right Hardware
Some will say that the hardware is just something that the software runs on, but we tend to disagree. We’ve gone through many, arguably disposable, Android headunits, that were disassembled at the end of their service life for postmortem analysis and fun. We were surprised to find rust, broken and disconnected cables, and terrible design choices overall. How do we avoid the same issues in our own designs? Simple. Target a price point that allows use of higher end components and you know…build things better.
There are many variables to consider when making your own hardware for you own devices and possibly the most important one is “off the shelf” or “custom”. Do you go ahead and build your own board that handles everything exactly how you want it to, and includes zero extra hardware that can increase cost? Well, if you are manufacturing devices by the thousands and the economics work out, sure, why not. However, if you’re targeting more niche applications, it may be more economical to simply go with an off the shelf board and customize to your needs.
SBC or SOM?
Fortunately, there is no shortage, at least on paper, of single board computers one can purchase. In reality, things are grimmer, with shortages left and right and prices that have little connection with reality. However, where there is a will there is a way. So, why even consider a SBC?
SBCs
SBCs are generally low price, high production volume items that pack a lot of common interfaces (HDMI, Ethernet, USB) as well as expansion headers for communication with other hardware like MCUs and sensors. Usually, they also come with different operating system options like Linux and Windows, and custom software to fully configure and access all features. Think of SBCs like your average computer, with slightly more control over low level operations.
On the downside, there generally isn’t enough control over low level operations to fully integrate custom hardware in a seamless, end-product, fashion. Operating environment considerations also have to be carefully analyzed, as many SBCs are not rated for low/high temp and high vibration environments. Will they work? Maybe. Maybe not always. Lastly, they have a very short lifecycle. If you started development on a Pi4 and your app took more than a year to develop…well hopefully your app also works on Pi5.
Take a look at offerings from Raspberry Pi, Khadas, Odroid, Lattepanda and others when choosing an SBC.
SOMs
SOMs are a more advanced flavor of SBCs. You pick your own module (CPU) and throw it on a carrier board that integrates all the needed functions. This creates many advantages, like easy processing upgradability without changing all the hardware. It also vastly increases price, as the hardware is essentially split between 2 boards that need to be purchased separately.
Many SOMs are designed for industrial applications, so they are fully rated for low/high temperature and high vibration environments. Production runs are also generally in the 10-year range, so you will always have spare parts on hand. Negatively, you may have a hard time integrating a SOM into an existing product and custom parts may have to be manufactured to make everything fit.
If you think you want a SOM, take a look at offerings for Variscite and Toradex, to name a few.
Software Considerations
A lot of SBC manufacturers are quick to throw a new chip on a mostly unchanged board and add a 1 to their product name on a yearly basis. That’s good for them as it sells new units, making them a profit. However, take a close look at their environment and the software they provide before using their hardware in any of your devices. Check out the developer portals and forums. Do you see the same basic question asked 17 times in a row with no answer? Are there 0 tutorials to be found for basic things like booting linux from an SSD installed on their board? That’s your indication to move on. They’re either selling hardware but don’t have the capability to actually make it work or require you to hire one of their engineers to work on site with you to make it work, after you sign a couple NDAs.
The ACM Choice
We decided to go with a top performance SOM that provides all the processing power we need, without missing a beat. Sure, it’s pricier but switching to the navigation screen on your instrument cluster shouldn’t be an exercise in patience, watching all the navigation icons load in one by one because we decided to save 10% on the cost of the SOM.
This created a few problems as the SOM/carrier board needed to be sandwiched between the existing instrument cluster board and the new display. Space was at a premium (down to 1mm of clearance) so we had to get creative. We designed our own board mounts and cooling solution, as the off the shelf versions seemed to be 3ft high, when we had an inch to work with.
Many prototypes and 3D prints later, we have a final design. The carrier board mounts to the existing instrument cluster board with minimal effort and integrates a small fan, air duct that blows air directly at the custom low profile copper heat sink, being held down by custom mounts to provide the necessary chip clearance.
Next up for us is fully customizing the carrier board with lower profile connectors and locking headers that can withstand a vibration rich environment and integrating the display controller and custom FPGA board with the rest of the hardware. Stay tuned.