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: Electronics Workbench

Electrical & Electronic gadgets

  • HP 7475A Plotter: Rehabilitation

    [Update: Wecome Hackaday! You may want to look at:

    Searching for 7475a will bring up many, many other posts]

    After mentioning that I wished I still had my HP 7475A plotter, Dithermaster sent me one from his heap. As he explained, a mouse family had used it as a combination hotel-granary-latrine:

    HP 7475A - chassis latrine
    HP 7475A – chassis latrine

    For whatever it’s worth, if you must get a bazillion seeds out of a plotter, ship it halfway across the continent: UPS performs a lengthy three-axis vibration test that shakes all the loose bits through the vents.

    You’ll probably want the original HP 7475A documentation from the (unofficial) HP Computer Museum before digging in. Not mentioned anywhere: the two washers at the rear edge of the case are not identical. The one holding the power supply in place is slightly longer than the one at the serial connector. Mine are now color-coded to their locations.

    A critter whizzed on U13, the serial adapter chip, just beyond the big black filter capacitor:

    HP 7475A - PCB latrine area
    HP 7475A – PCB latrine area

    I rinsed everything (except, no fool I, the membrane keypad at the front of the PCB) with warm water, flushed the latrine areas with dilute baking soda (alkaline, to neutralize the urea), rinsed with hot water, blew-dry with compressed air, then let the pieces sit for a few days.

    After reassembly, the plotter didn’t start up. It’s a third of a century old, what did you expect?

    Measuring the electrolytic capacitors showed they were all in surprisingly good condition, with only C27 and C34 (on this Option 001 = RS-232 board) having moderately high ESR. They’re the pale blue axial caps just right of the heatsink, both 22 μF 25 V:

    • C27: Processor Reset timing (U14 – p. 6-27/6-28)
    • C34: +5 V filter cap (U21 – power supply p. 6-31)

    The corresponding caps on the Option 002 = HP-IB board are C20 and C25. FWIW, if you have an HP-IB plotter, you should probably just hack an Arduino into the motor control connections and run it with Grbl; you’d get a bare-bones plotter eating G-Code, not HP-GL, but that’s not entirely a Bad Thing. Adapting the tool change code to handle the pen carousel is left as an exercise for the desperate.

    I replaced the offending caps with 33 μF 50 V radial caps from the heap:

    HP 7475A - re-capped PCB
    HP 7475A – re-capped PCB

    And then it performed its Demonstration Plot (load paper, hold down P1 + P2 buttons, turn on power) perfectly. The fossilized pens left no trace behind; we all expected that.

    The serial port connection on the back required, from bottom to top:

    All of which came from the Big Box o’ Serial Adapters and produced this rather unsteady ziggurat:

    HP 7475A - serial port adapters - typical
    HP 7475A – serial port adapters – typical

    Seeing as how I’ve been adapting serial connections since before the HP 74754A was a thing, the Adapter Box has All! The! Adapter! Genders! plus Der Blinkenlights! They don’t come in nearly as handy nowadays, though, which is a Good Thing.

    Some optimization pared down the ziggurat and added a short extension cable:

    HP 7475A - serial port adapters - hardcore
    HP 7475A – serial port adapters – hardcore

    Eventually, I’ll build a custom cable, but it’s good enough for now.

    The switches select 9600 b/s serial data in 8N1 format. Yes, the plotter tops out at 9600 b/s, but remember we’re dealing with a pen plotter that executes terse ASCII commands. It offers both XON/XOFF and DTR/DSR hardware handshaking to prevent overruning the internal 1 kB buffer, plus a myriad other software-selectable options relevant to long-forgotten datacomm systems.

    Lest I forget, dots now mark the switch settings for 9600 8N1, A (letter) paper, US (inch) units, direct serial connection:

    HP 7475A - DIP switch settings
    HP 7475A – DIP switch settings

    And then it Just Worked: type IN;SP1; into minicom and the plotter grabs Pen 1. The rest is a simple matter of software.

    Now, to deal with the pen situation…

  • It Wasn’t Quite Touching, So Ship It

    Picked up a Prime Switched Outlet to help tame the U2711 monitor’s DisplayPort incompatibility and, being that type of guy, had to open it up to see what’s inside.

    Good thing I did:

    Prime Switched Outlet - stray wire strand
    Prime Switched Outlet – stray wire strand

    Admittedly, white is neutral, so that stray wire would should just pop the GFI, but, still …

    You can wind up with events like this:

    Burnt outlet expander
    Burnt outlet expander
  • LED Bulb in High-Vibration Environment

    The garage door opener just ate another rough-duty bulb, so let’s see how a $7 LED bulb fares:

    Walmart 60 W LED Bulb - garage door opener
    Walmart 60 W LED Bulb – garage door opener

    It has no external heatsink fins and the color temperature looks just like the old-school incandescent bulb it’s replacing, so they’re getting a clue about what’s acceptable to ordinary folks.

    That’s equivalent to a 60 W incandescent bulb, too, at least according to the package:

    Walmart 60 W LED Bulb - package data
    Walmart 60 W LED Bulb – package data

    I love the “Return the package and reciept for replacement or money back” part…

  • MakerGear M2: 24 V Power vs. LED Lighting

    I installed the 24 V white LED panels under the M2’s X-axis gantry, connected it to a 24 V wall wart, and all was good:

    LED Panel - on M2 Gantry
    LED Panel – on M2 Gantry

     

    The red plastic block shows that picture happened before the V4 hot end installation

    Now, with the V4 hot end and fans installed, I popped a 24 V supply brick off the heap and connected another set of Powerpoles:

    M2 - Powerpole connector block
    M2 – Powerpole connector block

    The 24 V supply now powers everything on the RAMBo board, with the platform heater running from the 40 V supply through the DC-DC solid state relay.

    Unfortunately, wiring the LED panels to the RAMBo MOSFET driving the fans didn’t quite work. Turns out that the extruder PWM pulses produce corresponding LED blinks; the V4 hot end draws 1.5 A and that’s enough to flicker the lights. So they’re back on the wall wart and glow steadily again.

    For whatever it’s worth, the panels don’t have limiting resistors, just eight 150 mA LED emitters in series…

  • MakerGear M2: Marlin 1.0.2 Firmware Tweaks

    Given that I’m throwing all the balls in the air at once:

    • V4 hot end / filament drive
    • 24 VDC motor / logic power supply
    • PETG filament

    It seemed reasonable to start with the current Marlin firmware, rather than the MakerGear version from long ago. After all, when you file a bug report, the first question is whether it happens with the Latest Version.

    Marlin has undergone a Great Refactoring that moved many of the constants around. I suppose I should set up a whole new Github repository, but there aren’t that many changes and I’ve gotten over my enthusiasm for forking projects.

    Anyhow, just clone the Marlin repo and dig in.

    In Marlin_main.cpp, turn on the Fan 1 output on Arduino pin 6 that drives the fans on the extruder and electronics box:

    pinMode(6,OUTPUT);	// kickstart Makergear M2 extruder fan
    digitalWrite(6,HIGH);
    

    You could use the built-in extruder fan feature that turns on when the extruder temperature exceeds a specific limit. I may try that after everything else works; as it stands, this shows when the firmware gets up & running after a reset.

    In Configuration_adv.h, lengthen the motor-off time and set the motor currents:

    #define DEFAULT_STEPPER_DEACTIVE_TIME 600
    #define DIGIPOT_MOTOR_CURRENT {185,215,185,185,135}
    

    The Configuration.h file still has most of the tweaks:

    #define STRING_CONFIG_H_AUTHOR "(Ed Nisley - KE4ZNU - Hotrod M2)"
    #define STRING_SPLASH_LINE2 STRING_VERSION_CONFIG_H
    
    #define BAUDRATE 115200
    
    #define MOTHERBOARD BOARD_RAMBO
    
    #define TEMP_SENSOR_0 1
    #define TEMP_SENSOR_BED 1
    
    #define HEATER_0_MAXTEMP 290
    #define HEATER_1_MAXTEMP 290
    #define HEATER_2_MAXTEMP 290
    #define HEATER_3_MAXTEMP 290
    
    #define X_MAX_POS 136
    #define X_MIN_POS -100
    #define Y_MAX_POS 125
    #define Y_MIN_POS -127
    #define Z_MAX_POS 175
    #define Z_MIN_POS 0
    
    #define HOMING_FEEDRATE {75*60, 75*60, 30*60, 0}
    
    #define DEFAULT_AXIS_STEPS_PER_UNIT   {88.88,88.88,400,424.4}
    #define DEFAULT_MAX_FEEDRATE          {450, 450, 100, 94}
    #define DEFAULT_MAX_ACCELERATION      {5000,2500,2000,10000}
    
    #define DEFAULT_ACCELERATION          10000
    #define DEFAULT_RETRACT_ACCELERATION  10000
      
    

    I missed the max & min position settings on the first pass (they’re new!), which matter because I put the origin in the middle of the platform, rather than the front-left corner. Marlin now clips coordinates outside that region, so the first thinwall calibration box only had lines in Quadrant 1…

  • Dell Inspiron E1405 vs. Ubuntu 14.04LTS vs. Broadcom Drivers

    So the ancient Dell E1405 laptop on the Electronics Bench, connected to this-and-that, woke up without network connections. As in, right after booting, the link and activity lights jammed on solid, the usual eth0 device wasn’t there, WiFi was defunct, and nothing made any difference.

    After a bit of searching, the best summary of what to do appears on the Ubuntu forums. The gist of the story, so I need not search quite so much the next time, goes like this:

    The laptop uses the Broadcom BCM4401 Ethernet and BCM4311 WiFi chips, which require the non-free Broadcom firmware found in the linux-nonfree-firmware package. There’s a proprietary alternative in bcmwl-kernel-source that apparently works well for most Broadcom chips, but not this particular set.

    Guess which driver installed itself as part of the previous update?

    The key steps:

    sudo apt-get purge bcmwl-kernel-source
    egrep 'blacklist (b43|ssb)' /etc/modprobe.d/*
    ... then manually kill any files that appear ...
    

    Apparently that problem has been tripping people for at least the last four years. That this is the 14.04 Long Term Support version evidently has little to do with anything at all.

    While I was at it, I deleted all the nVidia packages that somehow installed themselves without my noticing; the laptop has Intel 945 integrated graphics hardware.

    I vaguely recall what I intended to do before this happened…

  • Dell 2005FPW Monitor Disassembly & Recapping

    The Dell 2005FPW monitor that I’d been using in portrait mode suffered the common failure of rebooting itself, which suggested failing capacitors. Despite my reservations, I dropped eleven bucks on a repair kit containing exactly the right caps (from sunny California via eBay), hauled the carcass to a couple of Squidwrench sessions, replaced the offending caps, and it’s all good again.

    No pix of the recapping, but a few notes that may prove useful next time.

    The standard advice from the usual Internet Sages recommends prying the bezel apart along the nearly invisible outside joint. I did that, then found the user manuals and the Fine Repair Manual and discovered that you jam your fingernails under the inside of the bezel against the LCD screen, pry upward, rotate / bend the bezel around its outer edge, and it Just Pops Off. I doubt it’s that easy, but …

    You should start from the top of the bezel, because the PCB behind the buttons & LEDs along the bottom doesn’t have a whole lot of slack in its cable. This shows the PCB and disconnected cable:

    Dell 2005FPW monitor - button PCB cable
    Dell 2005FPW monitor – button PCB cable

    Just pull the small brown latch away from the cable and the cable will slide out. That would be significantly easier if the socket were on the backside of the PCB, but you must pop the PCB out of its own latches before you get access to the socket latch. Rotate the bezel carefully around the PCB and maybe it’ll survive.

    The pushbutton that releases the stand’s not-quite-a-VESA-mount bracket remains in place when you remove the rear cover, held in place by a wedge:

    Dell 2005FPW monitor - mount release button detail
    Dell 2005FPW monitor – mount release button detail

    It is, however, the only thing sticking that far out of the back surface and, if you leave it alone, it will eventually release itself from captivity, whereupon its spring will fire it across the room. You have been warned.

    Reassembly is in reverse order, although I didn’t snap the button-and-LED PCB firmly into place. Fixing that will require dismounting the bezel again, which I’m so not doing for a 1 mm gap along the bottom edge.