Finger Wrench

A friend recommended a Finger Wrench and it looks useful, indeed:

Finger Wrench

Finger Wrench

That’s a 10-32 socket head cap screw, on the large end of the screws I normally use.

The orange PETG required a bit of smoothing around the overhangs, but should work well enough. The dark tinge near the bottom comes from the black filament I used for the MPCNC’s Z Axis sensor and won’t affect its operation in the least.

Done with one perimeter thread and a 3 mm brim to glue down the bottom:

Finger Wrench - Slic3r preview

Finger Wrench – Slic3r preview

That was easy …



Leave a comment

Cycliq Fly6 Failure and Teardown

My Cycliq Fly6 continued to shut down during rides, even with a new video-rated card, suggesting:

  • The fault resides in the camera
  • The Samsung card is just fine

Following all the steps recommended by Cycliq Tech Support didn’t improve the situation. It’s just under two years old and thus outside the warranty, so they advised me to buy their new, not-quite-released-yet Fly6, now with Bluetooth / ANT+ / phone app / shiny, but still with a non-replaceable battery.

Seeing as how the Fly6 works as well as it ever did, apart from the minor issue of shutting down both dependably and intermittently, the problem is almost certainly a bad battery. Cycliq does not offer a repair service, nor a battery replacement service; being based in Australia probably contributes to not wanting to get into those businesses. You’re supposed to responsibly recycle the Whole Damn Thing when the battery goes bad. Which, inevitably, it does.

Protip: anything with a non-replaceable battery is a toy, not a tool.

The most recent ride gave some evidence supporting a bad battery. The first shutdown happened after about half an hour and it gave off three battery status beeps (four = full charge, as at the start of the ride) when I restarted it a few minutes later. It shut down again a few minutes later while we were stopped at a traffic signal and gave off one lonely charge beep when I reached back to restart it, indicating a very low battery voltage. The battery voltage (and the number of startup beeps) increased with longer delays between shutdown and restart, but after the first shutdown it’s never very enthusiastic.

Having nothing to lose, let’s see what’s inside:

Cycliq Fly6 Teardown from inside

Cycliq Fly6 Teardown from inside

Don’t do as I did: you should extract the MicroSD card before you dismantle the camera.

Remove the rubber plugs sealing the four case screws:

Fly6 - Exterior screw plugs out

Fly6 – Exterior screw plugs out

The case pops open, with a ribbon cable between the LEDs and the main circuit board:

Fly6 - Case opened

Fly6 – Case opened

Pull the ribbon cable latch away from the connector before pulling the cable out.

It’s amazing what you find inside a blinky taillight these days:

Fly6 - PCB Top side

Fly6 – PCB Top side

I’m sure there’s a fancy 32 bit RISC computer in the big chip, along with plenty of flash ROM just below it. The clutter over on the right seems to be the power supply. Yeah, it has a camera in addition to blinky LED goodness, plus USB charging, so eight bits of microcontroller aren’t nearly enough.

There’s supposed to be some nanotech waterproofing protecting everything inside. It sure looks like magic to me and, in any event, solders just like a layer of ordinary air.

Note: the case screws are slightly longer than the PCB retaining screws:

Fly6 - Case and PCB Screws

Fly6 – Case and PCB Screws

The underside of the PCB has even more teeny parts, along with, mirabile dictu, a battery connector and (most likely) battery charging stuff:

Fly6 - PCB Underside

Fly6 – PCB Underside

A plastic piece holds the “Rechargeable Li-Ion Battery Pack” in place:

Fly6 - Battery in place

Fly6 – Battery in place

A strip of gooey adhesive holding the mic and speaker wires in place also glues the battery strap to the case, but it will yield to gentle suasion from a razor knife.

Pause to count ’em up:

  • Four case screws (longer)
  • Three PCB screws
  • Two battery screws

It looked a lot like an ordinary 18650 lithium cell to me and, indeed, it is:

Fly6 - Battery - label

Fly6 – Battery – label

More razor knife work removes the outer shrinkwrap. The cell has a protection PCB under the black cardboard cover:

Fly6 - Battery Protection PCB - on 18650 cell

Fly6 – Battery Protection PCB – on 18650 cell

I don’t know what the yellow wire does:

Fly6 - Battery Protection PCB - wire side

Fly6 – Battery Protection PCB – wire side

The FS8205A on the left may be an SII S8205 protection IC preset and packaged for a single cell:

Fly6 - Battery Protection PCB - components

Fly6 – Battery Protection PCB – components

After all that, yeah, it’s a dead battery:

Fly6 OEM 18650 - EOL - 2017-12-06

Fly6 OEM 18650 – EOL – 2017-12-06

The red curve shows the in-circuit charge state after taking it apart, the green curve comes from charging the bare cell in my NiteCore D4 charger. I have no idea what the nominal current drain might be, but a 0.25 Ah capacity is way under those Tenergy cells.

A new cell-with-tabs should arrive next week, whereupon I’ll solder the protection circuit in place, wrap it up, pop it back in the case, and see how it behaves.



Epson R380 Continuous Ink Supply Tubes

After fixing the yellow ink tube, the Epson R380 printer occasionally gave off a horrible clunk as the tubes slapped around inside the frame. This routing seems much quieter and, as you can see from the marks on the tubes, leaves much less free to flop around:

Epson R380 Printer - CISS tube routing

Epson R380 Printer – CISS tube routing

I cut a small collar (to the left of the white block with the red cable tie) to guide the tubing up over the edge of the ink cartridge holder, with a ramp from the upper edge and raised edges to hold the tubes in place, from a block of black closed-cell foam. It seems perfectly happy to do its job without anything other than the tubes holding it in place atop the cartridges.

There’s also a block of foam filling a gap under the printer’s top frame member (along the far left edge of the picture) to cushion the tubes as they whack against the edge.

So far, so good.

I’ve dumped a few more tanks of waste ink down the drain. When this printer eventually gives up, I’ll get a color laser and move on.


1 Comment

Salty Spider

An unusual ingredient in the water softener salt reservoir:

Spider atop Water Softener Salt

Spider atop Water Softener Salt

They’re everywhere!

I figured it found a way in and can find its own way out, so I just closed the lid and backed carefully away …

Leave a comment

MPCNC: Z Axis Upward Homing with Opto Proximity Sensor

Homing the MPCNC’s Z axis at the bottom end of its travel made no sense, but the Z stage lacks a convenient spot to mount / trigger a switch at the top of its travel, so this sufficed for initial tests & fiddling:

MPCNC - Z min endstop

MPCNC – Z min endstop

The EMT rail carrying the switch moves downward, tripping the lever when it hits the MPCNC’s central assembly.

Somewhat to my surprise, a TRCT5000-based optical proximity sensor (harvested from the Kenmore 158 Crash Test Dummy’s corpse) and a strip of black electrical tape work perfectly:

MPCNC - Z Axis Opto Proximity Endstop

MPCNC – Z Axis Opto Proximity Endstop

The PCB wears a shiny new epoxy coat:

MPCNC - Epoxy-coated Endstop - Opto Prox Sensor

MPCNC – Epoxy-coated Endstop – Opto Prox Sensor

I soldered the wires (harvested from the previous endstop) directly to the PCB, because the pinout isn’t the same and fewer connectors should be better.

The mount uses black PETG, rather than translucent orange, in hope of IR opacity, and wraps around the EMT rail at (roughly) the 2 mm standoff producing the peak response:

IR Reflective Sensor module - TCRT5000 - response vs distance

IR Reflective Sensor module – TCRT5000 – response vs distance

In truth, I set the gap by eyeballometric guesstimation to make the entire mount arc sit equidistant from the EMT:

MPCNC - Z Opto Prox Endstop - top view

MPCNC – Z Opto Prox Endstop – top view

The mount includes the 2 mm spacing around the EMT OD and puts the sensor tip flush with the arc OD, so it should be pretty close:

TCRT5000 Z Axis Endstop Mount - solid model

TCRT5000 Z Axis Endstop Mount – solid model

A strip of 3M permanent tape, cut to clear the 608 bearings, affixes the mount to the MPCNC’s central assembly. The solid model now includes a midline reference notch, with a height rounded up to the next-highest multiple of 2.0 mm. It needs a loop to anchor the cable.

The blue twiddlepot sets the comparator threshold midway between the response over black tape (incorrectly on = too low) and bare EMT (incorrectly off = too high), in the hope of noise immunity. The range spanned nearly half of the pot rotation, so I think it’s all good.

The sensor doesn’t trip when the edge of the tape exactly meets its midline, which meant I had to trim a strip of tape to suit. As part of setting the twiddlepot, I shut off the Z axis motor and laid some test strips on the EMT:

MPCNC - Z Axis Opto Prox Endstop - Test Tape

MPCNC – Z Axis Opto Prox Endstop – Test Tape

I spun the leadscrew with one hand, held the sensor with the other, twiddled the trimpot, trimmed the upper and lower ends of the tape, and generally had a fine time. The sensor responds equally well to a half-wide strip of tape (in the upper picture), with the distinct advantage of not encroaching on the 608 bearing tracks.

The GRBL setup now homes Y and Z toward the positive end of their travel, with X still toward the negative end while a set of extension cables remains in transit around the planet.

The OpenSCAD source code as a GitHub Gist:

The original doodles, including a bunch of ideas left on the cutting room floor:

MPCNC Z Opto Proximity Sensor Endstop - doodles

MPCNC Z Opto Proximity Sensor Endstop – doodles

, ,

1 Comment

MPCNC: Re-Improved Endstop Switch Mount

As part of entombing the endstop PCBs in epoxy, I tweaked the switch mounts to (optionally) eliminate the screw holes and (definitely) rationalize the spacings:

MPCNC MB Endstop Mount - No screws

MPCNC MB Endstop Mount – No screws

The sectioned view shows the cable tie slot neatly centered between the bottom of the switch terminal pit and the EMT rail, now with plenty of meat above the cable tie latch recess. The guide ramp on the other side has a more-better position & angle, too.

A trial fit before dabbing on the epoxy:

MPCNC - Endstop Mount for epoxy coating - trial fit

MPCNC – Endstop Mount for epoxy coating – trial fit

The 3M black foam tape works wonderfully well!

After the epoxy cures, it’s all good:

MPCNC - Epoxy-coated Endstop - Installed

MPCNC – Epoxy-coated Endstop – Installed

The OpenSCAD source code as a GitHub Gist:


Leave a comment

MPCNC: Epoxy-Coated Endstop Switches

Using 3D printer style endstop switches has the advantage of putting low-pass filters (i.e. caps) at the switches, plus adding LED blinkiness, but it does leave the +5 V and Gnd conductors hanging out in the breeze. After mulling over various enclosures, it occured to me I could just entomb the things in epoxy and be done with it.

The first step was to get rid of the PCB mounting screws and use 3M permanent foam tape:

MPCNC - Epoxy-coated Endstop - Adhesive Tape

MPCNC – Epoxy-coated Endstop – Adhesive Tape

Get all the switches set up and level, mix up 2.8 g of XTC-3D (because I have way too much), and dab it on the switches until all the exposed conductors have at least a thin coat:

MPCNC - Epoxy-coated Endstop - Installed

MPCNC – Epoxy-coated Endstop – Installed

You should use a bit more care than I: the epoxy can creep around the corner of the switch and immobilize the actuator in its relaxed position. Some deft X-Acto knife work solved the problem, but only after firmly smashing the X axis against the nonfunctional switch.

Epoxy isn’t a particularly good encapsulant, because it cures hard and tends to crack components off the board during temperature extremes. These boards live in the basement, cost under a buck, and I have plenty of spares, so let’s see what happens.

At least it’s now somewhat more difficult to apply a dead short across the Arduino’s power supply, which comes directly from a Raspberry Pi’s USB port.

, ,