One Simple Trick Can Save You 30 Minutes…

After mentioning long render times on my machine, @raster suggested switching to the manifold 3D rendering backend.  Depending on your OpenSCAD version, you might need to poke around to find how to enable this option.  It’s absolutely worth your time and should really be enabled by default.

If you dig into this option a little, and you’re a 3D printing old timer, you might recognize the creator of this library as none other than Emmett Lalish!!!  Emmett was an early 3D printing adopter, from back in the MakerBot Thing-O-Matic days, creator of the original heart gears, and just all around incredible engineer. 1 2

Emmett’s manifold library dropped the render time for one of my designs from 300 seconds to… under 8 seconds.  I literally used to avoid hitting F5 on more complex designs or avoid cranking up the facets so I didn’t have to wait for long renders.  A single comment from a friend, telling me about an option written by another friend, has completely and permanently changed how quickly I’m able to iterate and design objects forever.

Here’s how you can instantly save tons of time with your OpenSCAD designs:

"Manifold (new/fast)"

“Manifold (new/fast)”

#OpenSCADClub
  1. OpenSCAD 3D Printed Spring
  2. OpenSCADClub Week 2: Directional Pad
  3. OpenSCAD Render Times
  4. One Simple Trick Can Save You 30 Minutes…
  1. Emmett even wrote a guest post on this very blog about… 14 years ago?!?!  Time flies, I guess? []
  2. Special thanks to my honorary editor Andrew for catching a typo… []

OpenSCADClub Week 2: Directional Pad

This week’s topic related to @deshipu’s directional keypad designs.  The directional pad is clearly the most complicated part of the design.  The four buttons are basically just cylinders that can be created in several different ways.

@deshipu's D Pad Design

@deshipu’s D Pad Design

Brian published his designs to Github.

@beerriot's designs

@beerriot’s designs

After staring at the design a little longer, I changed from my original design idea to creating a 2D cross, extruding that, subtracting out the curved area described by a sphere (a homebrew hack I’ll describe below), using the minkowski function to surround the entire surface with a small sphere to give it a rounded look, then cutting the bottom off to ensure it is flat.  I didn’t include a flat cylinder as in the original design above, but that’s a trivial addition.  The downside?  This is a 5 minute render on my machine, largely due to the minkowski function.

//  Settings
    fn = pow(2,5);
//  Measurements
    pad = [10,30,1,3];
    corner = 1;

dpad();

module dpad()
    {
    difference()
        {
        minkowski()
            {
            difference()
                {
                linear_extrude(height=pad[3], center=false)
                    offset(r=-corner/2, $fn=fn)
                    for (i=[0:1])
                        rotate([0,0,90*i])
                        square([pad[0],pad[1]], center=true);
                translate([0,0,pad[3]])
                    scale([pad[1]*1.03,pad[1]*1.03,pad[3]-pad[2]])
                        sphere(r=0.5, $fn=fn);
                }
            sphere(r=corner/2, $fn=pow(2,4));
            }
        mirror([0,0,1])
            cylinder(r=pad[1], h=pad[1], center=false);
        }
    }

Renders to:

MakerBlock's design

MakerBlock’s design

Hacks:

  1. You’ll notice I use “offset” to reduce the size of the directional pad, because I knew I was going to round it all with the minkowski function in a few lines.
  2. The directional pad is actually just a rectangle, run through a for loop once to rotated it by 90 degrees, before being extruded to the specified height.
  3. The last two lines of code are used to create a large cylinder, larger than what I knew the pad would be, then mirrored in the Z axis to cut everything below the XY plane.
  4. As in prior designs, I pre-define “fn” to be a “pow(2,5)” so that I can use a low exponent to iterate designs quickly, then crank it up for a detailed design.
  5. The hack I use the most often here, and the one I’m the most proud of, is where I make a sphere like “sphere(r=0.5)” and then scale it by whatever I need.  Since the sphere has a diameter of “0.5” mm, the actual sphere is 1mm in diameter – so when I scale it in the XY by 30 and in the Z by 2 (since the edges of the keypad are 3mm tall and the center is 1mm tall), the diameter is now 30mm and the height is 2mm.  This little trick, of being able to scale a sphere to the exact size I need has come in handy countless times.

I’m not the best programmer, not the best at OpenSCAD, but I’m kinda happy that I was able to build this in about 31 lines of code.  :)

#OpenSCADClub
  1. OpenSCAD 3D Printed Spring
  2. OpenSCADClub Week 2: Directional Pad
  3. OpenSCAD Render Times
  4. One Simple Trick Can Save You 30 Minutes…

Goblin Hours, Enabled

Live Webcam Feed

Live Webcam Feed

I’ve often told my family that if it were not for them, I’d basically work all night, every night, on whatever latest project popped into my brain, and then fall asleep at the workbench/eating plank/soldering station every night/early morning.

The thing is, these tendencies just aren’t very conducive when it comes to trying to live with other people, especially those you’re semi-responsible for.1 It’s especially challenging to work in a professional environment at DayJob™️when I’m working crazy hours.  I don’t want my clients or the other people I work with realizing they’re communicating with the functional equivalent of three meth-addled racoons in a trench coat.23

I have a few ways of passing for a socially normative respectable professional.  Here are some of my coping mechanisms:

  • I’ve put several buttons into Outlook’s quick access toolbar.  The most important are:
    • “Delay Delivery” so that I can draft and hit “send” on an email, but not have it go out until a socially acceptable time
    • “Signature” so that I can easily send an email with my “mobile” email signature or my full fledged obnoxiously enormous “professional” email signature.  Why would I do this, you ask?  Well, if I want to get away with a quick reply and not really do a deep dive, I’ll fire off an email as if I were typing from my phone.  I’ll even introduce “strategic typos” to really sell the impression.  Then again, if I’m typing a really long email into my phone and want to have it appear more impressive, I’ll use the “professional” signature.
    • “Work Offline” so that I can work uninterrupted for even a little while.  Being able to shut off the firehose that is my daily work email inbox is incredibly helpful.
  • I addressed strategic typos earlier, but it’s really genuinely a real coping mechanism aside from just an email signature.  Adding typos makes it more likely someone will focus on appreciating your responsiveness and less likely they’ll get nitpicky about the content.
  • My old cell phone using Google Voice as my “personal cell phone” number.  I don’t want to talk to people, but it’s basically unavoidable.  Then again, a quick text from the phone can handle many situations.  Even better, clients feel like they really have access to me.  It’s also nice that I can keep Google Voice open on my desktop and be able to “text” from my computer and using my keyboard.  In reality, I just leave this secondary phone and just … walk away from it.  No one outside my family needs that much access to my life.
  • I’ve spent a lot of time tracking my productivity and know what days I’m the least productive.  Unsurprisingly, it’s Mondays and very especially Fridays.  This means I try to avoid meetings on these days as much as possible so that I can lean into unproductivity if I need to.  Why flog myself into working ever harder when I already know that however hard I push myself, it’s just not gonna be a productive day?
  • I really try to avoid all meetings.  Mercifully in person meetings are all but extinct.  Video meetings are nearly as bad, but at least I don’t have to wear pants.  Whenever I have a video meeting (or phone conference), I will make a special effort to ask for an “agenda.”  If you don’t have an agenda, or at least some kind of idea about what you want to accomplish at a meeting you’ll never know if you’ve succeeded at the meeting … or when it should end.  And, once I have the agenda, I will send an email with as much detail and cover as many points as possible.  Sure, no one will read it… but its’ my way of preparing for the meeting and I can keep referring back to it as necessary. I’d say in roughly 40% of situations that email is enough to torpedo the entire meeting.
  • Recently I created, with the help of ChatGPT4 I wrote an Outlook macro which will help me automate when I send emails.  Whenever the “Work Offline” button is toggled and I hit “send” on an email, it picks a random time between 7:15 AM and 7:59 AM and schedules the email to go out on the next business day.  Sure, this means people will get a flood of emails from me first thing on Monday morning.  But, it’s that a lot better than getting a stream of emails from me all weekend?
  • I hate phone calls, so I will dodge as many as I can get away with.  And, when I’m on a long phone call, I will play a recording of someone knocking on my door and asking for my attention in increasingly urgent tones, until I can get off the line.

I don’t know – maybe this all adds up to some kind of antisocial behavior or DSM IV diagnosis?  What I do know is that with these various tools I’m able to better work with others in a professional setting.

It’s a little after 4AM right now.  I’m not sure how to end this post so I’m just going to publish it.  :)

  1. In so far as I can be responsible for other humans []
  2. God, wouldn’t that be an amazing Halloween costume?!  Me dressed as three racoons dressed as me?!!? []
  3. Where was I? []
  4. Don’t @ me.  I don’t care. []

Combining Multiple Video Files

Rather than send me a single set of video files, my client’s vendor sent me… 149 separate MP4 files, ranging from a few seconds to about 11 minutes long.  I have no interest in sorting through dozens of video files, cataloging them individually, and then trying to review them in order.

While I would have thought VLC would have been a good drag-n’-drop way to stitch them all together, the version I had and the newest version available both weren’t letting me save multiple files into a single file.

A bit of googling and I stumbled across an old friend – ffmpeg!  I hadn’t used this program to transcode video since the early days of DIVX, backing up DVD’s back in the late 1990’s / early aughts.

Here’s the process I settled on for my Windows machine:

  • Created a batch file to create a list of the video files (which included spaces, commas, and all kinds of nonsense command line tools hate).  The entire contents of the batch file was:
    • dir *.mp4 /b > list.txt
  • Since I’m using Notepad++, I used the find/replace function to search / replace on “list.txt”:
    • /r/n
    • ‘/r/nfile ‘
  • Even using some find/replace magic, I still needed to adjust the first and last lines, but that wasn’t so bad.
  • Then, the videos which had been named in semi-logical pattern, were not in strictly alphanumeric order.  I re-ordered them in the text list to the order I’d wanted to view them in.
  • I dropped the FFMPEG executable, downloaded from this mirror, into the folder with the video files and list.txt, then made a new batchfile which contained the following:
    • ffmpeg -f concat -safe 0 -i list.txt -c copy combinedfilename.mp4
  • Now, I could have typed this into the command line, but since I wanted to batch certain files together, it was just easier for my purposes to have the batch file.  Plus, now I have the executable and the batch file for future use.

Anyhow, I hope this helps save someone, perhaps even myself, a few minutes of hair pulling and searching.  :)

Adventures with a (Cheap) Vinyl Cutter

I don’t have any affiliate links to shill, but I really like Monoprice.  They sold cheap re-branded 3D printers, decent office equipment, and sometimes they will have an absolutely ridiculous deal on one of their products.  I’d say, overall, the quality is “pretty good” across the board and when you can find a deal on something, it’s an easy decision.  I picked up an extra Monoprice Mini Delta 3D printer because it was so cheap, I could use it for parts and not feel bad.1  I’ve been happy with their egg cooker, USB hubs, HDMI cables, various random testers.  The other day I saw they had a sale on their “MakerCraft Mini Craft Cutter” for $80, when it’s normally $230, with free shipping and had to buy it.  If you missed out, I’d highly recommend signing up for their newsletter.  About twice a year they have some deal that’s just bananas.

It’s been sitting off in a corner for nearly two months while I’ve been distracted by Maker Faire preparations and work, but tonight I gave it a shot.  I’d say, like most other MonoPrice things, it’s “pretty good.”  The included software “Sure Cuts A Lot Pro 5” is not very intuitive, the documentation on the machine and software is pretty lacking, and the tutorials aren’t very helpful either.

Even so, with some futzing around I was able to run a test cut and mostly get another design cut out.  Pictures later.

Here are some of the things I learned:

  • After you drop the blade into the machine, be sure the carriage and move all the way back and forth.  It’s very easy to have it protrude upwards very slightly, causing a horrible clacking / grinding noise.
  • I’m not sure if it’s me, the way I loaded the sticky back cutting mat, or some combination, but the large design I cut out was  off the piece of vinyl by about 1″.  I would recommend making sure your piece of vinyl is about as big as the 8×10 cutting mat.  I am not sure, but I suspect the “vertical” direction has a lot more variability than the “horizontal” direction.

I tried to cut things several times without success.  I tried a lot of different ways to get it going, so I don’t know what got me cutting.  At first the machine would beep at be intermittently, and then regularly.  I have no idea what caused that to happen – or why it stopped.

After the machine registration / cutting mat homing procedure, which sounded about as much as you would expect a small plotter to sound, it was surprisingly quiet.  I’ve never used a craft or vinyl cutter before, so I guess I had just built it up in my head.

I’m going to try cutting some more things tomorrow and look forward to posting some more progress.

I’ve cut several medium complexity designs out of HTV and it was incredibly tedious.  I tossed a very complicated design into this craft cutter and it quietly ripped it out like a champ.  For $80 shipped, I would easily recommend this device to anyone who wanted to experiment with a craft cutter and wasn’t afraid to spend some time tinkering with software and settings.

  1. And, later, I had to! []

How to Uninstall McAfee AntiVirus

I got to my computer this morning and discovered a pop-up from McAfee AntiVirus altering me to some nonsense or other.  Without going into all the reasons, I don’t like or want McAfee on any of my computers.  Given when it was installed, I believe it was quietly bundled with the Adobe Reader I installed yesterday (and now uninstalled as well).

I went through the normal process of trying to uninstall a program:

  • Settings
  • Add / Remove Programs
  • Find “McAfee” and click “Uninstall”
  • When you do, you’ll see a small window pop up offering you some promotion.  However, this is where the uninstallation process stopped for me!  The window appeared too small and the text too large and the only options available to me were to close the window (in which case McAfee stays) or click on their offer (which didn’t tantalize me either).  There was no way to scroll the contents of the window to see what else was below their text and offer.
  • I realized there might be more below their offer, so I hit the “Tab” button a few times.  This caused the window to focus on the next button “Uninstall” (in white) on the bottom left and to see the “Go to Offer” (or somesuch, I wasn’t paying attention to it) button on the bottom right.
  • I clicked Uninstall and it hasn’t been back since…

Hope that helps!

Review of DriveThruCards.com

TLDR:  The cards from DriveThruCards.com (DTC) arrived yesterday and I couldn’t be happier with the result.  Great customer service, product, and value.

  1. Shipping:  Great
    1. 3/19/2024:  I ordered 120 cards around 2 AM PST in California.
    2. 3/19/2024:  The DTC website was updated with the following statuses:  Pending Payment Approval, Paid For, Sent to printer, Confirmed.
    3. 3/24/2024:  I received a shipping confirmation email from DTC in Overland Park, Kansas with a USPS tracking number at about 4:32 PM PST.
    4. 03/25/2024:  The date on the “External Packing Slip” included with the box.
    5. 3/28/2024:  USPS sent me a notification the package arrived around 8:29 AM PST.
    6. This was basically exactly as long as my Reddit lurking had suggested (about 10 days) it would take.

      Order confirmation and status screen

      Order confirmation and status screen

  2. Packaging:  Great
    1. The cards arrived wrapped in a cellophane band, within packing paper, inside a small box (about 5″x5″x3.5″ cube).  This was perfectly fine for these cards.  They have options for tuck boxes and other containers, but I didn’t need or want these for this project.
  3. Card Quality:  Great
    1. Text and images were sharp, legible, and colors rich but slightly darker than what I saw on my computer screen.  By tinkering with Inkscape, I would guesstimate the final card was about 5-10% less bright than what I saw on my screen.  Without comparing the cards directly against a large bright monitor, I don’t think I would have noticed this difference.
    2. When I set the deck down on a flat surface and run my finger over the side of the stack of cards, there’s a very slight variation over a few cards.  It’s barely perceptible and probably totally fine for any kind of card usage or card game except a super precise cut for casino playing cards.
    3. When the cards are viewed edge-on in a stack, you can tell see a faint bit of the card’s edge color.  I grabbed some “Magic: the Gathering” cards and looked at a mix of black and white bordered cards and noticed that even the black border cards seem to look white-ish when viewed edge on.  The slight bit of color here doesn’t bother me at all and for most purposes would be totally irrelevant.
    4. The cards were 2.503″ or 63.57 mm wide and 3.506″ or 89.05 mm tall, or about 0.2% large.  Some variation is to be expected in any order and this miniscule variation would be completely unnoticeable except I used digital calipers to measure them.
    5. The cards, printed on DTC’s “premium stock,” advertised as 11.4 pt (0.0114″) were 0.0115″ or 0.29 mm thick.  Flicking the cards against a table, right next to an actual casino poker card, they felt identical.  (The casino card has a slightly raised texture, but the flex, bounce, and flick of the card stock felt identical).
    6. Card Cut.  This is the one aspect that didn’t come out exactly as I had planned.  Ten of the cards I printed had borders, but they were visibly different widths at each end.  These cards were Premium U.S. Poker sized (2.5″ x 3.5″), the PDF itself was 2.75″ x 3.75″ (to account for the 1/8″ bleed area at each edge).  Unfortunately, I didn’t notice this until after I had used the cards a bit, so I don’t know whether top or the bottom was slightly thinner.  Since these cards are basically dividers, this isn’t a huge deal for me.  However, I’d prefer being able to get them back with an even border all the way around.
  4. Customer Service:  I discussed the responsiveness of the DTC customer service team in the prior post.  They went out of their way to help me with my project – and it really smoothed things for me.

I simply could not be happier with these cards.  I will absolutely be trying them again.

Print On Demand Custom Cards
  1. Custom Cards with DriveThruCards.com
  2. Review of DriveThruCards.com
  3. Designing Custom TCG Cards and Proxies

Custom Cards with DriveThruCards.com

I’ve been looking to get some playing sized cards for various purposes recently.  I’ve enjoyed making my own cards from blanks ordered off of Amazon, but for things that might get used a little more regularly, it would actually help to have these things pre-typed/printed.  And, as a long-time / returning enthusiast of a particular card card game, I was also looking to print up some proxy cards for casual play.  I don’t want counterfeit cards – just make some obviously unofficial stand-ins for real cards in casual play.

  1. Cost Breakdown
    1. If you do any kind of Googling about searching for a company to print up cards of various sizes, you’ll quickly end up at MakePlayingCards.com – or a company that has a website that looks nearly identical to MPC.  Getting a single deck of custom cards printed up through MPC is $26.15 for up to 108 cards (they offer incremental price breaks) plus $11.99 shipping (with tracking taking about 20 days) as the cheapest option, coming to $40.17 (including some tax).  This is roughly $0.37/card.
    2. Lurking in some Reddit forums, I found a few suggestions on different ways to create proxy Magic: the Gathering cards.  These forums renewed my interest in getting some cards printed up – and lead me to DriveThruCards.com.  I just placed an order for 120 cards,1 but I’ll describe the cost for 108 cards for an apples-to-apples comparison.  A single deck of custom cards printed through DTC is $12.42, plus $5.99 shipping (USPS Ground Advantage and anecdotal evidence from Reddit suggests ~10 days), plus  $1.00 in tax, comes to $19.41.  This is roughly $0.18/card.
  2. Benefits / Costs
    1. There’s no question the MPC website is cleaner and slicker, featuring drag and drop options, without a lot of technical jargon about printing, colors, etc.  They also seem to have many more options for card sizes, materials, and finishes.  They also have lots of templates in various formats to download and populate.  The obvious downsides are the length of shipping required and the cost, both estimated to be roughly twice that of DTC which is apparently in Overland, Kansas.
    2. The DTC website is… by their own admission, “challenging to learn.”  While I’m sure the interface permits a ton of customization, the dizzying array of options is daunting.  They have lots of guides on their website and knowledge base, as well as elsewhere, but it’s probably too much information.  I went with DTC for my first custom card order because I wanted to inexpensively try out some ideas and I figured that after the first order, I’d probably get the hang of their system.  However, one thing that really sets DTC apart is the responsiveness of their customer service.  I’d emailed them in the middle the day and middle of the night (aka goblin hours) and someone always back to me super fast.  Although DTC doesn’t have official PDF templates, Brian with DTC kindly whipped one up and emailed it to me which answered tons of my questions.
  3. Anatomy of a Printed Card
    1. Both MPC, DTC, and other print-on-demand (POD) websites have numerous descriptions, graphics, tutorials, and samples all using slightly different words, relating to the various sizes, printing zones, etc.  I found it incredibly confusing.  Now, I’m not certain I’ve gotten everything right, but here’s my best understanding…
      Annotated sample poker card

      Annotated sample poker card

      1. Cut Line / Trim Line / Bleed Line.
        1. The area described by the solid black line will be where the card is trimmed to the exact dimensions of the card.  The good thing about knowing what this line means is that if you know the final dimensions of your type of card, this is easy to look up and then design everything else around it.
        2. Importantly, you don’t want to include this line in your designs.  The purpose of the “safe” zone area is so the critical components of your design are certain to appear on the final product – even if it is perhaps slightly offcut.  The purpose of the “bleed” zone is to make sure a “full art” card doesn’t have bits of white or black at the edge if it is very slightly miscut.
      2. Safe Area Line / Border.  The important part to know here is that the distance from the “cut line” to the safe area is 1/8″ or 3.175 mm on all sides.  Thus, if you know the dimensions of the card you want, you just make sure your critical art and text don’t exceed this area.  All the area inside the safe area line is the “safe zone.”
      3. Bleed Box / Bleed Area / “Full Bleed” / Page Size.  As with the Safe Area Line, this is easy to figure out – it’s just 1/8″ or 3.175 mm outside the edges of the cut line.  This should be a rectangle.
  4. Software / Design Process
    1. I don’t have Adobe InDesign, Photoshop, Illustrator, or Affinity Publisher – and I wasn’t going to buy / subscribe to any of these just for this one project.  What I do have, however, is OpenSCAD and Inkscape.  Using OpenSCAD I started with a rectangle of the precise dimensions to match the exterior of the “US poker” card I wanted printed, then exported this to an SVG file.  I then did this for a rectangle of the “bleed box” size, safe line, and also the trim line.  I then imported all of these into Inkscape, layered them, and used them as guides while I designed my cards.  I made sure the critical areas were within the safe line, but made the safe line, trim line, etc all invisible.  Inkscape will allow you to export a file into a PDF file format which DTC accepts.  I created fronts and backs for cards, each exported as a separate PDF, then combined all of them using one of my favorite pieces of freeware, PDFTK.
  5. Potential Issues, Fixes
    1. Unembedded Fonts.  Apparently Inkscape did not embed all of the fonts used in the creation of the PDF.  When I tried to upload the PDF originally, DTC’s uploader balked at this and said I’d need to embed the fonts.  While I used a different PDF program (Foxit PDF is reasonably full featured and way less expensive than Adobe) to embed the fonts, I think I could have simply re-exported all the card faces as images instead of PDFs, then combined those into a new PDF which just had pictures (including pictures of the desired text).  It might have been possible to change the fonts as well to be more uniform, but given the number of cards I was creating, I didn’t want to do that.
    2. Currency.  I’m putting this here more for me than anyone else who might stop by.  At some point while using their website I accidentally did something which made all the prices and calculations appear in the Japanese Yen.  :/  I’d been through the account settings numerous times and even cleared my cookies and website cache trying to fix this problem.  After an embarrassingly long time, I gave up and emailed Brian to ask for help.  As so often happens to me… moments after hitting send I saw website footer had a drop down box to choose the currency and language.  Sorry Brian!

So, what’s next?  Well, after placing the order at roughly 2am PST on 3/19/2024, now it’s time to just wait and find out if the cards are going to get produced and arrive!  It’s now almost 6 pm PST, and their Order History page says “Sent to printer.”  Some Reddit posts suggest that it takes another 1-2 weeks to actually ship.

Print On Demand Custom Cards
  1. Custom Cards with DriveThruCards.com
  2. Review of DriveThruCards.com
  3. Designing Custom TCG Cards and Proxies
  1. $20.86, if you’re being nosy []

Heat Transfer Vinyl T-Shirts Without a Craft Cutter (2023)

Saturday, October 21
Zone 2 – Make: Demo Stage
2:30 pm – 3:00 pm
Let’s goooooooooooooooooooo!

Heat Transfer Vinyl T-Shirts (Without a Craft Cutter)
  1. Heat Transfer Vinyl T-Shirts – Without A Vinyl Cutter
  2. Heat Transfer Vinyl T-Shirts – Without A Vinyl Cutter, Part II
  3. Heat Transfer Vinyl T-Shirts Without a Craft Cutter (2023)

DIY Carved Eraser QR Code Stamp

After some modest success carving some neat designs into pink erasers, I tried making a QR code stamp.  It didn’t work well at all, with exactly just one impression working … sometimes.

The first attempt took a really long time and turned out terribly.  After a few days break, and some mental distance from the project, I returned with some new ideas and inspiration.

Here was my new approach and plan:

1. The Stamp

  1. Go Slow.  Proceeding slowly and methodically is always a good idea with sharp instruments.  I went fairly slowly the first time, but this time I would be even more methodical.
  2. Cutting.  Rather than using the carving blades for the QR code features, I switched to using a craft knife.  It was just too hard to cut precise lines with a V or U shaped blade, managing not just the direction and speed of the cut – but the depth as well – for both sides of the blade.  The craft blade let me focus on just one side at a time.  I used the blade to cut at about a 45 degree angle along one side, then other side.
  3. Don’t Cut Too Much.  I used calipers to measure the pixels cut into my first attempt as well as the stamped result.  I discovered \the stamp pixels were very slightly larger than their rubber counterparts.  This tells me it would be better to cut too little rubber – and cut more later if necessary.
  4. Removing Scraps.  Rather than sticking my big old fingers into the eraser or trying to pop it out with the blade, I used a pair of 3D printed tweezers to pluck them out.

2. The QR Code

  1. Optimize the QR Code.  There are several ways to optimize a QR code for eraser / stamp carving. 1.  I used as many of these methods as I could:
    1. “Pixel” Size.
      1. As you add more information into a QR code, the QR code generator will need to use more black and white units2 to encode the information.  After some tinkering it seems like the smallest QR code that can be generated is 441 total pixels, 21 wide by 21 tall.  The absolute largest QR code I could generate looks like one of those “magic eye” posters.  I didn’t even try to count how many pixels wide this thing was.  It’s 9,216 pixels, 96 wide by 96 tall.
      2. I was having a hard time carving a stamp 21 pixels wide into a 24.5 mm3 wide eraser, so the idea of carving more than 21 lines into an eraser by hand seemed not feasible.  The very next step up from the 21×21 grid would be a 25×25 grid, so I knew I had to find a way to limit the data, find the best error correction, and find a way to cut these small pixels and thin features.
    2. Proper Error Correction.
      1. QR Codes have built in “error correction” that allows the user’s scanning device to scan information from a partially formed, damaged, or obscured code.  These settings range from L (low), M (medium), Q (quality), and H (high quality) able to error correct from up to 7%, 15%, 25%, and 30% damage respectively.  Lowering the error correction allows you to create a smaller QR Code, but it will also be less robust.
      2. I fiddled with these settings a lot to find the maximum amount of data I could put into a QR code while still retaining a maximum size of 21×21 pixels.  I was able to encode about 16 characters in a L, 13 characters in a M, 10 characters in a Q, 6 characters in a H.  The code stores numeral easier and requires more pixels to store letters and special characters.
      3. My first attempt used an error correction level of L, but was basically unusable as there must have been more than 7% distortion.  This time, I decided to try for a very high level of error correction with the Q setting for 25%.
    3. Reducing Data.  This is where I used some tricks you may, or may not, be able to replicate.
      1. URL Shortener.  A TinyURL link to my Instagram page requires 29 characters.  Looking above, this would immediately suggest a 21×21 pixel QR code would not be possible.
      2. Trimming a Link.  After some fiddling, I realized that as long as the data encoded looked like a URL (as in some characters separated by a “.”), the QR code scanner would interpret it as a link.  This means we can skip the “http://” and “https://”, saving 7-8 characters!  Unfortunately, this still doesn’t let me encode the shortest URL that TinyURL could give me which requires 20 characters after discarding the “http” stuff.
      3. Maybe Just a Domain?  Maybe you just wanted to point someone to your website and not a big long link, shortened with a URL shortener.  Let’s work the numbers backwards.  Most commonly used domains end with “.com”, “.org”, “.biz” – with 4 characters each.  Using the information above, this means we could use a domain name with up to 12 characters for an L encoded QR code, 9 for an M, 6 for a Q, and just 2 for an H.  While it would be easy to find a 12 character domain, you’re stuck with only a 7% margin for your error correction.  A domain with 6 to 9 characters for Q and M would allow for 25% and 15% error correction.  You can still find 6 character “.com” domain, but… they’re unlikely to be very memorable.  This isn’t necessarily a problem.  You might be able to find a good short domain with an unmemorable name, but forwards the user to your real website.  The problem, of course, is that no one is going to want to click on that link.
      4. How About a custom URL Shortener?  It’s still possible to purchase a short URL, but they’re pricey.  I happened to buy a good one several years ago and have hung on tightly to it.  I slapped a YOURLS install on it, and have been using it ever since.  Using my own URL shortener means I can keep the URL down to just 9 characters – including the TLD!

Okay, back to carving.  I grabbed my headphones, put on some music, and took it very slowly – a little under two hours.  Here’s some progress photos:

Here’s how it looked (with some additional shots to show the original design overlaid):

I stamped this design 9 times – and all 9 were more or less easily scannable.  The neat thing about this design is that it points to a URL shortener I own, so not only is it about as tiny as possible, but I can change the destination if I ever needed – without having to spend two hours recarving an eraser stamp!

Eraser Stamp Carving
  1. Carved Eraser Stamping
  2. Further Adventures in Eraser Carving
  3. DIY Carved Eraser QR Code Stamp
  1. I won’t get too much into the weeds on the actual method of generating QR codes, mostly because I haven’t studied the math in it, but I did find a great article which has a lot of good background info and explanations []
  2. I’ll call them “pixels” from this point forward []
  3. Just barely under an inch []