Painting By Numbers, Redux

Five years later, the digits I painted with Rust-Oleum Rusty Metal Primer have weathered pretty well, while the original ink has fallen off the retroreflective sticker:

Mailbox numbers - original vs primer
Mailbox numbers – original vs primer

As before, I wiped off the crud with denatured alcohol and painted neatly inside the lines. The other digits on both sides still look as good as the day I painted them, with only a few bubbles and nicks.

Memo to self: Next time, buy a big sheet of 3M retroreflective film, make a stencil by vinyl cutting, paint the entire number in one shot, and be done with it.

USB Wire Color Code: Grand Prize Blooper

Despite knowing the wire colors inside USB cables need not follow any particular convention, this still came as a surprise:

USB Cable - reversed red-black wires
USB Cable – reversed red-black wires

Yes, that’s a negative indicator on the meter: it reads -5.020 V.

No, I didn’t swap the test probe banana plugs on the other end.

A bit of continuity testing shows the green and white data wires are also reversed, so whoever assembled the cable simply soldered the proper wire color sequence backwards onto both connectors. As long as you don’t cut the cable to reuse the connectors, it’s all good.

Memo to Self: Stop trusting, always verify!

Monthly Science: USB Current Testers vs. NP-BX1 Batteries

Having some interest in my Sony HDR-AS30 helmet camera’s NP-BX1 battery runtime, I’ve been measuring and plotting recharge versus runtime after each ride:

USB Testers - Charge vs Runtime
USB Testers – Charge vs Runtime

The vertical axis is the total charge in mA·h, the horizontal axis is the discharge time = recorded video duration. Because 1 A = 1 coulomb/s, 1 mA·h = 3.6 C.

The data points fall neatly on two lines corresponding to a pair of cheap USB testers:

USB Testers
USB Testers

When you have one tester, you know the USB current. When you have two testers, you’re … uncertain.

The upper tester is completely anonymous, helpfully displaying USB Tester while starting up. The lower one is labeled “Keweisi” to distinguish it from the myriad others on eBay with identical hardware; its display doesn’t provide any identifying information.

The back sides reveal the current sense resistors:

USB Testers - sense resistors
USB Testers – sense resistors

Even the 25 mΩ resistor drops enough voltage that the charger’s blue LED dims appreciably during each current pulse. The 50 mΩ resistor seems somewhat worse in that regard, but eyeballs are notoriously uncalibrated optical sensors.

The upper line (from the anonymous tester) has a slope of 11.8 mA·h/minute of discharge time, the lower (from the Keweisi tester) works out to 8.5 mA·h/minute. There’s no way to reconcile the difference, so at some point I should measure the actual current and compare it with their displays.

Earlier testing suggested the camera uses 2.2 W = 600 mA at 3.7 V. Each minute of runtime consumes 10 mA·h of charge:

10 mA·h = 600 mA × 60 s / (3600 s/hour)

Which is in pretty good agreement with neither of the testers, but at least it’s in the right ballpark. If you boldly average the two slopes, it’s dead on at 10.1 mA·h/min; numerology can produce any answer you need if you try hard enough.

Actually, I’d believe the anonymous meter’s results are closer to the truth, because recharging a lithium battery requires 10% to 20% more energy than the battery delivered to the device, so 11.8 mA·h/min sounds about right.

Memo to Self: Trust, but verify.

Mini-Lathe vs. Case-Hardened Shaft

While doodling a drag knife holder for the Sherline, I figured a 3/8 inch shaft would hold all the parts and fit neatly into a standard Sherline tool holder, which it did:

Sherline Diamond Drag Holder - installed
Sherline Diamond Drag Holder – installed

Having recently upcycled a 3/8 inch shaft from the Thing-O-Matic into a pen holder for the CNC 3018-XL, I cut off another section with an abrasive wheel, then tried to face it off:

Hardened shaft facing - abrasive step
Hardened shaft facing – abrasive step

Although the mini-lathe’s carbide insert gnawed at the shaft’s case-hardened shell, it obviously wasn’t making much progress against that step.

Back to the abrasive cutoff saw:

Hardened shaft facing - abrasive flattening
Hardened shaft facing – abrasive flattening

Which looked better, although it still wasn’t quite perpendicular to the shaft axis.

Back to the lathe:

Hardened shaft facing - lumpy face
Hardened shaft facing – lumpy face

Well, it’s better, but it sure ain’t pretty.

Put gently, the mini-lathe’s lack of rigidity doesn’t help in the least. The compound was a-reelin’ and a-rockin’ on every revolution and eventually turned a slight tilt into a distinct radial step.

Memo to Self: Dammit, use a brass rod!

COVID-19: Elephant Sighting

As far as this engineer can tell, here’s about all you need to know about the COVID-19 pandemic:

Total Deaths = Total Cases recorded two weeks earlier

This also works forward in time: given the total number of cases “today”, I (and you) can predict the total number of deaths in two weeks, give or take a few days.

Run the numbers for Italy, because it has a relatively long timeline and trustworthy data:

  • 2020-03-01: 1694 cases → 2020-03-15: 1809 deaths
  • 2020-03-02: 2036 cases → 2020-03-16: 2158 deaths
  • 2020-03-03: 2502 cases → 2020-03-17: 2503 deaths

As the numbers become difficult to comprehend, the time difference slows to 16 days instead of 14:

  • 2020-03-06: 4636 cases → 2020-03-22: 4825 deaths
  • 2020-03-07: 5883 cases → 2020-03-23: 6077 deaths

On 2020-03-23, Italy had 63,927 confirmed cases. Prediction: Easter will not be celebrated in the usual manner.

Consider the data for the US, also in March 2020:

  • 2020-03-05: 175 cases → 2020-03-19: 174 deaths
  • 2020-03-06: 252 cases → 2020-03-20: 229 deaths
  • 2020-03-07: 353 cases → 2020-03-21: 292 deaths

Pop quiz: Given that the US has 32,761 total cases as of today (2020-03-22), estimate the total deaths in two weeks.

New York State will have similar statistics, although it’s too soon to draw conclusions from today’s 20,875 confirmed cases.

In addition to the Wikipedia articles linked above, you may find these sites useful:

Exhaustive tracking and mapping from Johns Hopkins (the GUID gets to reach the JHU data): https://www.arcgis.com/apps/opsdashboard/index.html#/bda7594740fd40299423467b48e9ecf6

Comprehensive COVID-19 tracking, with logarithmic graph scales: https://www.worldometers.info/coronavirus/

More raw data: https://virusncov.com/

CDC National cases, with a per-day graph down the page: https://www.cdc.gov/coronavirus/2019-ncov/cases-updates/cases-in-us.html

New York State COVID-19 info: https://coronavirus.health.ny.gov/home

Perhaps more useful for me than you, but the Dutchess County information: https://www.dutchessny.gov/Departments/DBCH/2019-Novel-Coronavirus.htm

The current recommendation: remain home unless and until you develop COVID-19 symptoms requiring urgent medical attention. Should that happen to me, I fully expect there will be no medical attention to be found and, certainly, all available medical equipment will be oversubscribed.

Speaking strictly as an Olde Farte looking at the data, the future looks downright grim.

On the upside, it’s amazing how little an order to remain home changed my daily routine: so many projects, so little time.

Memo to Self: Wash your hands!

CNC 3018XL: Arduino + Protoneer CNC

If the truth be known, I wanted to do this as soon as I discovered the CAMtool V3.3 board hardwired the DRV8825 PCBs in 1:32 microstep mode:

CNC 3018XL - Protoneer atop Arduino - installed
CNC 3018XL – Protoneer atop Arduino – installed

The Protoneer CNC board has jumpers, so selecting 1:8 microstep mode is no big deal.

As before, I epoxied another row of pins along the I/O header for Makerbot-style endstops:

Protoneer endstop power mod
Protoneer endstop power mod

I’ll probably regret not adding pins along the entire row, but, unlike the MPCNC, the CNC 3018XL won’t ever have hard limit switches. I plugged the Run-Hold switch LEDs into an unused +5 V pin and moved on.

I modified the DRV8825 driver PCBs for fast decay mode:

DRV8825 PCB - Fast Decay Mode wire
DRV8825 PCB – Fast Decay Mode wire

Then set the current to a bit over 1 A:

3018XL - Protoneer setup - Z 1 mm
3018XL – Protoneer setup – Z 1 mm

Six hours later I hauled the once-again-functional CNC 3018XL to my presentation for the ACM:

Spirograph - intricate sample plot - detail
Spirograph – intricate sample plot – detail

Memo to Self: Time to get another Prontoneer board …

CAMtool V3.3 vs. The Fat Fingers of Death

As is my custom, the day before showtime I talked my way through a final full-up dress rehearsal, with the HP 7475A plotter and the CNC 3018XL running their demo plots. As if to justify my attention to detail, the 3018 refused to home, with its X axis motor grinding in a manner suggesting something had gone terribly wrong with its driver.

OK, I can fix that™.

Turn off the power, verify the leadscrew turns smoothly by hand, check all the connections & connectors, then pull the DRV8825 PCB to see if anything looks obviously wrong. It didn’t, so I carefully re-plugged the driver and moved the whole affair to the Electronics Workbench for further study.

I turned on the scope and Tek current probes, then turned on the 3018 power supplies, whereupon a great cloud of Magic Smoke emerged from the CAMtool board and filled the Basement Laboratory with the acrid smell of Electrical Death.

It seems I carefully and meticulously re-plugged the DRV8825 PCB into its socket exactly one pin too high, which, among other Bad Things, connects the +24 V motor power supply to the driver GND pin.

Obviously, this did not end well:

CAMtool V3.3 - blown stepper fuse
CAMtool V3.3 – blown stepper fuse

The fuse, put under considerable stress, vented smoke & debris in all directions across the board; note the jets above the white motor connector. Surprisingly, the 1 kΩ resistor just below it is in fine shape, as is the rather blackened electrolytic cap.

The fuse measures the same 150-ish mΩ as the fuses in the other two axes, but I doubt it’s actually a fuse any more.

Astonishingly, the Arduino clone on the board worked fine, so I could extract the GRBL configuration.

Memo to Self: Never plug things in with your head upside down!