Monday, 21 January 2019

A rework in progress

After the last repairs, I got sufficiently annoyed by the mess of wires around the extruder. In particular, having the extruder motor wiring as well as the fan wiring bypass the break-out PCB entirely made for a tangle as well as some rather unstable connections.

Extra wiring can be seen on the far side of the ribbon cable.
 I acquired new ribbon cable, D-Sub connectors (3 of them, just in case), and went to work. I only had to discard one of the D-Subs, and this time made sure to thoroughly test the connections. I cut the cables back to make for a neater lineup at the controller, and labelled the parts with Dymo labels this time (plastic, not paper, for fire safety).

Now having all this set up, the tests gave some rather disappointing results. For one, the thermistor and heater are connected, despite the instructions declaring - in boldface - that they shouldn't be. And indeed, the thermistor insists that my room is over 100C, which I am sure I would have noticed. The X motor and endstop work, but the extruder motor is making a strange faint clicking noise, even when doing nothing. Neither fan activates. This might take a bit to clean up - I even suspect the PCB itself has issues. The hour of remaking the PCB to include the proximity sensor draws near - and finally the otherwise unused cable #5 could come to the fore.

I'm rather concerned about the heater/thermistor connection, though, as it manifests on the controller board even when the heater is disconnected.

Update: The PCB appears to perform its functions exactly as advertised WRT the heater, thermistor, and motor. Disconnecting the ribbon cables from the controller board shows there's a ~1K connection from the lower HOTEND connector to the ETEMP connector.

Tuesday, 1 January 2019


Following my disaster from last year, I tried to salvage what I could. For the extruder motor holder, I was able to set it on a thing with a hole and bash a hex wrench through it, popping out the stuck piece. The heat sink proved more problematic, though. I was hoping I could soften it in the oven and pull it out, but the spread-out part wouldn't budge. My next attempts were using increasingly hot oven temperatures to try to hammer it out from the other side. For this I needed something sturdy and heat-resistant I could set it in - after some searching, I noticed the steel pipe I recently got for sword swinging practice fit nicely, and could be set up in some of the drawer handles to stand upright. However, this mostly just squished the filament further together in one end. I eventually got some of it to melt out, but at this point I had bent the hex wrench, and while looking on the Internet for advice saw one important warning: Do not get the inside of the heat sink scratched! Well, I had just hammered a steel hex wrench into it several times, so at this point, rather than spending more time on trying to clean this, risking all manner of annoying problems in the future, I gave up and ordered a new one from e3d. Being the cheapskate I am, I had it shipped with Royal Mail, so I expect it'll arrive some time before New Year's.

I've considered the state of the ribbon cable and breakout PCB some more. Redesigning the PCB would be fun, but isn't really necessary at the moment. What I should do, however, is replace the cable with a fresh one, properly made. I will start by cutting a bit of extra length, attach the connectors, and test the connections before actually swapping anything out. I would like to have a few more wires around for extras, but the ribbon cable holders near the X end-stop don't have room for more. I'll just have to see if I could steal heat break fan power from the hotend itself and use wire 5 for probe signal.


Doing a new print this morning, the filament stripped not long after the start. Bother, said Pooh. But when I tried to do a cold pull, the filament snapped instead of coming out. That's a bad sign. Then I realized that thing I hadn't been hearing was the extruder fan not running since I had taken out Wire 5 yesterday. Turns out it is in use, just for permanent fanning. It would be better, methinks, to take that from the heater 12V, but that would require redoing the PCB.

In that case, I might as well redo it such that it more directly supports a proximity probe with voltage splitter as well, and get the cable fixed once and for all. This increases the work substantially, but would in the long run make the whole mess of cables be much nicer. And I rather like doing PCBs, the Fritzing app is quite good for that.

In the meanwhile, I'm going to clear out this probably blobbed-out piece of filament the hard way. I just hope it hasn't melted into some of the non-metal pieces, that could get hairy. It struck me that printing the extruder motor holder in a clear filament would make it a lot easier to see what goes on in there. But that's not for now, that holder is difficult to get right.

A quick search finds this already-existing breakout PCB with all manner of things.

Morning-after update: Took apart the hotend again. It's fucked. The e3d heatsink has a piece of filament stuck in it, blobbed out at the top. That can be heated and removed, I'm sure. Worse, a piece of the filament melted near the bottom of the extruder mount, and it might have fused too much to remove - I certainly haven't been able to just push out out from the far side.

Sunday, 30 December 2018

The proximity sensor cometh!

Having a night with nothing happening, I decided to finally move towards getting the proximity sensor on my printer. It's been lying around for a while (actually I burned one because the supposedly 12V power supply was actually 16V), and it's really the last thing missing on my printer. So onwards!

First thing I need is a voltage splitter so I can use the 12V signal in the 5V inputs on the Melzi board. Easy peasy, just two resistors and some jacks. That's what I have all this stuff lying around for. Solder it all up, and... find that I has placed the jacks wrong. Whoops. Remove, replace, resolder, not a problem. And then... find that the one resistor was 100Ω, not 100kΩ. Whoops. Remove, replace, resolder, not a problem. And then... notice that some of the soldering wasn't really that good and needed to be redone. Resolder, not a problem. And then I managed a simple circuit that should have taken 10 minutes but ended up taking more like 2 hours due to mistakes and misplaced things. Hopefully once my work table is in place the misplacings will be fewer. I don't expect they will ever stop.

The voltage splitter on the left, being tested. I like the little hooky test wires. 
With that prepared, I need to figure out exactly where to hook it up. The best information I have to go on is this thread on, in which nophead as usual points out a number of subtle mistakes one can make with the most straight-forward approaches, though the solutions are not as obvious to me as they are to him. The "P" connections mentioned I'm already using for the e3d fan, but there's also four KRGB outlets (wait, is that a more colorful version of the Soviet-era secret intelligence agency?) that are not used. What do they do? Well, if I had done my fitting properly, they would have gone to the motor, but because the D connector was slightly off in the ribbon cable connection, I had to re-route those around the PCB. Thus those four are not used for anything, and I have no free connectors. Bother. Back to reading the specs.

Now the FAN+ pin has 12V on it, and would not be adversely affected by a bit more draw occasionally. But that's not connected to the ribbon cable. Wire 5 of the ribbon cable is unused and marked 'Probe', so that's probably a good one for the return signal. I suppose I can leech some 12V off the heater (HOTEND+), that won't disturb any readings, and for symmetry take GND from HOTEND- (or is there a reason it's HOTEND- and not GND?). So where is that Wire 5 going right now?

Here's the Melzi as it stands. There are three wires (#6, 7, and 8) going together into the second larger block, that's HOTEND+, and 3 more (9, 10, and 11) for HOTEND-. Wires 1 and 2 are the X stop, as can be seen from the red wires. 3 and 4 are for the thermistor. 5 and 12 go into the same block, the first larger one, with the top (12) marked as "FAN" on the cable, "FAN-" on the schematic. "FAN+" of the schematic isn't supposed to be wired to anything, and that's the wire 5 I could steal for signal.

My thinking is I can bring that one over to the contacts on the far side of the board. Whereas some builds show a 10-pin connector there, one mine it's just loose pins, free for the taking. Any of pins 2, 4, 6, and 8 (right row, from the top) on the lower section would go to EXT-A{1,2,3,4} on the chip.

On the top right: Pins enough to skewer a small mouse!
Not entirely sure about the HOTEND-. The schematic confuses me a bit. There's a HOTEND_BYPASS named JS2 that connects to ground through a resistor and that controls a power resistor. So that's probably how it's turned on and off. No, upon further inspection the HOTEND shown there is the connection. Slowly learning basic electronics here: that's an active low. In other words, no good for ground.

Having investigated these things, the original forum thread makes more sense. So I can take +12V from the heater, GND from the thermistor (though double-check if there's an influence on the reading), and bring the signal through wire 5. Great! Putting the appropriate connector on the voltage splitter and attaching it to the proximity sensor, it's all ready to go on.

By starting the hotend heating and measuring the voltage drop over it, I have determined that th right-most of the H sockets on the small PCB is HOTEND+ (12V), and the right-most of the T sockets is GND. But actually plugging them in will need to wait a bit. After spending about 15 minutes looking for a small enough screwdriver to unscrew Wire 5, I now need an even smaller one for unscrewing H and T. And it's late.

A Bullet Journaling template

Bullet Journaling! It's a thing! And it's a thing that Mickey and I have both had much success with (see my first post on the subject as well as several more on that blog). Mickey has switched to a weekly layout that suits her needs better, using a template we had lying around. This template unfortunately is long enough that it doesn't fit in the journal itself. So of course I took it upon myself to print a new one, also because it's a very simple thing to design. By making a module that does a generic "arrow" that can optionally have one outwards tip and one inwards tip, it was trivial to make this design:

A first print turned out to need enlargement because small features aren't that precise. More interestingly, the top layer was nice and flat in the large areas, but was over-extruded in the little parts between holes.

Between the parallel slats the edge is fine but the in-between is over-extruded due to going back and forth very quickly
I reduced the infill (at 50% from an earlier experiment) as well as the infill/perimeter overlap, but I suspect this is one of those things that requires changes to Slic3r, to adjust for very short back-and-forth lines.

For a second print, I also lowered the Z-offset a bit to avoid elephant foot that was closing up the slats. That was, of course, the wrong thing to do - it doesn't lower the plate, but the hotend, so I got even more elephant foot. Stomp!

The third print came out better, though still has some of the openings that should match a line distance not quite do so. Also, there's a huge blob in one of the slats. Anyway, it's just mere tweakings from now. The extra extrusion in the narrow parts is still there, but I'll just live with it.

Friday, 28 December 2018

A severe case of false economy

I haven't posted much recently, partly due to other priorities (fighting, and rearranging my work area), partly because in a bout of false economy I tried to use up the very last bit of a roll of filament and ended up running out before I noticed, and now the remainder is stuck. I've tried pushing it through with other filaments, with hex keys, and with tiny screwdrivers, with no luck. I tried taking photos through the filament hole to see if I could figure out the problem. I eventually took the entire hotend assembly off, so I could see the top of the E3D. There is the white filament, nicely stuck:

It's not easy to see the problem even here

Why is it so stuck? I presume that is due to the end of it getting either squished or ground or both in such a way that it doesn't quite fit in the narrow part of the the hotend. I had to take the cooling ribs off the hotend, then I could easily pull it through. Here's what the end looked like, clearly bent:

Once pulled out, the bend is clear

Putting it all together as always took a bit - it's a quite compact construction. I found a nice trick for the fan duct mount. It's always particularly tricky, since it mounts on two screws that don't have a lot of leeway - screw them out too far and they fall off their nut traps, and those are even harder to get back in place. Instead, screw them out sufficiently, then use a magnet to hold them out while putting in the duct. Easy peasy. Getting the filament pull idler also seems to be getting more and more difficult, not least because there isn't a proper backstop for the screws, so over time they dig further and further in - into the stepper motor, hopefully it can hold up to that.

Taken apart

Anyway, the printer now works as before:

Sunday, 4 November 2018

Bed levelling, attempt #1

The one remaining annoyance on my printer is that it's not level. Over time, one Z axis goes a bit higher, which eventually makes enough of a difference that the print head will go too high and print into thin air - better than crashing into the bed, but still not good. Until now, I have started each printing session with manually measuring what the Z offset should be, occasionally adjusting one Z axis enough that the two sides are at the same height (the bed itself bulges by about 0.1mm). But I have printed a holder for a proximity sensor, and it's time to mount it!

I have an LJ12a3-4-Z/BX sensor, which will sense up to 4mm away. Trying it out with a voltage regulator (7805CT) gives me a nice constant voltage - of 2.5V. Wut? I see a number of people have problems with some probes, but also that not all probes are created equal. I also see that there is such a thing as an 8mm-sensing probe, and a probe that runs on 5V (LJ18A3-8-Z/BX 5V), but the latter might just be an underpowered 6-36V-capable sensor.

I was getting quite confused about this, until I read this article of somebody else being confused. They go into a goodly amount of detail of how they figured out the resistance setup and what they did to deal with a floating pin. This comment on another similar thread also makes sense: The output is either 0V (when something is close) or floating (otherwise).

Mine does have a nice little diagram on it, showing that Brown is +, Black is out, and Blue is Ground, with the sensor switch being between Brown and Black. It's also an NPN. The resistance between black and blue in mine was not a standard 10K, but a constantly changing amount in the mOhm range. There's no connection between the other wires. Also noteworthy is that my sensor has an orange tip, where most of the ones talked about have a blue one.

Feeding in 16V (because that's how much the 12V power supply I grabbed actually gives, unless my multimeter is borken), I see 13.6V on the sensor output when the sensor is open. If I add a 10K resistor between output and ground, it drops to 8V, with 20K it drops to 5.5V, so a 22K resistor ought to do it. Unfortunately, the sensor doesn't sense anything anymore, the LED doesn't light up, and the voltage doesn't drop. Only if I wire it wrongly does the LED light up, and then permanently.

Wait... now the voltage supply is giving nearly 18V. And the multimeter is showing a little battery sign. Maybe the battery... let's try the battery tester... shows nothing at all. Surely a battery can't be that dead, no, then the multimeter would have done nothing. Testing with some other batteries, yes, the battery tester is also dead. Why is everything broken?!? Oh, I can scavenge one from the smoke alarm in the kitchen (we recently got fancy smoke alarms in all rooms for free anyway) - nope, that one is also dead.

Total body count from today's exercise:

1 proximity sensor
2 9V batteries
1 cheap battery tester
Any progress today on getting the proximity sensor installed
1 12V power supply possibly injured
1 multimeter temporarily out

I suppose if I get an 8mm one as a replacement, I could put the copper tape I got from Ric under the glass. I'm doubtful that a 4mm sensor would do well enough there. Then I could even have a full grid level. OTOH, that would not measure the actual glass surface. I should also an NC probe though, for failsafe.

I'm not going to replace the mechanical endstop with the probe, for one thing they're at opposite ends, for another I don't really trust the probe as much.

All in all, I give today's results a big