The Smell of Molten Projects in the Morning

Ed Nisley's Blog: Shop notes, electronics, firmware, machinery, 3D printing, laser cuttery, and curiosities. Contents: 100% human thinking, 0% AI slop.

Category: Machine Shop

Mechanical widgetry

  • Tour Easy: SRAM Grip Bushing

    After installing the X.0 shifter, I sprang for new grips:

    Tour Easy - SRAM X.0 grip shifter - new grip with bushing
    Tour Easy – SRAM X.0 grip shifter – new grip with bushing

    They’re 90 mm long, which turned out to be 4 mm shorter than the grips that came with the bike; a close look showed the original ones were cut down from SRAM’s 110 mm grips.

    Well, I can fix that:

    Tour Easy - SRAM grip bushings
    Tour Easy – SRAM grip bushings

    Ordinarily, you’d just move the brake levers by 4 mm and declare victory. In this case, moving the right lever would be easy, but the left one is firmly glued in place by the radio’s PTT button:

    PTT Button - rounded cap
    PTT Button – rounded cap

    Believe me, solid modeling is easy compared to redoing that!

    The OpenSCAD source code doesn’t amount to much:

    // SRAM grip shifter bushings
    // Ed Nisley KE4ZNU March 2019
    
    Protrusion = 0.1;           // make holes end cleanly
    
    //----------------------
    // Dimensions
    
    ID = 0;
    OD = 1;
    LENGTH = 2;
    
    Bushing = [22.2 + 0.5,31.0,4.0];        // ID = E-Z slip fit
    
    NumSides = 2*3*4;
    
    //----------------------
    // Build it!
    
    difference() {
      cylinder(d=Bushing[OD],h=Bushing[LENGTH],$fn=NumSides);
      translate([0,0,-Protrusion])
        cylinder(d=Bushing[ID],h=Bushing[LENGTH] + 2*Protrusion,$fn=NumSides);
    }

    I loves me my 3D printer …

  • Heatsink Fuzz

    This appeared while harvesting heatsinks and suchlike from a defunct Dell Optiplex:

    Clogged CPU heatsink
    Clogged CPU heatsink

    The only way to get access to that end of the heatsink is to break the heatsink’s thermal bond to the CPU, which seems like a Bad Idea if you intend to continue using the thing:

    Clogged CPU heatsink - fan
    Clogged CPU heatsink – fan

    I buy off-lease Optiplexes from Dell Financial Services (a.k.a. Dell Refurbished) and, although their interiors always look well-cleaned, Dell (or, nowadays, FedEx Reverse Logistics) may have decided against breaking the CPU’s thermal bond and just sent me an office’s dust collection.

    Doesn’t look like my dust. That’s my story and I’m sticking with it.

  • 3D Printing: Slow Hot End Temperature Oscillations

    From a discussion on the Makergear 3D printer forums

    A Makergear M2 user encountered a temperature control problem:

    Problem: Temperature fluctuation on the hotend +/- 7 degrees C when set in the controls. A little more extreme when printing (~+/- 15).

    Slow cycling like that indicates the hot end’s PID loop coefficients don’t match reality.

    Preheat the extruder to maybe 200 °C, run a PID calibration (M303), store the results in EEPROM (M500), and that should do the trick.

    PID coefficients depend on the hot end’s physical condition, so you should re-do the calibration whenever anything changes on the hot end. Even removing & reinstalling the same hardware will change the contact points between, say, the thermistor and its hole in the hot end.

    A dab of good heatsink compound on the thermistor should stabilize its contact with the hot end, although that will change the reported temperature and PID coefficients. Probably doesn’t make any real difference, but I felt better:

    M2 - Thermistor with heatsink compound
    M2 – Thermistor with heatsink compound

    Which prompted a question from a user who regularly swaps entire hot ends to change nozzle diameters:

    run a pid cal when I set my starting height each time I switch?

    Assuming you swap entire hot ends, including their thermistor & heater, then you can calibrate each one, write down its PID values, manually set ’em with M301 when you install it, then use M500 to store ’em in EEPROM.

    Because you bend those fragile thermistor wires every time you swap hot ends, keep a couple thermistors on hand. You’ll need ’em.

  • 3D Printing: Peculiar Octopi Problem

    From a discussion on the Makergear 3D printer forums

    A Makergear M2 user had a strange problem:

    Octopi claims the serial connection went down.

    LED2 was blinking red, rapidly, and LED3 was shining with a steadfast red light.

    LED2 shows the extruder heater PID loop is running and LED3 shows the extruder fan is on:
    https://reprap.org/wiki/Rambo_v1.1

    You just never noticed the blinkiness before … [grin]

    Because the extruder heater is still running, the firmware hasn’t detected a (possibly bogus) thermal runaway or any other fatal problem. It’s just waiting for the next line of G-Code, but Octopi isn’t sending it.

    Casually searching the GitHub issues, there’s a report of intermittent serial problems from last year:
    https://github.com/foosel/OctoPrint/issues/2647

    Which points to the FAQ:
    https://community.octoprint.org/t/octop … eption/228

    Look at the Octopi Terminal log to see if the conversation just before the failure matches those descriptions.

    Assuming you haven’t updated the printer firmware or anything on the Octopi, then something physical has gone wrong.

    First and least obviously, the Pi’s MicroSD card has probably started to fail: they’re not particularly durable when used as a mass storage device and “the last couple of years” is more than you should expect. Download a fresh Octopi image, put it on a shiny-new, good-quality card (*), and see if the situation improves.

    Then I’d suspect the Pi’s power supply, even though you’re using the “official rpi power supply”. All of those things contain the cheapest possible electrolytic capacitors, running right on the edge of madness, and produce bizarre errors when they begin to go bad. Get a good-quality wall wart (**), ideally with a UL rating, and see if the situation improves.

    While you’re buying stuff, get a good-quality USB cable (***) to replace the one that (assuming you’re like me) you’ve been saving for the last decade Just In Case™. Use the shortest cable possible, because longer does not equal better.

    After that, the problems get truly weird. Apply some tweakage and report back.

    (*) This is harder to do than you might think. You may safely assume all cards available on eBay and all “Sold by X, Fulfilled by Amazon” cards will be counterfeit crap. I’ve been using Samsung EVO / EVO+ cards (direct from Samsung) with reasonable success:

    https://softsolder.com/2018/10/16/raspb … sk-memory/
    https://softsolder.com/2017/11/22/samsu … ification/
    https://www.samsung.com/us/computing/me … 22y+zq29p/

    The card in question eventually failed, so having a backup card ready to go was a Good Idea™.

    (**) Top-dollar may not bring top quality, but Canakit has a good rep and costs ten bucks through Prime.

    (***) Amazon Basics cables seems well-regarded and work well for what I’ve needed.

  • Kenmore 158: Goobered Screws

    One of Mary’s quilting group arrived with a machine in dire need of cleaning and oiling. These screws hold the throat plate in place:

    Kenmore screws - goobered
    Kenmore screws – goobered

    They’re standing in a pair of threaded brass inserts (found in the benchtop litter) to show off their tops.

    The left screw came out easily, although a few licks with a fine file eased the slot corners.

    The one on the right, however, was firmly jammed in place, with the crappy little Kenmore sewing machine screwdriver causing the goobering. I deployed my Brownell’s Gunsmith Screwdriver Bits, applied slightly less force than would ordinarily call for an overnight penetrating oil session, got the screw out, and cleaned it up:

    Kenmore screws - smoothed
    Kenmore screws – smoothed

    A dot of oil on the threads should keep it happy for the foreseeable future.

  • Juki TL-2010Q Needle LEDs: Installed!

    The combined illumination from the COB LED bar on the rear of the arm and the (renewed) COB LEDs over the needle does a pretty good job of lighting up the work area:

    Juki TL-2010Q Needle LEDs - cloth illumination
    Juki TL-2010Q Needle LEDs – cloth illumination

    That’s a staged shot with a quilt square from the top of the pile. You’d (well, Mary’d) sew along the lines, not across a finished square.

    The remaining deep shadows under the foot require an LED with an imaging lens on a gooseneck; precise piecing requires feeding fabric into the needle with alignment exactly where those shadows fall.

    The light levels look harsh and shadowy on the bare base:

    Juki TL-2010Q Needle LEDs - front
    Juki TL-2010Q Needle LEDs – front

    The shadow extending leftward from the needle comes from the arm’s shadow of the rear LED bar. The hotspot specular reflections of both LED arrays aren’t quite as glaring in real life, but a matte surface finish would be better.

    The needle LEDs sit on the bottom of the heatsink inside the endcap:

    Juki TL-2010Q Needle LEDs - installed
    Juki TL-2010Q Needle LEDs – installed

    The COB LED PCB has a weird pink tint, perhaps due to the silicone filter passing all the yellow and blue light downward, with red light reflected into the PCB.

    After one iteration, I settled on a 20 Ω 1 W ballast resistor:

    Juki TL-2010Q Needle LEDs - ballast resistor
    Juki TL-2010Q Needle LEDs – ballast resistor

    It drops 3.6 V to provide 180 mA of needle LED current and dissipates 640 mW, with the LEDs burning about 1.5 W to raise the heatsink just above room temperature. The extrusion on the rear arm is pleasantly warm and the resistors seem happy enough.

    Looks good to us and it’s much much much better than the feeble Juki needle LED.

  • Juki TL-2010Q Needle LEDs: Simple Cable Clip

    A straightforward cable clip:

    TL-2010Q Needled COB LED - cable clip
    TL-2010Q Needled COB LED – cable clip

    It looks better than the previous hack bent from a snippet of PET clamshell:

    Juki TL-2010Q Needle LEDs - cable clip
    Juki TL-2010Q Needle LEDs – cable clip

    Ream out the holes with suitable drills, clean out the slot using Tiny Bandsaw™, and it’s all good.

    In retrospect, the slot isn’t worth the effort, because it doesn’t open wide enough to admit the cable and doesn’t provide any clamping force; a simple block with two holes would do as well. If the heatsink didn’t already have a 3 mm screw in play, I’d use an adhesive-backed clip from the early Kenmore LEDs.

    The OpenSCAD source code isn’t much to look at:

    //-----
    // Cable clip
    // Reoriented into build position, because we only need one
    
    ClipWall = 3*ThreadWidth;
    Clip = [15.0,10.0,CableOD + 2*ClipWall];
    
    module CableClip(CableOD = 2.0) {
    
    ClipSides = 4*3;
    ClipRadius = Clip.y/2;
    ScrewOD = 3.0;
    ClipOC = Clip.x - ClipRadius - CableOD/2 - ClipWall;
    
      translate([0,0,Clip.y/2])
        rotate([90,0,90])
          translate([0,0,0*Clip.z/2])
            difference() {
              union() {
                rotate(180/ClipSides)
                  cylinder(d=Clip.y/cos(180/ClipSides),h=Clip.z,$fn=ClipSides,center=true);
                translate([ClipRadius,0,0])
                  cube([Clip.x - ClipRadius,Clip.y,Clip.z],center=true);
              }
              translate([0,0,-(Clip.z/2 + Protrusion)])
                rotate(180/8)
                  PolyCyl(ScrewOD,Clip.z + 2*Protrusion,8);
              rotate([90,0,0])
                translate([ClipOC,0,-Clip.y])
                  rotate(180/8)
                  PolyCyl(CableOD,2*Clip.y,8);
              translate([ClipOC - Clip.x/2,0,0])
                cube([Clip.x,2*Clip.y,2*ThreadWidth],center=true);
            }
    }