wayne piekarski USB-C MicroSD card storage case for Pixel 7 Pro phones

 
Share Blog article posted March 2025

USB-C MicroSD card storage case for Pixel 7 Pro phones

Attaching MicroSD card storage to Pixel 7 Pro phones with a custom phone case designed in OpenSCAD

In a previous blog post, I describe the latest in MicroSD support on Android and why this is so important. Most of the top Android phones like the Google Pixel series have never come with MicroSD and probably never will. But I still want my MicroSD support for offline storage beyond what the device supports. So in this article, I present an open-source adapter that fits snugly around the existing phone case and provides MicroSD support via USB-C. The OpenSCAD source files can be customized for any mobile device with or without a case.


Pixel 7 Pro MicroSD Storage Case

This is my design for a MicroSD storage case, that fastens securely around an existing Pixel 7 Pro with its own protective case. I don't want to have to remove the existing case. Normally this would be difficult to manufacture as a product for sale due to so many variations available, but because the design is custom 3D printed you can adjust the design for your exact case dimensions and fit.

The existing phone case is a Spigen Thin Fit Designed for Pixel 7 Pro Case (2022) - Black. I am using a chenyang CY 2pcs USB Type C USB-C to Micro SD SDXC TF Card Reader Adapter for Laptop Cell Phone so I don't need to make my own custom electronics. You simply plug the device into the phone, install the case, and then use 5-minute Loctite Epoxy Clear Multi-Purpose Clear Clear colorless to clear amber Quick Set, 0.85 Fl Oz, Syringe to secure the adapter in exactly the right position. After the epoxy cures, you can remove it from the phone. Don't let the epoxy get into the phone obviously.

The problem with just plugging in a USB-C adapter is that you can very easily snap it off, probably damaging the USB-C port on the expensive phone that is unrepairable. The great thing about the design is it fits very tightly around the soft TPU phone case, and you can flex the case and it stays secure. The phone is a bit longer than previously but you can fit it into your pockets easily. I need to do some work on rounding out the edges so it is a bit smoother, it was optimized to print flat off my Prusa MK3S 3D printer.

OpenSCAD rendering

Photos

Phone plugged into the case. The prototype has the MicroSD adapter visible to make it easier to glue and observe how it works.

Phone disconnected showing the USB-C port and MicroSD adapter alignment so it can be pushed into place.


OpenSCAD source

Download OpenSCAD source

// Accessory clip that clips onto the Pixel 7 Pro case that I have right now
// Spigen Thin Fit Designed for Pixel 7 Pro Case (2022) - Black
// https://www.amazon.com/gp/product/B09YMV82N8

// Fits against the USB-C Micro SD adapter
// chenyang CY 2pcs USB Type C USB-C to Micro SD SDXC TF Card Reader Adapter for Laptop Cell Phone (2pcs/Set)
// https://www.amazon.com/dp/B077S2PKYD

// Case outer is 80mm with curved sides
// Curved sides are 10.7mm high

infinity = 200;
epsilon = 0.001;

length = 60;
thickness = 2;
curve = 10.7 + 0.3;
width = 70 + 0.9 + 0.6;

partition = 21.0;

difference() {

hull() {
    translate([-width/2,0,0])
        cylinder(d=curve+2*thickness, h=length, $fn=100);
    translate([+width/2,0,0])
        cylinder(d=curve+2*thickness, h=length, $fn=100);
}

translate([0,0,+thickness+partition])
hull() {
    translate([-width/2,0,0])
        cylinder(d=curve, h=infinity, $fn=100);
    translate([+width/2,0,0])
        cylinder(d=curve, h=infinity, $fn=100);
}

// Cut out the whole interior for the phone to slide in
translate([0,curve/2,infinity/2+thickness+partition])
    cube([width+4,curve,infinity], center=true);

// Cut out a notch for the SD card to slide in
translate([0,curve/2,infinity/2-epsilon])
    cube([16,curve,infinity], center=true);

// Remove space for the handle on the USB-SD adapter to fit and for epoxy to flow around it
// Has a slight overhang but hopefully the printer can deal with this
translate([0,0+thickness/2+epsilon,16/2+thickness+epsilon])
    cube([20,curve+thickness,16], center=true);

// Remove space for the rest of the USB-SD adapter which rides 3.4mm higher than the handle
translate([0,0+thickness/2+epsilon+2.0,partition/2+thickness+epsilon])
    cube([20,curve+thickness,partition], center=true);

// Drill pilot holes to allow the epoxy to grab onto the handle on the USB-SD adapter
translate([0,0,8.1+1])
rotate([90,0,0])
    cylinder(d=2, $fn=4, h=infinity, center=true);

// Holes above the handle for more access to inject epoxy if needed
translate([0,0,8.1+1+5])
rotate([90,0,0])
    cylinder(d=2, $fn=4, h=infinity, center=true);


// Remove printable space that is not in use to save print time
for (copy = [0,180]) {
    rotate([0,0,copy])
    translate([0,0,+thickness])
    hull() {
        translate([-width/2,0,0])
            cylinder(d=curve, h=infinity, $fn=100);
        translate([-16-thickness,0,infinity/2])
            cube([curve,curve,infinity],center=true);
    }
}


}

Share Blog article posted March 2025


Google Developer Advocate 2014-2023


X-Plane plugins and apps for flight simulation


IoT water meter monitoring


IoT computer vision monitoring


Tiny and cheap offline Wikipedia project 2017


Outdoor augmented reality research
Tinmith 1998-2007


Outdoor augmented reality 3D modelling
Tinmith 1998-2007


Outdoor augmented reality gaming
ARQuake 1999-2007


Scanned physical objects outdoors
Hand of God 3D 2006


Google Developer Advocate 2014-2023


X-Plane plugins and apps for flight simulation


IoT water meter monitoring


IoT computer vision monitoring


Tiny and cheap offline Wikipedia project 2017


Outdoor augmented reality research
Tinmith 1998-2007


Outdoor augmented reality 3D modelling
Tinmith 1998-2007


Outdoor augmented reality gaming
ARQuake 1999-2007


Scanned physical objects outdoors
Hand of God 3D 2006


Contact Wayne Piekarski via email wayne AT tinmith.net for more information

Last Updated 2025