It’s a custom-designed mount for a 10″ Galaxy Tab A, permanently installed in my car, including custom electrical work to really dial in the user experience.
Challenges to doing this include:
- Cars are very hot, and 3D printing things to handle ~150F in sun is difficult.
- Power timing is very critical for the UX to dictate when the tablet wakes up and sleeps, and my car presented challenges
- Capturing geometry accurately enough to model from is a real challenge when the geometry in question is free-flowing and organic like a car dashboard.
My car is old. 2009, to be precise, before bluetooth or infotainment displays were standard. The first problem was mercifully solved by an off-the-shelf product in about 2013 that adapts bluetooth on one end to a 30-pin iPod interface on the other (which my car DOES have). But using a phone in a car is still not ideal. Having an always-on device for navigation and tunes would be much better.
Solution (nothing’s more permanent than a temporary one)
I’ve had an LTE-connected tablet mounted in my car for almost as long as I’ve had it. At first it was a Nexus 7 2012, which was too janky to even post (nah, I just don’t have pictures). That tablet was not good, even when new, so it was hastily replaced with a N7 2013, which came with LTE and was also much better besides. At this point, I built a custom mount freehand, with some hand-bent sheet metal jammed under the dash trim and a tablet holder frame made out of a home depot yardstick, glue, and Sugru press-fit around a tablet wrapped in syran wrap to capture the shape. This worked surprisingly well. Well enough that it was in my car for at least 5 years before the tablet was just too dead from direct sunlight and 150F heat to carry on. It turns out, nothing sticks to silicone, be it paint, plasti-dip, or dye, so my tablet mount was just blue that whole time. Oh well, it suits me.
One of the more interesting aspects of the install, which I had to tackle at this point back in 2013, was how to get power into the tablet. I could have just neatly wired a hidden run to a regular 12V accessory socket, but in the E90, those turn on only when the ignition is ON – that setting when the engine might or might not be running, but opening a door will kick it down a power level. That’s not ideal, since I want the tablet to light up and come out of its Tasker low-power mode (which takes a few seconds) as soon as I approach the car, ideally when I unlock it.
BMWs of this generation have a handful of power rails in the car, corresponding to what various devices should be doing in various power states. For instance, terminal 15 is on with the ignition – cigarette lighters are on term. 15. Terminal 30 is on ALWAYS – it’s attached to the battery. Terminal 30G is on when the car is “awake.” Terminal 30G_f is a special case terminal, which is on with 30g until the battery gets below a certain level, when it turns off to save power. You don’t want the telematics box killing the battery simply because the door’s been ajar too long, etc. The problem is Terminal 30 is also on long after the car is locked and left alone, up to half an hour. I don’t want my tablet screen lit up for half an hour after I park and go into a store.
After much digging through service documentation, I found one terminal in the car that’s basically on whenever the car is occupied, starting the moment you unlock it, and ending the moment you lock and leave it (or a couple minutes after all doors have been closed, nothing is “on,” and no buttons have been pushed). It’s called Terminal R.
Unfortunately, it’s virtual. It only exists as CAN bus messages between modules telling them to enter different power states.
Except in two spots. Two physical modules are powered by supplies controlled with Terminal R. One is the ABS module – airbags are live when the car is occupied. Not touching that one. The other is the brake pedal position sensor module.
Of course, that module requires presumably very little power, and at least much less than the 18W my tablet might draw. So after much back-bending, I ran a wire from a splice by the brake pedal position module through miles of dashboard over to the fuse panel behind the glove box, and into a relay board to switch power to my tablet PSU.
I chose to use an off-the-shelf QC3.0 car adapter for my tablet supply, and just kapton taped the crap out of it so it wouldn’t ever jiggle loose while driving.
To get power to the tablet from out behind the wooden trim, I came across a flat-flex USB jumper solution off-the-shelf, after many years of my trim popping out due to the heavy USB cable before. The female end of this jumper attaches via ziptie to a tab on the mount, and a short USB A to C jumper goes the rest of the distance.
The electronics felt difficult at the time, but mostly because documentation was sparse and research was hard. Probably much more difficult for implementing the latest iteration of the tablet holder was 3D modeling the dash itself for something to work off of.
I have a whole separate post about working with the mesh I made via photogrammetry. I don’t have many details about that step, but the process was relatively simple: cover all reflective surfaces like the wood trim in blue painter’s tape, wait for an overcast day, take a ton of pictures, and process them all in Autodesk ReCap back when it had a free option. Scaling the mesh correctly was tricky, since there weren’t many geometrically easy features to key off on.
Ultimately, I abandoned the technique in that post of trying to directly model with the mesh, and instead used section analyses to build a model that matched the geometry “close enough” by eye, rather than contouring to it directly as in that post.
The single biggest difficulty in this phase of the project was printing something that would stand up to the JPL parking lot, which I measured at north of 150F inside my car one day. Throwing caution to the wind for a few prototypes, I had more than one mishap. This iteration was printed out of PETG – more temperature tolerant than PLA, but still no better than gum in a summer parking lot.
This iteration of the tablet mount was sized to be a precise snap-fit, grabbing onto the tablet like a clamp without any moving parts. The issue was, it had to be perfectly-sized, and took a couple iterations to get the fit just right.
In my experience, the easiest way to make a 3D print temperature tolerant is to use annealed PLA. The heat treatment process recrystallizes the plastic and drastically raises its glass transition temperature to exceed even ABS, but unfortunately the process generally involves some degree of warping, which these precise press-fit parts were extremely intolerant of. HTPLA from protopasta is designed to minimize dimension shifting and warping, and CF-HTPLA with chopped carbon fiber is even easier still. But rather than print-test-iterate 5 times to dial in the dimensions like I had to do for the melty version above, I made one last iteration that’s just much more tolerant of the heat treatment process.
This version is made in 3 parts: the “strap” that jams under the wooden dash trim on the front, and under a snap-fit plastic speaker/vent grille on the back, and two wings that actually hold the tablet. These screw into heat-set inserts, with a fair bit of slop so that if they shrink or warp, the tablet still fits pretty snugly. As installed, the wings are about a millimeter wider-set than the CAD. Tightening them up was somewhat challenging, but a lot easier than a bunch of reprints.
Of course, after about ten years of iterative effort on this project, and having finally achieved something both good and reliable, my catalytic converter has died. So soon I will be at the mercy of the manufacturer’s infotainment, at long last.