2020, So Far

So, here we are in 2020. A few things have changed since my last update in… 2018??

On COVID-19 & the novel coronavirus: what’s there to be said? It sucks. Most of us will get through this. Our president is a freaking moron.

In February, after four years at AMD, I started a new gig on the AI performance team at Unity. So far, the team is amazing as are the projects. It’s great to work on projects in which I’m interested and capable of delivering great results. (Writing PowerPoint presentations about GPUView traces is not what I’d call thrilling.)

Here in Texas, as in other parts of the world, we’re in a sort of lockdown-lite mode. Restaurants are open for takeaway orders only. Most other businesses are following the same model. Our neighboring county is enforcing a more strict mode where only “essential” businesses are open, which makes a lot more sense. But, for that to really be as effective as it should, all of the neighboring counties should follow the same policy.

Oh, well. No one asked for my input.

The kids are stuck at home since the schools are closed. Gwen(5)’s autism program has been shut down for weeks which isn’t doing her any good. It’s nearly impossible to get the boys to do their school work. Google Classroom does not have the most intuitive UI. Asking a 10- and 7-year-old on the spectrum to sit at a computer for hours each day is just ridiculous. We’re doing the best we can, with limited success.

All race events have been pushed to later in the year. Which is fine, since I need a clutch and a timing chain. When the weather clears up, I’ll do the chain (it’s really not difficult on this car). A friend is going to do the clutch for me since he has, among other things, a lift. Clutch swaps also aren’t complex, but they’re a horrendous pain to do on jackstands.

My next garage will have 10′ ceilings and a two-post lift.

Speaking of which, we’re spooling up a remodel and house addition. It’ll likely be months before actual construction can start, though. Having more space for the kids, a real workshop and more than two bathrooms will be great. I am NOT looking forward to the inevitable property tax increase. Our city has the highest effective tax rate in the state. It sucks. But, the schools are amazing, the people are nice and the traffic is statistical noise.

Cheers! Stay safe, everyone.

The Problem with VR

One of the coolest things that’s come along in recent years in my field is virtual reality.

I’m lucky enough to have an Oculus Rift, touch controllers, and an HTC Vive sitting here in my office. If you haven’t had the chance to use one of these devices, you’re missing out. Exploring a completely synthetic environment in glorious  stereoscopic is initially mind-blowing. The first time I put on a DK2, I couldn’t stop smiling.

Now, Facebook (which owns Oculus) is starting to push the social aspects of VR. Watch a movie with friends, play a game together, etc.

To be clear: I think that’s really cool. I have friends in other parts of the country (and other parts of the world) with whom I’d like to communicate in a more immersive way than what we get from Skype calls. The current iteration of VR ecosystems has the potential to improve that experience.

But – and it’s a big “but” – VR is also inherently isolating. When I put on a Rift or a Vive, I become immersed in a virtual world. But, that necessitates an effective exit from the real world.

The built-in headphones on the Rift are amazing. They also keep me from hearing what’s going on in the real world. The optics are very convincing, but (duh) prevent awareness of what’s happening in front of me.

Walking is very entertaining, and potentially dangerous.

(Honestly, I’d just love to be able to see my feet!)

AR has the potential to address some of these concerns, by blending the synthetic environment with the real world. I feel that, for social applications to reach their full potential, we need a system that is not so isolating. We should not have to drop out of the real world to enjoy the virtual experience.

(Also, if you have small children, like I do, you probably know that leaving them to their own devices for extended periods of time rarely ends well. )

I’m impressed with the state of the art, and with the advances that are in development. But, what I want, more than anything, is the ability to utilize this technology without increasing the isolation that it requires.

I’m sure we’ll get there.



CNC Router Progress

I’m nearly done with version 4 (or maybe 5) of my CNC router. Last year, I started building this from parts I had on hand, including unsupported steel rail and linear bearings, red oak, some crappy lead screws and HDPE (aka, Walmart cutting boards.)

The mostly-complete version 1 router.
The first version of the CNC with unsupported aluminum rail and misc. wood and HDPE cutting board components

Original X/Z carriage made from plywood, red oak, aluminum plate and HDPE
Version 1 X/Z carriage with HDPE cutting board router mount for the RIDGID trim router

That version mostly worked. But, it wasn’t the most accurate machine.

So, I started replacing wood with 1/2″ aluminum:

Version 2 of the X/Z carriage, from 1/2″ aluminum riding on 20mm steel rail

That worked pretty well, but the unsupported rail had a LOT of deflection. I could easily twist the two rails over an inch in the middle of the 38″ span, which is not sufficiently rigid when cutting hardwood.

I had to decide then between different linear motion systems, including fully supported rail, flat carriages, or wheels. I went with OpenBuilds c-beam aluminum extrusion and hard Delrin wheels. I was initially skeptical about the wheels as I suspected they might compress under load. However, so far they’re pretty awesome.

I made custom plates for the carriages and motor mounts and went with a belt drive the long (49″) axis. The short axes use T8 ACME trapezoidal lead screws with Delrin antibacklash nuts.

The mostly-complete version 4 router
New version using OpenBuilds C-Beam, dual lead screws and belt drive

Y/Z carriage made from two sheets of 1/4" aluminum and lots of OpenBuilds wheels
Custom plates and motor mounts from 1/4″ aluminum

I used my OpenBuilds minimill to make all of the end plates and carriage plates from 1/4″ 6061 aluminum. I broke at least five endmills before switching to a 1/4 router bit. That worked significantly better, but due to the nature of router bits, I could only take off about 0.25mm per pass. It took a little over 30 minutes to cut each of the large carriage plates. But, it’s worth it.

The belt drive is (unsurprisingly) very fast, and so far is accurate and rigid enough for my purposes. Next up: cable routing and dust collection. Depending on how the accuracy tests go, I may need to add some sort of gear reduction system to the belt-driven axis.

Fun, fun, fun! I wonder if this is what it was like to have an erector set as a kid.

CNC Build Part 1 – Electronics Test

I started building a CNC router a number of years ago, but never really got around to finishing it. Kids, school, job, cars, and occasionally being in the same room as my wife sort of took priority.

While working on the table, I needed to plane some rough sawn lumber. But, I don’t have a planer.

So, I dug up part of the frame for the CNC, bolted up a sled, and did a pretty decent job of flattening the stock. (See pics in the previous post.)

Of course, that made me want to finish the CNC. I’ve assembled most of the frame, other than mounts for the motors, lead screws and nuts, limit switches and, oh yeah, I still have to build a Z axis. But, it’s a party.

See the video for some electronics test fun with an old laptop, Mach 3 and an XBOX controller.



More Table Fun

I needed to plane some rough-sawn lumber for the table top, and didn’t really want to pay someone to do it. There are a lot of videos and articles out there on how to do this, many of which require a planer ($$$$) and a jointer ($$$). I have neither of those, and I’m already over-budget on this project. If you happen to have some long, straight lumber, plywood and a slight excess of time, you can build a traditional router sled, as shown in this video by the Wood Whisperer:

174 – Flattening Workbenches and Wide Boards with a Router

(By the way, most of Marc’s videos are awesome. Sometimes I just leave his YouTube channel playing in the background when I’m working in the shop.)

It’s a great solution, but I didn’t really have the time or patience to build that.

Fortunately, I have a bunch of parts for a CNC machine that I never finished building many years ago. So, I made this out of the X/Y axis setup:

(The router lines scraped right off. I suspect they’re a side effect of a slightly uneven table.)

The rails keep the router flat enough for wood, though I’d like some more support if I were machining aluminum or any precision parts. It does generate a LOT of debris, which reminded me that I really need to put together some sort of dust collection system.

I was able to route a bowed, twisted 7′ x 11″ x 2.5″ board down to a perfectly – and I mean perfectly – flat usable piece in about 15 minutes. A larger router bit would’ve sped up the process significantly.

This experience, of course, makes me want to finish the CNC build, so I found the motors, controller board, amplifiers and other misc. bits in the garage where they’ve been for the past six years. I hope to get the Z axis done in the next week or two – not a lot of time with a new baby in the house – source some lead screws, fabricate mounts and get everything up and running soon. Should be fun!

Here’s the assembled, ultra-heavy table top before sanding:

Note that it’s not glued yet. The house is 172 feet from the shop, and this thing is heavy. I’ll glue it up when it’s in its final resting place.


New web host, site back up, and a brief update

I’ve finished moving to CloudAccess.net from Blue Host.

Cloud Access is about half the price of Blue Host, and they don’t do things like randomly auto-bill me $700 for three years of hosting and useless add-ons. (Guys, I don’t need your backup solution. I’m perfectly capable of exporting a MySQL database and zipping & downloading my home directory. But, yeah, thanks for playing.)

I’ve been building a table:

To put this in perspective, the red oak top weighs 250-280lbs, and the base is about as heavy as the top. There’s no metal (screws, brackets, etc.) in this thing, which probably made it take ten times as long to construct. However, it was worth it to learn the required joinery techniques and, of course, it’s always fun to buy new tools.

Now I’ve got my eye on a set of Japanese chisels. They are not cheap.

Oh, and we just had our fourth (and FINAL) kid, William, on 8/15. He’s healthy, we are very tired.