Category Archives: misc

Microscope mount

I’ve been using a relatively inexpensive microscope for SMD soldering work for some time, connected via HDMI to a 24″ monitor.

For the price, I’m definitely happy with it, but as I’ve been doing more soldering work, I’ve become less happy with the mounting stand. The arm it mounts to often does not reach far enough to get the optics over the part of the board in question, or the base is too tall or wide to fit under it. If you want to examine something from the side, you have to tip the entire base over. I have resorted to spinning the microscope around and counterbalancing the base with a large weight, which works for some definition of “works” but only improves the reach by a little bit.

I wanted to improve the situation, so built a 3d printed mounting fixture to position the microscope head. It provides for a few more degrees of freedom than the factory issued one, and provides a lot more reach:

The tubes are held together with M4 bolts with each axis having a thumbscrew used to lock it in place. The optics can now be tilted in the pitch or roll direction, and the total reach is around 25cm, up from the stock 7cm.

The only parts I had to purchase uniquely were these 14mm tubes from amazon, some thumbscrews used to tension each of the clamps, a steel plate used to weight the base down, and a new LED lamp. I already had sufficient M4 heat set inserts and mounting bolts to fit everything else together. Here’s a photo from before I had the actual steel weight plate installed:

Improved lighting for Pocket NC

Now that I’m making a lot of videos of machining with my Pocket NC, it was getting annoying setting up lighting for each one.  Thus I rigged up some LED strips in the interior of the enclosure.  Now I can shoot 60fps video any time of the night without having to set up external lighting!  Here’s to hoping a chip doesn’t short it out.

The strip enters through a small drilled hole

The power switch is taped to the side


It lights up!

Even when the case is closed!

Pocket NC 4 jaw chuck workholding

Workholding on the Pocket NC is still, well, a work in progress for me, and it is for many people.  There aren’t a lot of off the shelf solutions.  The machine does come with a mini-vise, which can hold a surprising amount, but it has some limitations.  For one, it isn’t referenced to the axis of rotation of the B axis.  Another, anything held in it can often be far away from the furthest Z travel available, resulting in the need to use extended reach tooling.

Enter, once again, Ed Kramer @ekramer3 on IG, who came up with a solution consisting of strictly off the shelf parts that results in a 4 jaw chuck being placed about 1.75in off the surface of the B axis plate.  This can hold round stock out to 70mm.

In case Instagram forgets itself, the relevant parts are:

A few pictures of my setup:



And here is a short video of it cutting:

Finally, if it is of use to anyone, this is my F360 file containing the fixture.  Bewarned, it is hard-coded to my V2-50’s B-table offset as calibrated by PocketNC.

Improved Pocket NC installation

After having used my PocketNC V2-50 for a while just sitting on top of the air compressor, I decided to try and improve its installation a bit.  For one, when the compressor kicked on or off, it would impart a significant vibration to the whole assembly.  Also, I needed a place to hold stock, tools, and intermediate parts.  Here’s a picture of my new setup.


The table isn’t particularly rigid, but at least it is now decoupled from the compressor.  The wire shelving below satisfies my storage requirements for now.

I am away until mid-August

If this space is looking stale, that’s because it is!  I am traveling until the middle of August.  Look forward to more robot and Pocket NC updates then!

In the meantime, check out these cool posts from the last year:

First aluminum cut on Pocket NC

Now that I made a cut in wax, my next step with the PocketNC was doing basically the same thing but in aluminum.  There is of course less room for error with the harder (but I suppose by no means actually hard) material.  It seems that I managed to use up a bit more luck than I expected, but still not too terribly costly so far.  My “learning moments” errr… goofs, so far:

Ensuring the part is contained within the stock

When I first made the toolpath, I programmed the stock a few mm larger than the actual stock to handle any mis-registration between the vise and the machine origin.  This was a good idea, as I still have about a 2 or 3mm mis-registration in the Y axis that I have yet to resolve.  However, when I did that, I managed to get the actual part about 0.5mm outside the actual stock.  This was easy to fix and for this part geometry, I even kept using the same stock for subsequent runs.

Here’s my very first aluminum chips running the first version:

Inconsistent assumptions between tool paths

As I was developing the tool paths for this part, I started out using a 3D adaptive path to cut away most of the outside material using a 3mm Datron single flute mill.


That was then followed by a series of contour paths or circular paths to finish up each of the outside edges.  However, in one incremental stage I had tweaked that first adaptive clearing to stop at the top edge of the wide flange, but still had a contour that traced it out.  Watching the simulation at high speed, I didn’t notice the problem, but when the resulting contour was run, it plunged the mill straight into unmachined material.

When running this, needless to stay the PocketNC, while tough, was in no way able to pull that off and the spindle stalled.  Fortunately, I was watching and actually got the machine safed before the spindle had completely stopped.  My camera had shut off before that point though, so I got no footage.

Switching tools

Next, I wanted to use a second longer reach tool to handle the central cavity, which goes relatively deep.  I dutifully entered the tool geometry into Fusion 360, including the fact that it was a 3 flute mill, but then managed to neglect to even look at what the chip load was and left all the feeds and speeds the same as for the 3mm single flute Datron.

Watching this live, it certainly sounded bad when it was doing the helical ramp in, but I chalked it up to chatter with the longer reach tool.  However, as soon as it started the adaptive clearing inside, it sounded much worse, but seemed to be making forward progress.  However, on the second plunge and adaptive clear, it managed to completely stall out the spindle.  I jogged the Z axis back out, fixed the feed rate, but when I spun up the spindle again, boom.  That was the end of that end-mill.

3rd (or 4th time) is the charm?

At this point, I reworked this first program to do what I could with the 3mm Datron end mill, which just meant I didn’t go all the way deep into the central cavity.  This completed all the way through with no big problems.  The last contour I did on the internal cavity also removed 0.001″ of material axially.  When that first plunged in, it did sound terrible, but only for a fraction of a second.  Still,  I probably wouldn’t do it again that way.

After all that I had this first half-part done.


The tolerances on the surfaces actually seemed to be nearly identical to the wax version, in that it was plus or minus a thousandth.  This was without any actual work to get the size I wanted, so is more of a baseline.  Presumably I can use tool width compensation or just tweak the contouring paths by a thousandth to get it where it needs to be.  That said, it was close enough out of the box that my bearing kinda fits on.


Future versions of this part

Not too long into programming this first part, I realized that with slightly different stock, I can do the entire part in a single setup with a breakaway tab by orienting the part off by 90 degrees.  That’s what I’ll try next.

Lessons learned

I guess these lessons are what I’m trying to get out of these exercises, and while they are certainly obvious to anyone who actually knows machining and CNC, I’ll write them out here as much for my reference as anything.

  • Watch at least the beginning of each tool path in simulation at real-time speed
  • Actually look at the computed chip load when configuring a new tool
  • Don’t rely on contour paths to remove any axial material
  • When it sounds bad, stop and rethink!
  • Run everything on the machine at 30 or 40% speed at least until nothing new happens before upping it to full speed

That said, I’m not trying to create a production environment here.  I’d like to be able to quickly turn my CAD models into tool paths and get parts made, and as long as the machining time is the same order of magnitude as the programming time I’ll be happy.    I am OK with breaking things now and then in service of that goal, so I don’t need to double and triple check of tool paths.

Finally, I want to thank Ed Kramer for posting his results with the Pocket NC V2-50.  All the mistakes here were mine, but he has provided a wealth of information on what feeds and speeds are possible in a range of materials with this machine.

New machine day: A second MK3S

As you may have noticed, I’ve been 3d printing a lot!

A stack of empty filament rolls
A stack of empty filament rolls

2 kilometers of filament!

Moving up to the gearbox motors for my quadruped has only made that problem worse, as all the parts are a bit bigger and heavier.  My first Prusa MK3S has been printing almost non-stop since I got it, so I figured it was time to increase my bandwidth more permanently.  Thus, a second MK3S!


This one I got from a kit so that I wouldn’t pay the 4 week lead time penalty of getting it pre-assembled.  I would have certainly preferred that, but I’m not sure I’ll be available to receive a shipment in 4 weeks, and I also could use the extra print bandwidth now.  Assembly was largely a breeze, although as predicted it did take a good 6 hours or so in total.

In any event, it looks like it is going strong right out of the box:



Quiet(er) air compressor for Pocket NC

Now that I have a PocketNC, the first thing I noticed was that I had a problem with noise volume.  The air compressor Pocket NC recommends is described as “quiet and durable”.  I can maybe believe the durable part, but quiet I have a harder time believing.

Grainger Compressor

I’m running the machine in my home office and I measured the compressor at upwards of 85dB.  That’s about the same as a bulldozer.  Despite me adding some vibration damping padding, it also did a pretty good job shaking the whole house when in operation.

Since there is no real point in having a mill I can’t run because its air accessory is too loud, I replaced it with a “quiet” compressor from California Air Tools — the 8010SPC.  Granted, no compressor is going to be silent, but this does a pretty good job.  In the office it is totally manageable.  If you close the office door, it is barely audible outside in the rest of the house.


While only about twice the cost of the Grainger unit, the bigger downside is its size and weight.  Clocking in at around 120lb, it is a beast.  Amazon reviews were nothing but shipping damage, so I had mine delivered to the local Home Depot at which it arrived seemingly unharmed, although with somewhat unorthodox packaging.  There was just a 5 sided box dropped on top of it, with the bottom caster wheels exposed out the bottom.

The next steps here are to build a table that the compressor can sit under, and the Pocket NC can sit on top of.  While running, the compressor is relatively vibration free, but it makes a pretty big kick every time it shuts off and a minor kick when it turns on.  It doesn’t seem to bother the Pocket NC that much, but it probably isn’t a good thing generally.


Pocket NC Raspberry Pi Wifi Bridge

The primary UI the Pocket NC presents is a web interface accessible over a virtual USB based ethernet port.  I wanted to be able to run mine not immediately near an ethernet jack, but also didn’t want to have to tote a laptop over every time to check on it.  I had plenty of raspberry pi’s lying around, so rigged one up as a wifi bridge.

First, I found a random case to print from thingiverse, the TurboPi:


Then I gave it a fixed IP address on my wifi network and set up IP forwarding with NAT.

iptables -A POSTROUTING -o eth1 -j MASQUERADE

Then, I saved that config:

iptables-save > /etc/iptables.ipv4.nat

And restored them in /etc/rc.local

iptables-restore < /etc/iptables.ipv4.nat

Finally, I enabled forwarding in /etc/sysctl.conf


Finally, I added a route on my desktop with the raspberry pi’s address as the gateway.  Now I can transparently access the PocketNC from anywhere!

Raspberry Pi forwarding network traffic to the Pocket NC