Merry Christmas!

Merry Christmas from all of us here at the Barkyard Railroad! We’ve been busy since before Thanksgiving, or rather, I’ve been busy making Posable “fidget” snowmen as Christmas presents for our family and my teammates at work. I’ve kept it a secret until now so as not to spoil the surprise. When I saw that video, I thought what wonderful gifts they would make.

Normally I would have a picture of the house all decorated for Christmas. But we’ve scaled back this year, or should I say Ann’s scaled back? She normally handles the decorations knowing I would go overboard with them. This year she decided none of those blue icicle strings, but at least we have Christmas lights and all the other yard and mailbox decorations.

Instead I’ll share the snowmen (and women) I’ve been 3D printing, up until about a week ago anyway. They say after the 15th there’s no guarantee it will arrive before Christmas, but I put my faith in the USPS Ground Advantage plan. Not so funny, funny story there, but I’ll save it for later. Let’s just say I’m a bit disappointed with the Post Office for once.

Our Merry Little Christmas Tree With Festive Fidget Snowmen And Women
Our Merry Little Christmas Tree With Festive Fidget Snowmen And Women

Be Kind And Rewind

I’ll need to rewind a bit here. We left off with a constant, around the clock, 24/7 production pace until another nozzle clog on the old printer stopped it. After yet another nozzle replacement and some tweaks to the retraction settings, we’re back in business. But what exactly does that mean? I didn’t go into too much detail last time, shooting for a high level overview.

Hopefully I won’t bore you with all the little details here, but I think it’s safe to say an explanation of the process is in order. Worried I’d lose track of all the pieces parts printed and how much filament it took, I created a spreadsheet to track all the combinations and who they were bound for, with an included picture for each of the various combinations used. This helped me keep things straight.

It tracks how much filament it takes to print each part, what color it’s printed in, and how long it takes to print. Using a “matrix” of “checkboxes” to specify each particular combination of pieces that make up an individual snowman or woman, I’m able to label and number each produced. I’ll get into the details in a bit, but I never thought I’d print more than 60 of these!

Originally I meant to record every aspect of how these are made for more video content, but soon realized there wasn’t enough time to both record and produce. Progress is slow but steady. Having two 3D printers doubles the speed and halves the time, but it doesn’t help decide what to print next. It definitely doesn’t help assemble them whatsoever.

Parts Is Parts
Parts Is Parts

What Are You Talking About?

But enough of the general discussion. Let’s talk about what it is we’re making. Then let’s talk about the parts we need to make them. We’re making articulated snow figures, snow men and women to be exact. Large or small, they consist of a bottom, a chest or sweater, a head, a collar or scarf, eyes, nose, buttons, and a hat. They weren’t originally designed with a mouth, but Ann says they need one, so a mouth they get.

The screen shot shows all but two of the overall pieces parts and options available, with only the bonnet and woman’s hat missing. Like the top hat, both those hats have a colored band too. We’ll see those options soon enough. Each of those parts has a “checkbox” column in the spreadsheet, some of them with a corresponding “color” column as well.

Where the bottom, chest, and head meet are designed as ball joints so they can pivot smoothly over one another. They are held together by elastic cord. I suppose rubber bands could be used as suggested, but having just thrown away a box of rubber bands that were too old not too long ago, I decided to use elastic cord. But what size? Good question. Terrible answer.

A better answer is it depends on the size of the snowman. For the large ones I chose 3mm cord while the small ones get 1mm cord. The large ones also have a more complicated means of fastening the three articulated parts together. The small ones are pretty straightforward. There’s another funny story associated with those large snowmen that I’ll cover shortly.

Not Just Twice As Tall - Twice As Wide And Twice As Deep Too
Not Just Twice As Tall – Twice As Wide And Twice As Deep Too

Large Or Small?

Before getting into the details of the different sizes, I should mention that the large snowmen are really just half the size of the true design. That’s a decision I made to save time, space, and filament. The “Giant Snowmen” are truly that. Giant. Half size doesn’t really describe the situation. They’re half size in three dimensions, not just one. Twice as wide and twice as tall and twice as deep is really eight times bigger.

Wuddaya mean eight times bigger? Well, 2 x 2 x 2 = 8. That’s what I mean. That math is easier than ½ x ½ x ½ = 1⁄8, but that’s really what’s going on here. As an example, let’s compare how much filament it takes to print the bottom parts of the two. The small bottom takes roughly 8.6 meters (18.2′) of filament. The large bottom 23.8 meters (50.4′) of filament.

Wait. What? You said eight times more. That’s not even three times more! Right. It’s roughly 2.7, but that’s not the point. The simple math assumes a solid object. We’re not printing them as solid objects. They’re thin walled, hollow pieces with about 20% infill material between the inner and outer walls. Comparing the heads gives a factor of roughly 2.3, but it’s still in that ball park.

The knitted sweaters are much thicker and more detailed. At a ratio of about 5.5, the comparison is getting closer to eight. You get the idea. It’s not just half the size. To print the full sized, giant bottom, the Cura slicer estimates 143.8 meters (304.4′) of filament and ~13 hours to print. That’s more than six times the filament of the half size version! Even closer to eight.

There’s roughly 330 meters (700′) of filament on a spool, so only two giant bottoms could be printed before running out. And that 13 hour estimate is probably 2 hours shy of what it really takes to print one. Each spool weighs 1kg (2.2#), so each giant snowman would weigh 2½ to 3 pounds! You can see why I decided to half size them. I may try printing one someday, but not right now!

Spreadsheet Comparing Sizes, Options, And Print Times
Spreadsheet Comparing Sizes, Options, And Print Times

Minor Oversight, Major Setback

With all that out of the way, it’s time to talk about a minor oversight on my part related to half sizing the giant snowmen. Time for one of those funny stories I mentioned. Time to discuss the differences in fastening these snowmen together. The small snowman is a simple loop of the thinner elastic cord looped through the bottom, chest, and head, then the ends tied tightly together.

The giant snowman uses a much more complicated approach. The design has a “tension sled” with “cheesehead bolts” threaded into it to adjust the tension on the 3mm elastic cord. The bolts fit through openings in the bottom specifically countersunk to recess the heads. The cord is looped through an opening in the head, the ends passed through holes in the tension sled, then knotted.

The idea is adjustable tension. Tightening the bolts draws the tension sled closer to the bottom, stretching the cord tighter. Loosening them has the opposite effect, relieving some of the tension in the cord. I don’t really have a drawing or cutaway view of this, but may try to put something together later. Let’s just say there’s a reason why it takes more than twice as long to put one together.

Without thinking about it until it’s time to assemble one of these half giant sized versions, it’s soon apparent that bolts and threads don’t half size well at all. The bolts are too big and the threads no longer match a standard size. Oops. Minor oversight on my part. But because my go to drawing program doesn’t do curved features well at all, it’s now a question of learning curve on a new application.

Buttons, Eyes, And Noses, Large And Small, In Gold
Buttons, Eyes, And Noses, Large And Small, In Gold

Mass Production

We’ll discuss this setback in more detail later. For now let’s concentrate on what goes into making these creatures, great and small. Once I managed to get both 3D printers working reliably, I chose one to print the white parts, like the bottoms and heads, while dedicating the other to the colored parts, like sweaters, collars, scarves, and hat bands. Other parts are printed in brown, black, or gold.

Typically an entire run of a color includes two each of the small knitted sweaters, a large knitted sweater, then all the other colored parts. I created a slicer project that includes all the small colored parts and one for all the large colored parts. This includes the hat bands for a bonnet, a woman’s hat, and a top hat, along with a collar, a scarf, and a wool cap (I always called them stocking caps).

Meanwhile the other printer is cranking out enough of the white parts to match the corresponding colored ones. Between colors, brown is loaded to print a set of arms for the small ones and another set for the large ones. Black or gold is loaded between colors and a set of buttons, eyes, and noses, both large and small, are printed using a brim to contain all those smaller pieces in a single “sheet”.

A brim is usually a means of augmenting build plate adhesion. Here I’m using it to keep all those small parts together in one place instead of just floating around separately in the bottom of a container. Parts usually stick to the build plate, but there are times when they need help. A brim forms a layer of plastic around the part(s) to be printed, multiplying its grip.

The only thing stronger is a raft, basically many layers of plastic built up first before printing the part(s) directly on top of it. It’s typically used for tall, skinny parts, easily knocked over due to their small footprint on the build plate, like arms. The taller they get, the longer that lever becomes, continuing to multiply the small forces until they overcome the adhesion forces.

While black is loaded, a set of hats is also printed, typically one each of the large ones and two each of the small ones. This color cycle repeats for red, green, blue, and purple. Another change up is from straight white to glitter white. Each color cycle produces enough parts for one large snowman and two smaller ones. The extras can be mixed and matched, like a scarf leftover when a collar is used.

Mixed And Matched Extra Colored Parts. Also Tension Sled/Bolt Pairs!
Mixed And Matched Extra Colored Parts. Also Tension Sled/Bolt Pairs!

Preparations

While waiting to work out the tension sled/bolt dilemma, I assemble the small ones. The very first ones I actually painted the color on with a blue paint pen while I waited for the colored filament to arrive. I bought it to paint the wheels to match the B&O Royal Blue paint scheme on the passenger cars. The blue didn’t match, so I figured time to get some use out of it.

I already had other paint pens, like black, red, white, silver, and gold. The arms were originally printed in black, then painted brown since I couldn’t easily get to my old spool of brown at first, buried beneath the other bins of newer filament. I also have a brand new spool of orange filament, but rather than open it up just for printing noses, I opted for an orange paint pen instead.

I had to order the orange paint pen along with the colored filament. I ordered a set of oil based paint pens that includes orange. I had some ink pens already, but ordered some “Gelly Roll™” ink pens, unsure which would work best. Turns out the pens I had washed right off when I labelled the dogs dishes for Ann. Kind of sad when it’s supposed to cure and dry permanent. Oil based it is.

Trying to paint the band on that black, one piece top hat, I came to the realization that I needed a three part top hat “remix”. While it didn’t look terrible, it was obviously painted on, with color where it didn’t belong and missing where it did. The pen says fine tip, but not fine enough. While looking for a multipart top hat remix, I came across the bonnet and woman’s hat as well.

The hat remixes take some fine tuning to get the color bands and other pieces to fit together. The only thing I can’t fix in the slicing is the hole in the top of the woman’s hat. It’s designed that way to allow access inside the hat for the looping the elastic cord, but it’s unsightly and draws my eye. Knowing SketchUp’s limitations with curved features, it will have to work for now.

Every Single Option Combination Possible In One Place
Every Single Option Combination Possible In One Place

Overpopulation

The multicolor black filament arrived first, but it only took one print of each size to know it wasn’t what I thought it was going to be. Next to arrive was the aurora red and silk green, followed by aurora blue and abyssal red. Because of the long lead time on the aurora green, I ordered some Elegoo sparkle red and green, but the green is way too dark.

I thought the abyssal red was more purple than it actually is, prompting the aurora purple the next day. The aurora green and glitter white filament had long lead times and didn’t arrive until the day after the purple. I somehow managed to confuse myself when I ordered the glitter blue and ended up with another aurora blue a week later!

The only problem with all this filament is I now want to print some in every color. And so the population explosion begins. Two of the painted blue, two of the aurora red, one of the abyssal red, one of the sparkle green, one of the aurora purple. Then two of the aurora green, two of the aurora blue, two more aurora red, and those were just the small ones!

Add at least one of every one of those colors in the large format, two more in aurora red and aurora green! By now I’d figured out how to use FreeCAD to get a working version of the tension sled and bolts and began assembling the big ones too. Just one at first. Then another. Then another. It wasn’t long before Ann was telling me, “Don’t make any more of these. We have enough already.”

Ruby red is the only other color I ordered, not counting the two different browns with what I had left of the dusty old brown dwindling, arriving with the second aurora blue. I got the ruby red thinking it was silk and would match the silk green, once I realized how it really shines when printed without the fuzzy option. But it’s not silk at all, more like the aurora red, but without the sparkles.

Can One Ever Have Enough Fidget Snowmen (And Women)?
Can One Ever Have Enough Fidget Snowmen (And Women)?

Adding Details

In the pictures you may have noticed their mouths were missing. The original design doesn’t include a mouth, presumably because it would interfere with fully articulating the head to look down. But per Ann’s decree, they must have a mouth. And arms. She really doesn’t like the ones without arms. The chest or sweater can be printed with or without arms and the sweater with or without buttons.

I started out just dotting them in with a black paint pen, three or five “lumps of coal” at a time. After adding mouths to the first few large ones that way, I decided to try my hand with the 3D doodle pen. It’s a pen that “writes” with molten 3D printer filament as the “ink”. It takes practice to be able to do anything with it, let alone control it.

It’s meant for kids to doodle and draw with plastic. Not sure what age I’d let my kid handle something nearly as hot as a soldering iron, but that’s pretty close to what it is. I can remember the “Thing-Maker” from my childhood, that used a set of die cast molds of bugs and whatnot that you filled with a liquid rubber-like compound, then heated to vulcanize and cure it.

Between that and the easy bake oven, toy makers (Mattel) certainly depended on parents to carefully monitor their children to keep them from getting burned, apparently unafraid of the lawsuits that plague us today from people refusing to take responsibility for their actions. Anyone from my generation is used to the “Bet you won’t do that again!” response from our parents to an injury.

Anyway, it takes me a few minutes to remember how this 3D doodler pen works. I haven’t used it since I tried to use it as a “plastic welder” of sorts, thinking the molten plastic would somehow fuse with the surrounding parts to be joined. Maybe a better quality model would work, but “solvent welding” works much better. Sounded like a good idea at the time.

I quickly learned to place a dot and let the filament finish oozing while “swirling” the tip around the molten blob while it cooled enough so as not trail strings while moving to place the next dot. It works surprisingly well for the large snowmen. I still end up with some strings that need trimmed off with the flush cutters, but at least it looks good, like it wasn’t an afterthought.

Armed with my success, I tried it on a couple of the small ones, but it’s almost impossible to keep the dots small enough. I’ll stick with using the paint pen for them.

Trying Different Filaments Like Glitter Silver and Silk Green
Trying Different Filaments Like Glitter Silver and Silk Green

Adding New Variations

The glitter white quickly dwindling, I decided to look at some alternatives with its significantly long lead time. I found glitter silver, mint star stuff, and funfetti. They arrived just before Thanksgiving. I found the twinkle transparent as well, but it arrived several days after the second spool of glitter white I was worried about! Round two of the population explosion begins.

I printed two each, large and small, using the glitter silver, but they seem too dark. They’re waiting for future enhancements with fairy lights or LEDs or something like that. Once I realized the silk green would be shiny if I turned off the fuzzy skin in the slicer, I was amazed how much it looks like a Christmas tree ornament. That got me wondering how shiny the gold would look.

Inspired by the shiny silk green and the Burl Ives rendition of “Silver and Gold”, I decided to try printing shiny silver and gold parts. Now I have large and small versions of “silver and gold” snowmen. The Mika3D silk gold looks as shiny as the HP3DF silk green, but the Mika3D silk silver filament leaves much to be desired. I may as well have printed it using standard gray filament.

Between the lackluster silver and no arms nor mouths, Ann didn’t care much for them either, but they’re sitting on the mantle next to the clock anyway. Nick also commented that the luster may depend on print temperature as well. I did print some of the tensions sled/bolt combinations with it, and the more I printed, the shinier it looked.

I mistakenly bought another box set of the Mika3D silk silver, gold, and copper in those blasted half kilogram spools. I also bought some full size (1kg) Sunlu silk PLA+ silver and gold, as well as silk PLA+ copper. I may try mucking with it more later. For now I have plenty of shiny silk gold and silk green spare parts to mix and match with!

Silver And Gold Inspired Snowman
Silver And Gold Inspired Snowman

Shipping Concerns

I had already started thinking about how to divide them all up and how to ship them. I certainly have enough empty Amazon boxes with all the fairy lights and strings and battery holders I ordered. Ann didn’t know I planned on sending most of these to family and teammates at work, but when she told Nick, he brought up a good point about PLA’s temperature sensitivity.

PLA doesn’t tolerate temperatures much above 120°F (50°C). Well shit. Nothing like overlooking the most obvious shipping concern! Online research ran the gamut from, “I ship PLA prints all the time without any special accommodations and haven’t had problems ever” to “I recommend foam insulation and cold packs”. Well, isn’t that special?

I went middle of the road, slicing up most of the rest of the blue foam insulation that my Large Scale Online score was shipped with, more for protection than temperature concerns. I figure why not kill two birds with one stone and protect from both heavy handling and temperature concerns. Now how to divide them all up?

For my teammates, I selected nine of the large ones that just fit in the largest box I had, and 8 of the little ones each in both the smaller boxes. I figured dropping them off on the 12th would pretty much guarantee they would arrive by the middle of next week. My boss’ boss said he would be in that week, so I figure no problem.

First thing I’m told after my twenty minute wait in line is all three boxes need a return address. I was about to say they already have one, then looked down and realized I printed them out but in my haste to get out the door that morning hadn’t attached them! He asked me to step aside while I wrote them on with a sharpie, so he could “help other customers”, as he put it. All one of them…

But watching him place the big package through the window into the back and the other smaller boxes just placed to the side with the pile of all the other small parcels, I had a feeling those smaller packages weren’t going to make it there in 2-5 days. I brought up the tracking link when I got home and it says delivery’s expected the following Friday? Guess we’ll see, but 7 days is NOT 2-5!

Not So Funny, Funny Story

I only had two more of those smaller boxes but needed a third, two for my brothers and one for my dad. But the bigger problem is even with all those snowmen and women I printed, I need two more large ones and four more small ones. Nick said he may have a box that size and a couple days later I had the three boxes I needed. Now I just need the snowmen to put in them!

While it’s not a panicked printing frenzy, I don’t have much time to print them. Two big ones is at least two days of printing, even with two printers, not to mention the aurora red and aurora green are already pretty close to gone. But it all worked out in the end and I had everything I needed.

I managed to get everything boxed up and addressed and down to the post office after my doctor’s appointment the morning of the 16th. So back to that not so funny, funny story about the post office. The funny part was I mailed these boxes going to Ohio (near Cleveland) four days after the ones going to Michigan (near Detroit) but they were delivered the same day!

Dad’s got there two days later, much like I expected since he’s not even one hundred miles from us here in Florida. But those four smaller boxes sat in Indianapolis for days, the ones bound for Michigan four days longer than the ones bound for Ohio. All four arrived the 20th! It took eight days to get to Michigan and only four days to get to Ohio for the same size and number of packages!

Pretty funny, huh? Yeah. I didn’t think so either. Guess my teammates will get their Christmas presents next year when they’re back in the office. Somehow better late than never doesn’t fit this scenario. Both my father and father-in-law worked for the Post Office. My grandfather as well. When he went to serve in WW II, even my grandmother did when she took his place.

I think you can understand why I would choose the Post Office over other shippers. After this, next time I’ll think twice.

Funfetti Snowman And Woman With Mint Star Stuff Accents
Funfetti Snowman And Woman With Mint Star Stuff Accents

Taking A Breather

The printers sat idle for a day or so until I started printing more of the translucent filaments. The initial glitter silver ones seemed too dark. The funfetti ones seemed to be brighter and more colorful. I decided to print the buttons, eyes, noses, and hats out of the darker glitter silver and the scarves and hat bands out of the mint star stuff. Good choice!

I modified the slicer settings to print without the fuzzy option and set to no infill to boost the translucent aspect of the parts. Another good choice! With the idea of embedding fairy lights inside of them, the last thing I want to see is shadows from infill or scattering from a fuzzy surface.

My first attempt I wouldn’t even call a prototype. I just stuffed the lights inside with the battery pack dangling behind from between the the bottom and chest, but it looks great! My only complaint would be it looks like Easter colors, not Christmas colors. I had already ordered red, green, and white ones, but they ended up being something different from what I expected.

The other ones were long lead and I didn’t have them until after the last of the filament arrived. I tried a set of warm white ones too, but it looks too bland, like it has a bunch of white fairy lights inside. Nothing special. Since I got a late start on these, it’s going to take more experimentation and work to get them finished.

Christmas “Vacation”

Now that I’m on Christmas vacation until next year, I have the time to work on them, but Ann has other projects in mind. Scheduled even. But that’s okay. We had talked about them already. Projects like installing the new glass doors on the shower and skidding the shed to replace the rotted wood framed subfloor with HexPave and gravel.

My first day of vacation Nick and I went to see Ann sing with the Lake County Ladies Chorus up in the Eustis Memorial Library. It was her last concert, so it was now or never. The only disappointment was going out to eat afterward. Our first choice accosted us with a fowl smell as we walked in. Once we were seated, Ann didn’t want to stay, so we left.

Then our old standby, Mellow Mushroom served our pizzas cold after making us wait forever! Thankfully they took them off the bill but we were able to bring them home and heat them up. Not sure what happened, but it certainly wasn’t a pleasant experience. At least we not hungry anymore.

There are actually two shed projects. The first is a new, smaller shed for Ann to store all her lawn and garden tools in, but it needs assembled. We finished that in a day. By mid afternoon no less! That allowed Ann to move the things she needs to get to out of the old shed and move them to her new one, freeing up storage space for the overflow in the garage from the other house.

Both the shower doors and skidding the old shed took just a day each to complete as well! But after skidding the old shed and replacing the subfloor, it took us both a couple days to recover. We both overdid it. At this rate, I’ll need to go back to work to get some rest, but at least it’s done and we can move on…

Once recovered, I moved all the plywood that’s always in my way out to the shed. Next was all the bins of plumbing parts and the plumbing tool boxes to the shelf unit in the shed. I can get to the back part of the garage again! And I now have the entire space beneath the benches on the back wall free to store other things. Maybe even add more drawers for railroad cars.

Experimenting With Fairy Lights In The Funfetti Snowman
Experimenting With Fairy Lights In The Funfetti Snowman

Adding “Gadgetronics”

I took advantage of that “recovery” time to work on the gadgetronics. In anticipation for adding lights to these translucent snowmen, I had already bought an large assortment of different fairy lights, all battery powered. I even bought some Christmas light strings, complete with remote control! But like most things online, I don’t know what I’m getting until I have it in my hands.

The various 20 LED fairy light ones are absolute junk. At least the “controller” is, if you can even call it a controller. It’s a small circuit board with a small push button and a three LR44 cells in a snap lid plastic holder. There is a single chip that controls the LEDs. First push of the button starts the LEDs quickly flashing. Second push, slowly flashing. Third push, solid on. Next push, back to “off” (standby really).

The other variations on this theme I thought were 10 multicolored strings, not 10 strings in sets of two all of the same color, in five different colors. Those have a twin 2032 coin cell holder with a simple on/off slide switch. I like the simple on/off better for the snowmen. The flashing ones would work better for decorations.

I also ordered an assortment of various coin cell holders, rechargeable coin cells, and the charger. If it’s battery powered, the batteries won’t last forever and will need replaced, or recharged if it’s a coin cell. Unfortunately, none of them last more than a day before they’re too dim to be seen except at night, lasting only a few days more before finally dead.

When I replaced the three LR44 batteries in the makeshift funfetti snowman fairy lights, it worked all of a few seconds before the controller fried. Well, it’s not totally fried, but it’s useless. The LEDs light brightly while holding down on the button, but then goes into the next mode, just dimly lit. Great. Batteries dead in no time at all AND it’s single use!

Dimly Lit Barely Visible In Daylight Fairy Lights
Dimly Lit Barely Visible In Daylight Fairy Lights

Finest Quality “Chinesium” Junk

Only the finest quality “Chinesium” junk to be sure, but I didn’t expect anything different when I bought them. The warm white 2032 coin cell fairy lights only last about a day before dimming as well, but at least there aren’t any delicate electronics to fry. I replaced the two dead cells with a pair of rechargeable ones, but they only manage a few hours before they’re dead!

I should have experimented first, then ordered the battery holders. Now I have dozens of “useless” coin and button cell holders. Well, I put at least one of them to use by replacing the fried electronics LR44 one with a single 2032 coin cell holder. A rechargeable 2032 cell doesn’t last an hour, but it’s much brighter! Something’s going on here that needs further research.

The standard cells are like 3.0 – 3.3 volts, but the rechargeable lithium cells are truly 3.7 – 4.2 volt lithium cells. That would explain the extreme brightness. Now I’m suspicious that these cheap Chinesium pieces of junk don’t even have a resistor to limit the current. A quick experiment with my bench supply confirms it.

And a quick calculation based on a 5 volt USB supply yields a value of 90Ω for 20mA. I choose 100Ω since I have those on hand. A quick check using a USB tester tells me 5.23 volts, but it only registers a current of 30mA occasionally, like every third or fourth sampling. Not sure why something that’s designed to measure USB current can’t. More cheap Chinesium junk!

No worries. I’ll do it the old fashioned way, using Ohm’s Law (V = I*R). Measuring the voltage across the 100Ω resistor, I get 2.3 volts, divide by 100 gives 23mA. Close enough, but I still can’t explain how 20 of those LEDs in parallel only draws 23mA of current at 3 volts. It does explain why a 45mAh cell only lasts about two hours with a limiting resistor though.

I’m assuming the reason the standard coin and button cells don’t discharge as quickly is the internal resistance of the batteries themselves. But I’m guessing. Moving on to the small translucent snowmen…

Adding Fairy Lights To The Transparent Funfetti Snowmen
Adding Fairy Lights To The Transparent Funfetti Snowmen

Breathing Snowmen

Alright, I know snowmen don’t breath, save Frosty perhaps. I’m talking about inserting one of those “breathing” LEDs that cycle through different colors. In fact, I have two types, slow and fast. I choose the slow one to start with, pairing it with a limiting resistor and a single coin cell holder. Unfortunately I get the same behavior with standard and rechargeable cells that I did with the fairy lights.

I even try recharging the standard cells, which Nick tells me he already tried and it doesn’t work. For the most part, that’s the same results I had. Most of them say they’re charged, then immediately discharge when used. I found one that would charge to 2.8 – 2.9 volts, but after about an hour, it’s back to the 2.5 volts it was at before charging. Better than the others, but still not good.

By now the red and green fairy lights with those easily fried LR44 controllers have arrived. In fact, the very first one I turn on is already fried! Wow. Just wow. Words fail me. The next one works, but who knows for how long? First order of business is to insert a current limiting resistor inline with the battery pack to (hopefully) avoid frying yet another one.

This time I drill a hole in the bottom of a large translucent snowman and insert the fairy lights from the bottom. I settle on nine LEDs in the bottom, six LEDs in the chest, and five LEDs in the head for a grand total of twenty LEDs in the string. If you’ve never worked with these fairy lights, it’s hard to describe, but “they have a mind of their own” doesn’t do it justice.

Once they’re in there, it really doesn’t matter though. All that’s left is to hot glue the battery pack to the bottom on the backside where it’s out of sight but still convenient and accessible. It looks Christmassy and all, but I like the other colors better. And a few days later, the batteries are pretty much dead, right on schedule. I’m not replacing the batteries this time though.

Three Color Aspects Of The Breathing Snowman
Three Color Aspects Of The Breathing Snowman

Adding Reliable Power

Another nail in the coin and button cell coffin. Time to switch gears to lithium battery or USB power. Time to switch to the approach I used for the Halloween Glow-In-The-Day Ghosts. For those I used an XH (2mm pitch) JST connector that mates to the flat pack 2000mAh lithium cells I have. The nice thing is I can use the USB micro adapters I already have too.

If I thought assembling the large snowmen was difficult, I hadn’t tried to do it with 20 fairy lights and all the wires inside at the same time. But even worse is trying to record how I did it. The most frustrating part was all the issues I didn’t have until trying to record it. It’s the first video I recorded where I finally just cursed! And I cursed up a storm too!

Looking back, it’s funny now, but it certainly wasn’t at the time. I’ll have to speed up that part of the video, like a time lapse, maybe with some 2KHz bleeps and test patterns to add some comic relief. Running out of time this year to post another “rough cut” though. Just adding this blog update has taken two days. Hard to manage everything and get it done when it’s just me doing it.

All I know is I need to get this online stuff finished and out of the way so I can get back out in the Barkyard. I still have another week of vacation left, so it’s time to get out there and make it count. I don’t have any delusions of getting everything together, back up and running trains, but every step in that direction is a step in the right direction!

For now, I have six of those large translucent “Funfetti” snowman that are lithium battery powered. Four of them with the original colors and two more with the red and green Christmas colors. The four with original colors have been going for over a week now on the same cell and the same charge. I finally had to swap one out last night and charge it.

Posable Penguins

You may have noticed the penguins in the picture above. They’re posable like the snowmen. I didn’t print many of them, but enough of them Ann had to tell me we have enough of them. Like the snowmen, it takes some dialing in to get the sizes right. The white part of the chest fits into a black second part, or at least it’s supposed to. It takes a couple tries to get it spot on.

The eyes and the beak fitment to the head is another area of trouble. For whatever reason, they don’t fit, no matter how hard I try to hammer them in place. Don’t laugh, I actually did that with eyes, buttons, and noses for the snowmen. But that was to accomplish a press fit where all those fiddly parts would stay in place and didn’t need glued on individually.

Next problem, the bottom of the eyes are to be printed in white, then filament swapped to black for the top layers. I’ll be painting them since I can’t see swapping filaments for every pair of eyes. Maybe if I’m making dozens of penguins and printing a bunch of eyes all at once, but I’m not. Maybe next time, if there is a next time, but not this time.

I’m printing the eyes together with the only other white part other than the bottom, and the chest doesn’t call for a black stripe across its bottom. It also needs a brim to print, which further exacerbates the eye fitment. One saving grace is it’s a lot easier to add the black part with the paint pen when they’re attached to a large handle like that brim.

The beak is the most difficult part to dial in. It’s a triangular pyramid shape, and so fiddly I can barely hold it in my fingers without launching it somewhere across the room. Usually it’s heading to the floor at least a couple times before I can get it lined up where it fits on the head. Hammering it place doesn’t work and only sends it flying further across the room.

I end up using a pair of slip joint pliers to “press” the beak into the cavity in the head. It snaps in place kind of like parts in a “snap fit” model kit. Doesn’t matter if I press the eyes or hammer them, they always end up getting marred and need touched up with that black paint pen anyway. The noses on the snowmen are the same way, always needing an orange touch up.

With the nose size dialed in, I can add it to the feet in the slicer and print them in gold. The feet get hot glued on the bottom and the beak is a press fit. At least for now it is. We’ll see how long it is before one falls off. So far, so good. I was worried at first where to find a slightly off yellow filament to print them with until it dawned on me to try the gold. Works like a charm.

Other than printing a few last minute parts to finish up the translucent snowmen, the printers have been silent for days now. My OCD is constantly telling me I need to be printing something else, but I resist the urge best I can.

Posable Penguins Using Spare Snowman Hats
Posable Penguins Using Spare Snowman Hats

Taking The Leap

So back to the oversight discussion. This dilemma presented early in the process, well before Thanksgiving. SketchUp Make is my go to drawing program, making sketching up a prototype design quick and easy, like drafting it on the computer instead of paper. It doesn’t have all the bells and whistles of a full blown CAD program, but I’m already familiar with it, so ease of use is an advantage.

I’ve been meaning to learn to use FreeCAD, promising myself the next project I’ll use it instead of SketchUp. But every time I’ve put it off. The user interface is different, unfamiliar, and has a different premise than SketchUp. SketchUp seems more suited to architectural designs and renderings than CAD. FreeCAD is basically just that, a free CAD program. And it’s open source!

Nick uses Fusion360, the scaled down (free) version, so he’s not familiar with FreeCAD either. But he is familiar with CAD concepts. Beyond the nomenclature differences, pad vs. extrude for example, there are some quirks in the UI that I have to find a work around for… Like the fact it expects me to use a three button mouse and not the two button trackball I’m using.

That’s the first in a series of “How to do X in FreeCAD?” searches. Turns out there is a setting for a trackball input device to tell it to use the SHIFT and ALT keys to select “pan” and “orbit” movements. In SketchUp, it’s an actual mode of the UI. Press “H” to enter pan mode, “O” for orbit mode. Click and hold the mouse button to slide or spin the drawing from its current position.

In FreeCAD, it’s a temporary override of the normal mouse movement. Holding SHIFT acts like holding the mouse key in SketchUp and pans the drawing while holding ALT when moving the mouse will spin (orbit) the drawing. TIL…

The Real Deal

Child’s play so far, at least compared to drawing up my own tension sled and bolt designs. Like I said, major setback. Not to worry though, a little searching goes a long way with FreeCAD. Everyone’s asked the same questions I have already, and more than once. It’s the learning curve of a new application. But beyond that, it’s learning a new UI paradigm. This is uncharted territory.

Drafting up a part “sketch” is only one aspect of this. Expand that to operating in three dimensions, with multiple sketches, operating on multiple sections of an overall construction. And not just in one orientation, but based on many views and sections if necessary. Additive and subtractive operations between multiple three dimensional constructs, like cylinders, cubes, and spheres.

This is going to take some getting used to. The sketch mode UI is similar to SketchUp, with a “palette” of drawing primitives, like circle, rectangle, etc. But FreeCAD also introduces the concept of “constraints”. I only mention this because trying to “copy” the original tension sled design from just the STL, I immediately ran into an “over constrained” situation and had to go figure out what that meant.

The simplest way to describe a constraint is to say it’s making one part of a sketch dependent on other parts, like adjusting the length of the sides of the tension sled based on the radius parameter of the rounded rectangle for example. Alright, maybe that’s not the simplest example, but it’s a start.

My First FreeCAD Design - Tension Sled Remix
My First FreeCAD Design – Tension Sled Remix

Baby Steps

Back to basics. Taking it slowly helps smooth out the bumps in the road to learning FreeCAD. I had to start over on the tension sled sketch three times before I finally understood how to do it correctly from the start and get the results I wanted. The hole tool in FreeCAD makes it easy enough to add threads to a hole based on industry standard thread sizes.

I chose metric over imperial since everything is metric by default. I’m beginning to understand why Nick prefers metric in CAD, saying it’s so much easier to think about it that way. And it is. Saying 1.6mm is easier than saying 1⁄16″ or having to know that’s 0.0625″. But that’s enough of that. Mastering the hole tool takes me more iterations than I’d like to admit.

I have to revisit the exact process every time I come back to it, but tension sled complete. Now for those pesky cheesehead bolts. I’m not sure what size those giant bolts were to begin with, but I chose 8mm for the half giant size version I’m “remixing”. There is also a fastener extension for FreeCAD that makes modeling screws and bolts a breeze. Importing a model from McMaster-Carr is also an option.

Fine Tuning

Only a few obstacles remain. The first is how to get the thread clearance I need. Even using the “loose” fit option, the bolts barely starts in the threads. I can counter that by resizing the bolts slightly smaller in the X and Y direction in the Cura slicer. The bigger issue is how to modify the built in cheesehead model to slim down the head, protruding 1mm proud of the countersunk holes in the bottom.

It’s easier to perform a subtractive operation on the bolt itself than to try to import and modify the bottom design to adjust the countersink depth. Imagine creating a cylinder the diameter of the bolt head and 1mm tall, then subtracting that much from the head. But we’re not done there. Now imagine a rectangle the length and width of the slot for the screwdriver, but 1mm deeper and subtracting that too.

It takes a few iterations to get everything fitting together and working, but over the course of several days I’m much more comfortable using FreeCAD. That’s not to say I can jump right in there now and prototype anything as fast as I can in SketchUp, but I’m getting there. There are examples where it’s much quicker and easier to do things in FreeCAD as well, but we can talk about those later.

My Remix Of A FreeCAD Cheesehead Bolt
My Remix Of A FreeCAD Cheesehead Bolt

Back To the Grind

You may have noticed the different lengths of bolts in the FreeCAD design. The short one is entirely to cut down the print time to allow fine tuning the threads. The longer 60mm bolt has greater reach to aid in assembly. First the 3mm elastic cord is looped through the head and holes in the tension sled, then knotted to keep them in place.

Then the tension sled and attached elastic cords from the head are passed through the collar or scarf and chest pieces. The task of positioning the sled to thread in the bolts through the bottom begins. By threading one of the 60mm bolts into the back side of the tension sled, it can be used to position it while the another one is threaded into the sled through the bottom.

By continuing to tighten the one through the bottom, it draws the tension sled close enough to thread the nominal 50mm bolt in place in the other hole, while backing the 60mm bolt out the backside until it can be removed. The 50mm bolt is then tightened enough to relieve tension on the 60mm through the bottom, remove it, and replace it with another 50mm bolt.

The final tension is then adjusted by tightening or loosening those 50mm bolts. Sounds simple enough, but it’s definitely one of those “need three hands” operations while it’s going together. I found out the hard way not to turn the 60mm bolt through the bottom until the 50mm bolt is threaded in the other hole to keep the tension sled from turning and twisting the cord into knots.

 

Comparing FreeCAD and SketchUp

As discussed earlier, using FreeCAD compared to SketchUp is about using different mindsets. For me it’s also about familiarity and the ability to do simple things quickly and easily without a learning curve. But SketchUp has limitations, and many of them. Hence the “simple things” qualifier. Some limitations are solved by adding third party extensions, but often they aren’t free.

Here’s a simple example. For chamfer or filet operations, it’s all manual work in SketchUp. It’s hands down quicker in FreeCAD because it’s built in! Select the edges and click chamfer. Done. To be fair, there is a chamfer extension available for SketchUp. But that’s extra steps, having to download and install it, just to get to that point.

The best feature of FreeCAD over SketchUp, or any CAD program for that matter, is the ability to go back in time and change parameters and have it ripple forward. In SketchUp, if it’s wrong to start with, it’s wrong forever. The only thing adjustable in SketchUp after the fact is the ability to edit a component. This is another aspect of those constraints discussed earlier.

In a CAD program, changing the radius of a circle in a sketch will also vary a hole or cylindrical feature of a part based on that sketch. If the angle is wrong, simply change that parameter and everything else adjusts to the new value, at least if it’s constrained by that parameter it gets adjusted. That can’t be added to SketchUp just by adding an extension however.

The double whammy against SketchUp extensions, is they’re written in Ruby. Yet another computer language I’m not familiar with. Why Ruby? Apparently the thousands of other existing programming languages weren’t good enough, so yet another had to be written to address the shortcomings of all them. Just a thought…

Even if I wanted to write my own extensions, there’s the looming learning curve of Ruby. If I’m facing a learning curve, I’d much rather learn how to use FreeCAD than how to program in Ruby. I can’t think of any place Ruby’s used, other than a SketchUp extension. And let’s be honest, I’ll never have the time to learn how to program in Ruby, let alone write a SketchUp extension.

Not Sponsored Disclaimer

I should mention, none of the links provided are affiliate links, nor do any of them sponsor me or the Barkyard Railroad in any way. They are the materials I used and are provided as a convenience for the reader.

If you have any questions or concerns, please feel free to comment on this post. You’ll need to create a user account to do so, but we don’t use any personal information for marketing or to spam you (see our privacy policy). You’ll receive a verification email. Reply with the link provided to verify your email address. After that, it’s all automatic. No waiting on moderator approval! No spamming your inbox with useless advertisements and “Special Offers”. None of that nonsense.

More to come. Stay tuned!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Happy Thanksgiving!

From all of us here at the Barkyard Railroad, a Happy Thanksgiving to all of you! We spent the morning in traditional fashion, watching the Macy’s Thanksgiving Day Parade. But when the National Dog Show comes on, it’s time to get busy doing something else. For Ann and Nick, it’s tending to the feast, preparing the turkey and all the trimmings. For me, it’s back to making snowmen.

Snowmen? In Florida? How is that possible? Well, I have two answers, but only one of them is correct. Every year Mount Dora sponsors “Snow In The Park”, where snow machines make snow for the kids to play in and ice for the sled runs down the hill. The kids have a blast! And maybe there’s enough snow to build a small snowman. But that’s closer to Christmas and you’ve probably already guessed that’s not the right answer.

The snowmen I’m making are the 3D printed kind! Posable “fidget” snowmen to be exact. I stumbled across them while searching the Internet for Christmas STL files. I wanted to print something special for Ann as a surprise. That surprise turned into “Don’t make any more of these.” But I’m getting ahead of myself again.

One Of Many Humorous Poses Possible
One Of Many Humorous Poses Possible

A New Project Major Production

I actually started this “project” a few weeks before Thanksgiving. It’s a good thing, too, because it soon turned into a major production! First was the search for the “correct” red and green colors. Not sure what they’re called, but I was looking for a particular red, almost a maroon color. And the green, almost a bluish green, but as deeply saturated as an emerald green. They were very popular colors for ribbons and gift wrap many years back.

I found a set of silk multicolor filaments that were color/black, with changing concentrations that I thought would work. I started with the purple/black, but quickly discovered that style filament is best suited for items with many varied and intricate details, not a smooth snowball shape. Oh well, now I have four spools of interesting filament to use with other projects.

I found some other interesting filament colors, including silk green and glitter white, but the aurora red is the closest to that red I’m looking for. The aurora green is still a bit more green than I’m looking for, but close enough. On a whim I grabbed some aurora blue and aurora purple as well. The aurora purple came after the abyssal red, which looked more purple than it really is.

Ruby red, more glitter white, and other glitter filaments like “funfetti” and “mint star stuff” too. Overall, I bought more than 20Kg of filament, some because of long lead times on the ones I really wanted. I used up at least 6Kg of that 20Kg, more if you count what I already had on hand. Two spools of glitter white. Nearly all of the aurora red and aurora green are spent. An entire spool of “funfetti”, and nearly all the glitter silver.

Add two spools of just plain white, and the remaining black I used up and had to open a new one of, all of which I already had on hand. That reminds me, I need to check to see if that was my last spool of black and order more. I even bought two different colors of brown, a darker coffee brown, and just plain brown which will hopefully match the chocolate brown color of the dwindling spool I already have.

Aurora Red, Green, And Purple Large Snowmen And Women
Aurora Red, Green, And Purple Large Snowmen And Women

3D Printer Woes

Not even a week into it, the old Tevo Tarantula Pro printer broke down on me again! I was already having a helluva time printing that old Mika3D gold filament. For whatever reason it already seemed to be under extruding, but this time it clogged the nozzle. I can’t really blame the printer when it was probably a combination of that dusty old brown filament together with the underperforming gold.

I thought I learned my lesson last time by running that dusty old brown filament through a chunk of sponge to clean it, but it may have been entirely from the excessive number of retracts printing the gold knitted sweater. Whatever it was, I could tell the nozzle was about to clog when it could barely print the remaining collar portion of the snowman’s sweater.

I tried to just extrude some of that gold filament when that print was finished, but no dice. That nozzle is totally clogged. When I pulled the filament out, almost “cold pull” fashion, a large part of the end was dark and charred. Thankfully I have a large number of replacement nozzles, purchased after my last encounter that used up one of the last ones I had.

While dealing with that, I disturbed part of the crumbling cooling fan duct on the print head assembly, which came loose while printing the next day. The rest of the duct eventually dropped down, catching the print and causing a terrible tangle of filament, all melted around the nozzle. Removing that tangle before it cooled any further removed what remained of the duct.

This time I remembered I had spare ducts, but unfortunately, they don’t fit. They’re right angle, but the hot end assembly requires a more obliquely angled duct. I found plenty of files online to print my own replacements, but the only filament I have won’t withstand the heat around the nozzle. To print ABS or ASA requires an enclosed print volume, which neither printer supports, not to mention the toxic fumes.

Another Clogged Nozzle On The Old Printer!
Another Clogged Nozzle On The Old Printer!

More 3D Printer Woes

To further add to the stress, now that the old printer is working again, the new printer decides to start acting up! It’s back to stopping mid print, moving the print head to the front corner, then spewing filament into the air! The worst part is I have no idea why. It’s nearly impossible for me to read the front panel display when it’s tucked away in the back corner.

After cancelling three failed prints straight and the blasted thing all of a sudden forgetting the Z-Offset, I just shut it down in disgust. When it forgets the Z-Offset, it essentially forgets how far away the nozzle is from the build plate, spewing filament more than 3mm above the build plate instead of right down on it. As frustrated as I am right now, I know it’s best to just shut it down and walk away.

I have the entire next week off for Thanksgiving, so I’ll look at it then. Once the work laptop is shutdown and stowed for the week, I’ll have the workbench available for more than just an evening sitting. Before I can mess with the printer, I need to construct an exhaust fan for my office. Ann’s concerned about the fumes from all the 3D printing. I’m not as worried about it, but agree an exhaust fan is a good idea.

But that’s another story for another time. For now, it takes the weekend to get the exhaust fan worked out, installed, and operational. Starting Sunday night, it’s time to get the new printer sitting on the workbench, along with its dedicated filament dryer. It takes up a good chunk of real estate, extending beyond the countertop, with the front panel and power supply resting on the keyboard shelf.

My New Office Exhaust Fan
My New Office Exhaust Fan

This is a new experience for me. I can actually see the front panel display clearly. And now the filament dryer is straight in line with the filament runout sensor and extruder, not beneath it at an abrupt angle, relying on the bearings in the sensor to guide it. Even so, I notice that sensor is loose. So loose, it’s about ready to fall off! Maybe that’s been the issue all along?

With it loose like that, every retract moves it up and down and back and forth, I’m guessing causing it to report an out of filament condition. Time will tell, but for now, it’s printing just fine! It continues to print just fine all through the night, non stop. I continue to print without a hitch all day Monday with it sitting on the workbench. Looks like it’s fixed. Time to shut it down and put it back on the self where it belongs.

Again? Seriously?

Not long after starting the first print the problems are back! It doesn’t make it more than a few layers before it starts that nozzle clog clearing behavior, moving to the front corner and spewing filament midair! But this time I’m paying attention to the display screen, which is telling me to check the filament. Unfortunately, no matter what response is given, it cancels the print, at least internally it thinks it did.

Unfortunately, that doesn’t make any difference to OctoPrint, which happily continues printing. It continues to send G-Code commands to the printer, while the printer thinks it’s idle. I observe similar behavior when cancelling the print from the front panel display. It doesn’t communicate with OctoPrint to tell it to stop sending commands, but it’s already turned off the the bed and nozzle heaters.

I learn the hard way that the “Reset” from the front panel is effectively a “Reset to default values”, not just a soft reset. That’s why it keeps losing its mind and forgetting the Z-Offset! The biggest problem is the printer always assumes it’s printing locally, from a memory card it doesn’t have! It has no concept of remote printing through the USB interface, other than to respond to the commands sent over it. WTF?

Works Fine When Watched Then Starts Acting Up Again!
Works Fine When Watched Then Starts Acting Up Again!

Time to check for updated firmware, which ends up a frustrating exercise in futility. Not only is there no firmware update available, they appear to no longer support the printer, if they ever did at all. You bought printer? So sorry, you on own now. Want to buy 3D printer? We sell you 3D printer. You want to buy new 3D printer? Filament? You want to buy filament? We sell you filament… Yeah, that bad.

Good luck even finding the firmware source code, let alone a supported, updated version. For the price I paid, I can’t really complain though. I find a number of online packages to build my own version of the firmware, but don’t really have time for that right now, if ever. What I want right now is to find a way to keep this POS from mistakenly thinking there’s a problem with the filament.

Jane! How Do You Stop This Crazy Thing?

I’m researching how to tell a 3D printer cancel a print, short of using the front panel. Unfortunately, the firmware also homes the blasted thing for some reason, and in an uninterruptable fashion! All the display says is “Wait patiently while…” Yeah. Sure. Why not? It turns out there really isn’t a way to cancel, short of the end G-Code that sends the turn off heaters and motors commands. My Cura slicer settings already have that setup. For both printers.

After more research, looking for a way to turn off the nozzle clog “feature”, I discover that it’s more likely the runout sensor is flaky. Alright, so how do I turn off the runout sensor? Turns out there’s more than just a runout sensor. It’s also an extruder jam sensor, and that’s the most likely culprit here. There’s an M-Code, “M412 S0”, that will turn it all off. It’s now part of the start G-Code sequence for that printer.

That’s the fix I was looking for, and it’s been working flawlessly ever since, save a few instances where build plate adhesion was woefully lacking. But I did learn NOT to cancel the print from the front panel. As far as it’s concerned, it’s just one, days long print! It also avoids that annoying “Wait patiently…” message with the added aggravation of leaving the motors ON!

The Old Printer Speedily Printing A Bottom
The Old Printer Speedily Printing A Bottom

Back In Business

Full speed ahead with both 3D printers running 24/7, or as near to that as possible. The longest prints are a little over six hours long, so I kick those off before going to bed. When I wake up in the middle of the night, I check to see if any finished, then kick off another print and go back to sleep. It takes nearly two days to print all the parts for the large snowmen.

With two printers, this approach cuts that to less than a day. The idea is to print enough to send some to my family and my teammates at work. By now I’d received all the filament except the new spool of glitter white. It’s long lead so I’m constantly back and forth with whether I’ll need more when I run out or just buy it now and still have to wait for it. I decide the sooner the better.

Part of that decision was based on a spreadsheet I created to track all the parts combinations and the amount of filament used by each, mainly to track what I’d printed and assembled so far and who they were allocated for. I even started tracking the completed snowmen with pictures of each attached to each combination entry. It’s not perfect, but it’s a start.

I kept up this pace until another nozzle clog on the old printer stopped it. This time I was printing arms, another print with LOTS of retracts using that dusty old brown filament. This time the clog was so bad I had to basically stretch the filament until it snapped trying to pull it back out. Never had that happen before, this time inside the heat block itself!

I overreacted and turned off retraction in the slicer entirely, but all that did was leave me with a stringy mess. I decided to restore the original settings based on the generic PLA profile and that seems to work better. At least it not stringing and hasn’t clogged since then.

Failed Gold Sweater Print From Clogged Nozzle And Stringing From No Retract
Failed Gold Sweater Print From Clogged Nozzle And Stringing From No Retract

Moving On

My time off for Thanksgiving is coming to an end. Time to start binning things up in preparation to relinquish the workspace to the work computer. I’ll still have the evening sittings, but it’s just not the same. Having to pack up a project after just a few hours work doesn’t allow the same freedom as having it strewn across the workbench with the ability to experiment with it when an idea pops up.

With that, I hope you’ve enjoyed this quick view of our Christmas snowmen production. I’ll follow up with more detail for the Christmas post, and maybe even a new “Rough Cut” video for the New Year!

Not Sponsored Disclaimer

I should mention, none of the links provided are affiliate links, nor do any of them sponsor me or the Barkyard Railroad in any way. They are the materials I used and are provided as a convenience for the reader.

If you have any questions or concerns, please feel free to comment on this post. You’ll need to create a user account to do so, but we don’t use any personal information for marketing or to spam you (see our privacy policy). You’ll receive a verification email. Reply with the link provided to verify your email address. After that, it’s all automatic. No waiting on moderator approval! No spamming your inbox with useless advertisements and “Special Offers”. None of that nonsense.

 

More to come. Stay tuned!

 

 

 

 

 

 

Happy Halloween!

We got the Halloween decorations down from the attic the last weekend of September, before we even knew about the offer on the other house. Ann decorated the house and I decorated the office. I had a couple of glow in the dark skulls that had been sitting over there in the corner room for more than a decade. With the CFL black light bulbs in place of the standard lamp bulbs on either end of my desk, both those skulls glow brightly!

But that was just the beginning. Having to replace the burned out bulb in the skull candelabra, I decided to buy more of those neon “flicker flame” bulbs. Good choice. Now the eyes flicker too! Then I ordered more and replaced all the incandescent bulbs in a twenty light string with them and strung them around the book cases in the office. And while I was sitting in a meeting, I modified the closet lighting test jig to add Halloween lights.

And no, this isn’t yet another lighting post. Well, it is, sort of… I merely modified the configuration and HTML enough to make a string of orange, eerie green, and purple colored lights that flicker together. Kind of spooky, but Ann wasn’t impressed. Her only comment was they looked pink, not purple. Thankfully a quick and easy adjustment to configuration values to add a bunch more blue and now they definitely look purple.

Spooky Colors Adorn My RGB Keyboard
Spooky Colors Adorn My RGB Keyboard

For My Next Trick…

Having those glowing skulls sitting on top of the speakers on either side of my desk got me thinking about what else I could do with the glow in the dark 3D printer filament and some UV LEDs. Nick and I were chatting on Slack one night and he sent me a picture of a plastic ghost flipping me the bird, from an ad, that said it was supposedly holding candles. If I try hard enough, I can convince myself those might be candles, but always saw it flipping me the bird first.

It’s funny, because the very next day I saw the very same ghost in one of those Chinesium store ads I get in my email daily. Ann had seen another skull candelabra at the Antique store down the street from us, but didn’t buy it. I asked her why not, but it doesn’t matter, she didn’t. I was telling Nick I’m thinking if they still have it, I’d go buy it. With an old white sheet and a couple of 3D printed “candles”, presto, bird flipping ghost.

We were out to eat the other night at the restaurant just next door to it, so I asked if we could walk over there afterward and see if they still had it. They close at six o’clock, so I figured we had plenty of time. Ann went to pull the door open, but it was already locked? And it’s just now quarter ’til six! A girl came to the door and said they lock up 15 minutes before. Ann told her in that case they should change their sign to 5:45 instead of 6:00.

Glowing Skulls Bracket My Workspace
Glowing Skulls Bracket My Workspace

The “Flip Off” Ghost

The antique store could have made a quick sale, but their loss. F… ’em! And the broom they rode in on! That’s alright, Nick found someone had actually created an STL file to 3D print a ghost flipping the bird with both hands and sent it to me. Both 3D printers had been sitting idle for a couple weeks with all the higher priority things that came first to be able to list the other house for sale. Time to wake them from their slumber.

I pulled the STL file into the slicer, Cura. It said 2 days 11 hours to print it! I about fell out of my chair! Then I realized it was still set for 100% infill. Dropping it back to the standard 20% infill says more than seven hours. Still too long. Scaled down to 50% of original size and now it says a bit over two hours. That’s better. I already had what’s left of a spool of white loaded in the old printer and kicked off a print.

The first print came out great, so I printed another one. Now we have two half sized “Flip Off” ghosts sitting on the tea table beneath the skull candelabra. I grabbed the mini spool of glow in the dark blue filament off the shelf, ready to make some more prints. Before long I had two more ghosts, but this time in glow in the dark blue!

Is That Ghost Flipping Me Off Or Holding Candles?
Is That Ghost Flipping Me Off Or Holding Candles?

All Things Must Glow – In The Dark!

Back when I bought my first 3D printer, my first venture into ultraviolet (UV) light emitting diodes (LEDs) was my “Glow In The Day” clock project. I’ll save the details for later in the post, but like any prototype, mistakes were made. One was printing it way too thin, the plastic face splitting into a flap where the clock movement is mounted. More pertinent to this discussion was the selection of outdoor, 12 volt UV LED strips.

The decision to use 12 volt LED strips rather than 5 volt ones adds an extra part to boost the USB supplied 5 volt power to 12 volts. These “half pint” ghosts are barely 3″ (76mm) tall. Where would I hide that part? With lessons learned, I searched for 5 volt UV LED strips and found a large assortment. Some with battery boxes for three AA batteries. Some with an additional USB pigtail adapt ed to the battery box. Some with just a USB pigtail and an inline switch.

I ordered all three to see which works best. The latter fits the bill nicely. Initially I left the strip wound on the spool. I quickly found out that was a big mistake after the LEDs became too hot to touch and the spool began to deform. Oopsie! Time to unwind. The LED strip from the spool that is. That turned into a win when I realized I could use the drill to clear out an internal passage and just insert the end of the LED strip, now free from the spool.

A Gaggle Of Glow In The Dark Ghosts
A Gaggle Of Glow In The Dark Ghosts

Ghost Factory

Perfect! That’s exactly what I was looking for. The entire ghost glows from the inside out. Before long I had the two blue ones rigged to glow from a dedicated battery, along with two new green ones I printed while working out how to add the power port to the blue ones. I noticed the 20% infill creates many very small cavities where I wanted fewer, larger ones to more easily insert the LED strips.

Reducing the infill to 5% reduced the print time even more, barely an hour and a half. It also provided the desired larger space for the LED strip. Much larger. Now it only takes the drill a moment to penetrate the bottom layers and work a slot along either face of the infill grid. Some quick work with an Exacto™ or one of those snap off knives and a triangular opening is ready for LED strip insertion.

I was back and forth whether to use a USB micro breakout board or a battery port. I have so many spare LiPo batteries, they can power them for now. They use a standard JST PH (2.0mm spacing) connector. There’s only room to fit four LEDs per strip in these half pints, so adding a battery connector to the back then feeding the wires from the connector to the LED strip makes for a very simple build.

It takes longest to reshape the drilled hole into a rectangular opening that fits the battery connector shroud. A bit of hot melt glue to secure it and all that’s left is to cut the wires to length and solder them to the LED strip. Maybe five minutes per ghost once I’m on a roll. Definitely far less than the hour and a half it takes to print them. The best part is they continue to glow even after the power is removed!

Some Of The Many Glow In The Dark Colors Available
Some Of The Many Glow In The Dark Colors Available

Rainbow Colors

When I was searching for 5 volt UV LED strips, I also looked for other glow in the dark filament colors, other than the green and blue I already have. I readily found red and purple available and bought a 1kg (2.2lb) spool of each. Orange and yellow are also available, but it appears the glowing orange starts out as yellow and the the glowing yellow starts out as green. I’ll pass on those for now. The purple arrived first, so I loaded it into the new printer.

The online picture of the purple filament shows it as more of a fuchsia color, but in reality, it just looks purple. Strange. It glows pretty much the same purple color too. Soon there were a couple more of the half pints in purple ready for LEDs. I kicked off a full sized print in purple while I installed the “guts” in the other half pints. He’s a big one! About 6½” (165mm) tall and 5″ (127mm) wide at the base. No wonder it takes seven hours to print!

The infill pattern in the full sized ghost forms a diamond pattern in roughly the center of the print. I made an opening into the forward facing section of the infill. Testing with the lit UV strip inserted, it’s obvious I’ll need more than one strip. I’m thinking four strips, each facing in one of four cardinal directions. Think north, south, east, and west. Each strip is also nine LEDs compared to four in the half pints.

Meet Nate Decapitate - The Decapitated Ghost
Meet Nate Decapitate – The Decapitated Ghost

That Will Teach Me

With what’s left of the glow in the dark green still loaded in the old printer, I kicked off a full sized print, convinced there was enough filament to complete the job. I stayed up past midnight, checking there was still enough filament left, thinking I’d just pause the print if it ran out and swap in the new spool sitting on the shelf. There’s also a new spool of blue next to it. Thinking I could keep checking on it, I dozed off. Big mistake.

By the time I woke up, the print had “finished”, but the result was a “decapitated” ghost. Bummer. Not the end of the world, but I’m not sure how I can print just the remaining portion of the head and those two amputated fingers. Problem for future me. I did measure how tall the print was before removing it so I’d know where it left off though. Nick asked if I captured the time lapse since it would show the exact layer. Nope. Not this time.

By now the glow in the dark red filament arrived. It’s time to fill out the roster and print some red ghosts. But that will have to go in the old printer. I’m working on a music stand for Ann’s new to her keyboard. I took a bunch of measurements to get me started on the design, consisting of two assemblies, the mount and the music stand itself. The idea is to attach the mount to the keyboard in a sturdy fashion, then attach the music stand to the mount.

Ann's New To Her Keyboard - Sans Music Stand
Ann’s New To Her Keyboard – Sans Music Stand

Yet Another 3D Printer Failure?

I swapped the white filament with the glow in the dark purple in the new printer, printing the pieces for Ann’s music stand. The first problem I ran into was that damned Z-Offset was somehow out of adjustment again. This has been a long standing issue with this printer, ever since I first bought it. But I think I finally figured out why it keeps happening. The Z-axis is dual drive. But I think the issue is me being in a hurry and man handling the print head.

Sometimes I just twist one of the Z-axis leadscrews to rapidly adjust the print head height. Other times I just grab the print head itself, pushing down or pulling up on it. I think the print head mounting bracket to the X-axis gantry is just thin enough that it bends, ever so slightly, when I move it by the print head. In the future, I’ll remember to twist the lead screw and not touch the print head. We’ll see if it happens again.

It’s only off by 0.4mm (0.016″), but that’s enough that the first layer won’t stick to the build plate and make it look like it’s under-extruding. I’ve been keeping a history of these magical Z-Offset adjustments and we’ve come full circle. Originally it was 3.3mm, which slowly evolved into the last adjustment to 2.9mm as of August 7th. Well, now we’re back to the original 3.3mm on October 18th. It’s a tedious process and takes multiple cancelled prints.

Ghost In The Machine Or Software Bugs?

Anyway, as I’m dialing in that last piece to test fit that keyboard mount, the printer starts acting up. The first version of that piece was too short. After a quick adjustment to the design, it’s still too short. Another adjustment and the printer just won’t function properly. It keeps stopping mid print, moving the print head off the front corner of the build plate and extruding filament, as if trying to clear a clogged nozzle.

It’s done that before, not often, but usually after cancelled prints. The more I try, the worse it gets, failing sooner each time. I finally gave up and just shutdown the printer and the Raspberry PI running OctoPrint that controls it. Thinking about it, I was prompted whether I wanted to install a new version. Usually I wait, but this time decided to update both the old and new printers’ OctoPrint controllers. Bad idea.

I’m pretty sure this new version of OctoPrint is the problem because even the old printer is telling me every file upload fails, every single time, when it works and prints the file just fine. And all of a sudden I can’t upload a file to the new printer unless I use the file manager. Clicking the Upload button has no effect. Can’t create a new folder either. It just refuses to respond. I’ll have to see if there’s a way to revert to a known good version.

Buggy Software - Upload Failed Yet File's There?
Buggy Software – Upload Failed Yet File’s There?

Moving On

Everything was working great, until it wasn’t. I’m disappointed I can’t move forward with Ann’s music stand. Having the new printer offline is annoying, but thankfully the old one still works. And it’s out of filament, so time to load the glow in the dark red that just arrived and get printing. Again, a couple half pints, then a full sized ghost. I decided to prototype the full sized purple ghost while those printed, capturing the process on video as I went.

It’s definitely a trial and error process. Even though the end result glowed the way I wanted it to, I’m not real happy with wires hanging out the bottom or the difficulty I have getting four wires to cooperate long enough to solder them together. Twice. Once for plus and again for minus. Then connect them to the battery connector. In other words, it’s going to need work. But that’s what prototypes are for.

Time to print a full sized glow in the dark blue ghost. The red gets swapped out for the remaining blue filament. There should be more on this spool than there was on the green spool, mainly because I printed a number of glow in the dark features for two of those “Glow In The Day” clocks. Now whether there’s enough to completely print a full size ghost or not remains to be seen.

That Should Have Taught Me

Well, that was another bad assumption. You guessed it. It ran out of filament before the print finished. But this time it ran out even sooner than the green spool did! How is that possible unless they short changed me on the blue compared to the same size green spool? This time I’m ready with that new, full spool of blue, but it soon becomes apparent they’re not made by the same manufacturer.

The original small spools of green and blue were made by Amolen. These full spools are made by Sunlu, also the maker of my new printer. Every so often they have a bulk filament sale and I’ll buy four to eight spools at once, basically half price. That explains why I have two 90qt tubs full of filament along with an entire six foot long shelf. Normally I go through this stuff a lot faster than I have lately because of other, higher priority tasks.

No matter how hard I’ve tried to monitor how much filament I’ve used and track how much remains, I never seem to come close. That’s going to change. I search for where the print history lives in OctoPrint, but there isn’t one. There’s a plugin for it though, tracking how much filament has been used, and the running total. I’ll give that a shot. The problem is spools are measured by weight, not length of filament.

Nate Decapitate Gets Head - And Fingers
Nate Decapitate Gets Head – And Fingers

Giving Nate Back His Head

When we were talking about it earlier, Nick told me I could shift the model down in the slicer since it only prints what’s above the build plate. The problem is knowing how far down to shift it. Glad I noted it was ~3​31⁄32″ at the time. That works out to roughly 100.81mm. At 0.2mm per layer, 504 layers out of 762 printed. Close enough for our needs anyway. It’s sliced and ready to print. Let’s see how well this works.

I loaded the new spool of glow in the dark green and kicked off the print. When it finished, I gathered the “scalp” and “amputated” fingers and “cemented” them on the previously failed print. Not bad. Looks nearly perfect, except for the obvious difference in filament. I kicked off another full sized, homogenous print. For whatever reason, the old Amolen filament seems more transparent than the corresponding Sunlu filament.

While that printed, I put together some four into one harnesses to allow a single battery to power four of the half pints at once. They went more than two days when they each had their own battery. Four from one should at least last all night. Then I got to thinking why not make a USB micro to battery connector to eliminate the need for a battery (and charger) altogether. If it’s always plugged in, it’s always on.

The Groovy Ghoulies - Now In Rainbow Colors
The Groovy Ghoulies – Now In Rainbow Colors

The Groovy Ghoulies

I grouped one of each color of the half pints together then connected them all to one of those four into one harnesses. I set them on the tea table together with the original white half pints and the flickering skull candelabra. I figured the battery would last all night, but it didn’t. I was hoping Ann would see them still glowing in the morning and get a chuckle out of it. I plugged in a fresh battery to show her how they would have looked.

She seemed unamused, but commented on how they’re rainbow colored. I guess they are in a certain sense. Maybe I should have bought the orange and yellow glow in the dark filament too. That got me thinking about how I have orange and yellow flicker LEDs and wondering how they would look inside one of those white ghosts. Only one way to find out. I feel another prototype coming on.

Using the USB “battery eliminator” harness, I plugged the Groovy Ghoulies into a USB power block and they’ll all glow together indefinitely now. Meanwhile, back at the workbench, time to find those flicker LEDs. I looked everywhere I thought they would be but couldn’t find them. Turns out they’re the one place I kept convincing myself they weren’t. Right next to blind me in the blind corner space.

The only color I have in the 3mm size is amber, or rather “orange/yellow” according to the label. Time to drill a hole through the white ghost and assemble what resembles a “probe” with an LED tip. The 470Ω limiting resistor soldered to the anode and protected by clear heat shrink. The remaining lead of the resistor is clipped and soldered to the cathode. The entire thing is inserted into the hole and the power leads soldered to it.

It’s not as impressive as I’d imagined, but the head does flicker like it’s filled with a candle flame. It sort of matches the skull candelabra’s flickering. I’ll do the other one later. I thought I had other colors in the 3mm size to experiment with, but they’re all 5mm. I guess I could drill a bigger hole if I really want to see whether I like the way they look or not. Maybe later. I still have a set of full sized ghoulies to finish.

Prototype Full Sized Ghostly Tangled Wire Mess
Prototype Full Sized Ghostly Tangled Wire Mess

Round Two – Ad Tedium

The revised edition for the full size ghost will require a PC board, or its equivalent. I had a number of small chunks of Vectorboard™ I found when packing up the corner room and sorting through the electronics. It’s basically brand name 1⁄10″ (2.54mm) hole center perforated board, perf board for short. This is the light colored fiberglass version vs. dark brown epoxy. Add some ¼” copper tape and you have DIY PC boards.

In this case I simply need enough holes for five common positive and five common negative rails for leads to solder to. The ¼” copper tape essentially covers two rows of holes, so using a hacksaw to score and snap the boards into smaller 4×6 hole pieces is just the ticket. If I made them much smaller I wouldn’t be able to handle them without fumbling them. With the copper tape in place the holes are cleared of excess material.

Cutting all those short power leads, stripping, and tinning them is tedious. The eight wires are less than an inch long, four black and four red. After tinning the pads of the LED strips, the short leads are soldered to them. The short, tinned leads from the four LED strips will each occupy holes in the common power rails, one in each rail. Then the battery connector leads are trimmed to length and soldered to the end of both power rails.

The process takes about an hour all told. At least, that’s how long it took me when I recorded doing it. But the end result is well worth it. The wiring is much more compact and the makeshift PC board is small enough to stash inside the opening in the bottom of the ghost. No messy, excessive wiring hanging out the bottom like on the prototype purple ghost. It’s as compact of a design that I can come up with. And it works.

Revised Edition Compact Full Sized Ghost Wiring
Revised Edition Compact Full Sized Ghost Wiring

Warning: Math Ahead

There are roughly 3 LEDs every 2″ (50mm), so 9 is ~6″ (150mm). At that rate, the 16 strips we need for the first four full size ghosts quickly eats up that 6.6′ (78″ or 1980mm) strip. In fact, it would totally consume it. We’ll need two strips. It requires roughly 24″ (610mm) per ghost. Add the strips for the half pints to that and it’s almost another full sized ghost. Let’s say 10′ (120″ or 3048mm) of the two strips gets used.

I stopped short of using up all of those first two strips though, taking two of the 9 LED strips from a third spool of LEDs. That left enough to replace the old 12 volt strip on the bedroom “Glow In The Day” clock. There were 40 LEDs on that one. With what’s left on either of the two spools of new UV LEDs there are just enough to fit in the old strip’s place. What a difference! Night and day you ask? These new LEDs glow as bright as the sun!

They’re so bright it’s hard to tell the glow in the dark features are green and not blue. Even the hands are glowing! When the LEDs are turned off, everything continues to glow bright green for quite a while. Perfect. If those features were printed with the Sunlu filament and not the more transparent Amolen it may look even more green. The picture doesn’t do it justice. Even after adjusting the white balance, it looks more blue to the naked eye.

New UV LEDs Are As Bright As The Sun
New UV LEDs Are As Bright As The Sun

“Glow In The Day”

I printed two of those clocks, the prototype sits out in the garage, while the revised edition still sits on the bedroom nightstand. Both were ESP8266 Arduino controlled. Yet another lighting controller, this time optimized for monochrome LEDs. In this case UV LEDs. For the glowing ghosts project, that decision to use 12 volt LED strips adds extra complexity, namely the boost converter to step up the 5 volt supply for the Arduino to 12 volt for the LEDs.

Three things became readily apparent. First, 40 LEDs draw a significant amount of power, regardless of supply voltage. Each LED draws about 20mA, times 40 is 800mA. The boost converter is rated for 2A, but supplying anywhere near the maximum power to the LED strip, the color changes from the familiar UV purple to nearly bright yellow? Not sure what that’s all about. Could be related to the outdoor silicone coating or the LEDs themselves.

Second, even though the boost converter is rated for 2A, once the brightness gets much over ~40%, it draws so much power from the 5 volt supply that there isn’t enough left for the Arduino itself. At that point, the Arduino promptly resets! This flaw makes it impossible to fully illuminate the 3D printed glow in the dark features, enough so it can’t claim to be the “Glow In The Day” clock anymore.

The third “flaw” is the inability to illuminate the radium painted hands of the clock movement. So not only does it not fully illuminate, the hands don’t glow anywhere near as much as the features on the face. The size of the clock face and LED housing is already at the limit of the print volume at the time with the old printer, making any further modifications to move the LED strip further away from the face and slant toward the hands impossible.

As time passed, the fragile nature of the overly complex boost converter and PWM brightness control circuitry was its downfall. Somehow the USB cable got snagged on something and ripped those parts loose. And because it was on at the time, it ended up shorting out something and destroyed the Arduino itself. Reworking it to run straight from a USB cable, the LEDs are bright enough now, albeit that weird yellowish hue, but the hands still don’t glow.

So why does all this matter? I replaced those old 12 volt ones with what was left of one of the new 5 volt UV LED strips. Now it glows so brightly, you can barely tell the glowing features are green! Even the hands glow brightly now! That’s what I was shooting for to begin with! I may resurrect the Arduino monochrome controller with an improved MOSFET driver to greatly reduce the heat from wasted power using the old transistor one.

Brightly Glowing Green Without UV LEDs!
Brightly Glowing Green Without UV LEDs!

Glowing Ghosts Everywhere!

There’s a set of half pints glowing on the tea table and another set glowing on my desk in the office. Add to that the full sized set glowing on my workbench and there are glowing ghosts everywhere! Add the string of flicker bulbs and the modified Halloween lighting and I bet Ann thinks I’ve lost it. Gone overboard, off the deep end. Well, maybe just a little. But it’s been a fun project.

The most time consuming part was the full sized ghosts. Everything else went together in minutes. Nowhere near the amount of time it took to put together four full sized ghosts. But they’re just fun to look at and even more fun to watch them continue to glow after turning off the UV LEDs. It’s like when I was a kid and held my luminous Timex watch dial under the living room light then turned it off to watch the hands glows. Only better!

What can I say? I’m just a big kid at heart. And if you never slow down, you never grow old. That’s not quite true in my case though. I am slowing down. I just never let myself grow up. Perhaps a better way to put it is growing old is mandatory, growing up is optional. Whatever the case may be, I had a lot of fun building these glowing ghosts, even the tedious full sized ones! And I learned a few things and finally got a true “Glow In The Day” clock out of it.

If you made it all the way through to the end of this post, thank you. I hope you understand why this is important to me. Even if we didn’t really discuss the Barkyard all that much, other than to explain how we made decoration for Halloween. Hopefully we can leverage what we learned to make some creative neon signs or other effects for the Downtown Marketplace. And hopefully the footage I recorded will make it to our YouTube channel soon!

In any case, leave us a comment to let us know what you think. You’ll need to create a user account to do so, but we don’t use any personal information for marketing (see our privacy policy). You’ll receive a verification email. Reply with the link provided to verify your email address. After that, it’s all automatic. No waiting on moderator approval! No spamming your inbox with useless ADs and Special Offers. None of that nonsense.

Stay tuned…

 

 

 

 

 

 

 

 

 

 

 

 

Selling Our Home Of Twenty Years

Our home of 20 years - 10 years later
Our home of 20 years – 10 years later

It’s a day of mixed emotions for us. Today, 17 September 2025, we signed the paperwork to list our home of twenty years for sale. It’s not our home here in Mount Dora. We’ve only been here a little more than ten years. We bought the house in Wekiva Springs nearly thirty years ago to the day. I know it’s cliché, but we poured our blood, sweat, and tears into that house to make it our home. Our beautiful home. A home we could be proud of.

We’re sad because we have to say goodbye to the place that gave us so many happy memories. We raised both our children through high school and college there. It was home to “Manic Mechanic Wekiva”, the classic motorcycle restoration machine that was our two car garage. I chronicled our adventures and improvements on my stewsplace web site, now woefully outdated.

But we’re also happy to no longer have to worry about upkeep on a house we haven’t lived in for more than a decade. When the kids, our daughter and son-in-law, were renting it, we couldn’t rely on them to do even the simplest things to help us out. And they lived right there. We’re half an hour road trip away. Something that would take them minutes takes us hours. But that’s history at this point.

We had to pay a “cleanup crew” to handle all the years of “deferred maintenance” the kids and their “lawn guy” couldn’t be bothered to do. It cost $3500, but to see the difference makes it well worth the price. A night and day difference. Everything that had been allowed to slowly encroach on the house, pool screen room, fence, etc., was pushed back and neatly trimmed and edged. The way we remember it. The way we kept it.

The Manic Mechanic Wekiva Motorcycle Stable, circa 2007
The Manic Mechanic Wekiva Motorcycle Stable, circa 2007

A Little History

Before we actually bought the house, we started with a six month lease with an option to buy clause. It allowed us to work with the owners to address all the wood rot issues that kept it from passing inspection. They were caught in a tough situation, having to relocate to California for his job, having to leave the house behind, falling into disrepair. We’ve always been DIYers, so why not help them out so they’re able to cut us a deal?

That’s all history now too. Needless to say we passed the inspection and closed on the house Halloween of 1995. Was it haunted? Not really. But it does make the date memorable. We wouldn’t have moved here had I not been laid off for Christmas 1994. At the time it didn’t seem like much of a blessing, let alone a blessing in disguise, but it sure does now! Until we moved here from the East coast, the opportunity to excel was never afforded us.

We took full advantage of those opportunities and thrived in the process. With our home improvements it slowly evolved into the home we wanted, starting with elimination of the awful dark colors and wallpaper everywhere. We designed the living room around the massive stone fireplace, a central focus as soon as you enter the house. I custom built massive book cases to bracket the fireplace and complement its size. That’s a 60″ flat panel TV for scale.

Massive Bookcases Bracket The Massive Stone Fireplace
Massive Bookcases Bracket The Massive Stone Fireplace

The Waiting Game

So here we are, the house is listed and officially on the market. And now we wait for a potential buyer. Abby, our realtor, and her team put together a knock out punch on Zillow. They took pictures of everything, warts and all, and turned it into a before and (potentially) after walkthrough using 3DHome. Absolute genius. There were a couple mistakes we noticed in the floor plan, but those are quickly corrected.

We are amazed at the number of “viewings” scheduled in the remaining weeks of September. Ann watches them more closely than I do. But then again, she’s retired! I’m not. Over those weeks I managed to free up even more storage space, happy that I get a breather now. Everything had to be out of the house to list it. But not out of the garage. At least, not until we sell the house. That is to say we could move things into the garage to get them out of the house if need be.

That would come back to haunt us. Settling into a sense of security, centered around all these viewings with no offers for most of September, I try to get things back to normal. Looking at getting the taxes started, at least the basics of collecting all the information and statements and receipts I’ll need. I order TurboTax the last weekend of September, download it, and install it just to ballpark our situation.

We were actually getting money back, until I add in all the interest from our high yield savings accounts that is. Not the end of the world. Definitely not as bad as previous years when we owed just entering the W2s. Thankfully I got that much done because it turned out to be a false sense of security. With a few days left in September, we received an offer, and for the FULL ASKING PRICE NO LESS!!! We are absolutely floored!

The Waiting Is Over!

Needless to say we accepted the offer. The buyers asked us to cover part of their closing costs and agree to an inspection and appraisal. Pretty standard stuff. There were some questions and back and forth before the inspection, but nothing serious. Then the inspection came back with roof leaks around the chimney and electrical work to bring things up to more modern standards than when the house was built in 1978.

The estimates are $1500 for the roof and another $1500 for the electrical. My first thoughts are whether the roof is still under warranty. The next is why we should have to pay to have all the outlets in the kitchen, bathrooms, and garage replaced with GFCI (ground fault) versions. That’s 2005 code, not 1978 code, but whatever. Then I actually looked at the pictures and all the work quoted. He comes the “stash things in the garage” back to haunt us.

It’s for ALL the outlets in the garage, including the workbenches! Four outlets per bench times four benches, as well as the “not to code” DIY wiring to all those benches. We countered with those benches aren’t staying, thinking someone should have said something before the inspection. If it wasn’t worded “replaced by a professional”, I would do it all myself. Another trip over there to get rid of all that questionable wiring, break down the benches, and remove all the “questionable” outlets we added.

Benches And Sketchy Lighting Wiring
Benches And Sketchy Lighting Wiring

All Things Must Go

Thankfully Nick offered to help me and we manage to get it knocked out in about five hours. But we are beat. I brought my assortment of electrical box covers, but it turns out there’s only one blank plate in lot and we need three. The light switch walking in the side garage door was modified to add an outlet since there wasn’t a single one on that wall. Otherwise there wasn’t anywhere to plug in the benches along that wall.

It’s gone now, but we need a custom switch plate and blank, which they don’t make. It needs pieced together from custom bits, which they do make. All in all we removed three outlets that I added out of necessity. I wanted the fluorescent lights to come on with the wall switch that controlled the dim, single ceiling light fixture so I added an outlet off the light fixture to allow anything plugged in to turn on together with it. Gone now with a blank cover.

The last outlet I added was to a new, dedicated breaker just for the compressor, which was tripping the breaker for the existing outlet when it kicked on. Now there’s a spare breaker that doesn’t control anything, the wires capped off with wire nuts, and a blank cover over the outlet box. There were other electrical boxes around the window and the back wall, put together in a real Rube Goldberg fashion.

Definitely not to code, and most likely the reason for the “professionally installed” clause from the inspector. It served a purpose, but now it’s all gone too. Probably the saddest part for me was filling an entire trash barrel with all those old fluorescent light fixtures, now sitting at the curb for trash pickup. I used to have boxes of replacement tubes, but finally got rid of them when I replaced the fixtures here with LED units Nick gave me.

Sketchy Outlet Tapped Off Outside Light Switch
Sketchy Outlet Tapped Off Outside Light Switch

Bonus Time

I went through the remaining motorcycle parts and other items left to come out here. Thankfully I brought those two 90qt. bins with me. I filled them both! In fact, I took everything out of the bed of the truck except the plywood to make room for them before we left. Good thing because I loaded up everything except the Super Magna engine and the shop vac the kids left behind. Nothing wrong with it. Mine now.

One other thing that popped up. The permit had expired on the new garage door we installed for the kids. It was never inspected. Not sure if the kids never scheduled with the inspector or it just fell through the cracks. But as usual, we’re on the hook for it. Ann spent days trying to track down who needs to do what just to get the damn thing inspected. Once she finally got someone to call her back, she used that number and finally made progress.

We’re in a holding pattern for now. The roofer and the electrician will be there tomorrow. I just filed the taxes today. Ann brought the shop vac home with her yesterday since she had to meet the inspector for the garage door there as well as bring the trash barrels down from the curb from Monday’s pickup. They took everything thank goodness! She was able to meet with our groundskeeper guy when she was there too.

She wanted to get a quote from him for getting the rest of the trash in the garage hauled off to the dump. One less thing for us to worry about. That’s going to cost another $1500. We’d better hurry up and close on this house soon! With Ann retired and me the only bread winner, funds are rapidly diminishing. Not only am I paying all the bills for our home now, I’m also covering the bills and the mortgage there as well! Add all of Ann’s shopping! It adds up fast!

Home Stretch

The roofers finished and the final tally is exactly the original estimate. Suspicious, but Nice. The electrician needed us to move the hurricane plywood out of the way in the garage. He came back Saturday to finish up, but all he had was white outlets and ivory covers with him. He ended up coming back Sunday to put on white covers. I would have brought ivory outlets, but now we have two ivory and two white outlets in that bedroom. So much for the “installed professionally” clause.

Ann and Nick were there Sunday as well. Ann called our groundskeeper repeatedly to find out why he and his crew weren’t there to cart off all the rest of the trash in the garage. But no response. Until his wife eventually called Ann back to let her know he was in the hospital! Hope he’s okay, but now we’re on the hook for it. These last minute surprises are getting out of hand! Ann and Nick put as much of the trash up to the curb as they can and load up the bed of Nick’s truck with the paint and such.

An added bonus was the arrival of the “junk man”, a scrapper that makes the rounds before trash pickup, looking for any metal worth recycling. Nick broke down the sets of metal shelves and that caught his eye. As they were hauling another barrel up to the curb, he asked if they had any more, so they invited him down to the garage to see for himself. He said he’d take it all! He ended up taking all the motorcycle parts, and just about anything else metal, until he ran out of space in his trailer!

List Of Breakers Apparently Ignored By Inspector
List Of Breakers Apparently Ignored By Inspector

The best part is he carried it all up to the curb so Ann and Nick didn’t have to! Talk about a win-win! They told him the rest would be sitting in front of the garage door. So now we’re wondering if he emptied the trailer and came back for the rest or not. Either way he was more than appreciative. And so are we!

While there, Ann chatted with the electrician. He said he needs to revise down the original estimate because many of the items were already GFCI protected and working. That’s great news! I knew those outside outlets and bathroom outlets were already GCFI protected. Guess the inspector didn’t see or read the breaker listing I taped to the panel so many years ago (2004). Breaker #24 is plainly labelled as “Bathroom GFCI + Outside GFCI Outlets”.

Now that we don’t need to pay anyone to haul the trash away, $4500 is suddenly more like $2500. That’s even better news! Ann and Nick took all that paint and stuff to the dump Monday at lunch time. They headed back over Wednesday night to put the rest of the trash out to the curb. All that remained was my spare motorcycle engine and some plywood. Nick brought the engine back with him. I may venture over there this weekend to retrieve the plywood.

Our Remembrance Of Those Who Preceded Us
Our Remembrance Of Those Who Preceded Us

The Final Chapter

We closed on October 31st when we bought the house back in 1995. We’re scheduled to close with the buyers October 31st too, thirty years later, to the day! The thought of a young couple, expecting a baby, making this their dream home is heartwarming. To close the final chapter of our time there and end on such a comforting note will make this all worthwhile. Almost like it was meant to be.

If you made it all the way through to the end of this post, thank you. I hope you understand why this is important to us. Even if we didn’t really discuss the Barkyard all that much, other than to explain why we still have no progress to show all this time later. Call them excuses. Call them what you will. But soon we’ll have all the time that was taken from us by everything else that was higher priority.

In any case, leave us a comment to let us know what you think. You’ll need to create a user account to do so, but we don’t use any personal information for marketing (see our privacy policy). You’ll receive a verification email. Reply with the link provided to verify your email address. After that, it’s all automatic. No waiting on moderator approval! No spamming your inbox with useless ADs and Special Offers. None of that nonsense.

Post Script

I thought it would be nice to give an update on where we stand with Halloween fast approaching. It’s less than a week away and everything is still on track to close Friday. I already let the boss know I would be taking the day off. It’s a bit of a trek to Lake Mary from here, a much longer trek than it is from the other house for sure. Here’s hoping the next update is adding a picture of the “SOLD!” sign!

SOLD!

Well, no picture of the sign (yet), but we closed yesterday, Halloween 2025! We sold our house thirty years to the day from when we bought it. It’s hard to describe the sense of relief it brings not having to worry about it anymore. The warm feeling that someone else will remake it into their home for the next thirty years. It’s the end of an era.

 

 

 

 

 

Packing Up Decades Of Memories

The Current Situation

It’s the end of an era… The kids are finally all moved out of our home of 20 years in Wekiva. And even though Ann and I have been here in Mount Dora for more than a decade now, we still have more than two decades worth of memories stored there. Or rather, I still have memories stored there. Memories I have no place to store here in our two bedroom, single bath bungalow.

That all changes now that the kids moved into their own house. It’s heartbreaking when we look at what used to be our beautiful home of 20 years, only to see it totally run down, unloved all these years later. The kids never did much to make it their home. From the looks of it, they didn’t do anything. Not even basic maintenance. But enough said. The issue now is how much money our “retirement fund” is going to lose because of the state of disrepair it’s in now.

Perhaps lose isn’t as accurate as how much less money we’ll get now than we could have if it still looked as good as when it was our home. That’s not to say we couldn’t choose to hire contractors to fix her up, but we’d stand to pay as much to do that as we would get back from the boost in the sale price. Beyond that loss, add the immediate sting to our pocketbook to pay the price for someone to come do all those things the kids couldn’t be bothered to do for all those years.

Our home of 20 years - 10 years and $3500 of "deferred maintenance" later
Our home of 20 years – 10 years and $3500 of “deferred maintenance” later

More Distractions

Why does this seemingly never ending theme of always something else that needs done first matter? It’s really starting to wear on me. I’m ready to get things squared away in the Barkyard, but ever since my last post, I’ve literally spent every weekend over at the other house in preparation to list it for sale. Ann and Nick have spent even more time over there. Cleaning up all the trash and yard debris, but mainly getting the pool sparkling blue from thick green.

It’s a half hour trip there from Mount Dora. Multiply that by two trips, morning and night, and it adds up to two hours lost every day to nothing but travel, not to mention the fuel cost. Two hours a day that the kids spending two minutes a day could have saved us by simply checking the chemicals and cleaning the filter. But enough sour grapes. Soon it will be someone else’s treasure, ready to be transformed into their dream home.

We bought it as a “fixer upper”, with plenty of potential. When Ann first saw the view from the back yard, she said, “I don’t care what the inside looks like, we’ll take it”. We remodeled every room except for two of the bedrooms. We even remade the patio around the pool, adding a pool slide and a bar complete with a Gen-Aire grill. Now it’s someone else’s turn to take that potential and turn it into their treasure.

It would be different if my day job didn’t take every single minute I’m logged on from me, distracting me from what I’d rather be doing, working on my garden scale pike. The Barkyard has been on the back burner ever since I went back to work, more than three years ago. And for far longer than I ever imagined it would. And tragically, it shows! Plot twist, now my long lost HO scale empire is the reason it remains on the back burner.

My HO scale empire under construction in the corner room (circa 2006)
My HO scale empire under construction in the corner room (circa 2006)

Packing Up Memories

My job now is to get the corner room cleaned out and packed up. Everything I want to keep from what I’ve accumulated over a lifetime. I lost count of the number of trash barrels I filled with old and outdated computer and electronics parts. Magazines from the ’80s and ’90s. Basically a bunch of “stuff” that had a place there, but is no longer useful to me, or anyone else for that matter.

It breaks my heart to throw away all the chips and now otherwise useless components that were meant to be used in projects for my HO scale model railroad. Projects that never materialized. Hundreds, if not thousands of TTL logic level chips, like the 7400 series. Old 8 bit microprocessors and support chips. Even spare 8Kx8 replacement dynamic RAM chips from when I repaired my Commodore 64 after our home in Palm Bay was struck by lightning and zapped it.

Hopelessly Useless Discrete Integrated Circuits
Hopelessly Useless Discrete Integrated Circuits

With things today measured in gigabytes and terabytes, it seems comical to even think about something in the kilobytes. Parts with top speeds of ten or twenty megahertz can’t compete with today’s multiple gigahertz clock speeds. The really sad part is I can buy something off the shelf that’s already fully integrated and does what I want for a handful of dollars. Why would I waste my time designing and building it from discrete, obsolete parts?

Considering how much real estate a discrete component implementation would require compared to the postage stamp sized Arduino that could perform the same functions, and more, it’s a no brainer why these obsolete parts are now useless. The only exception would as replacements for failed parts in an obsolete piece of equipment. But then the question is how useful is that obsolete piece of equipment compared to its modern equivalent?

Decades of Memories - My Office "Dispatcher's" Chair (circa 2006)
Decades of Memories – My Office “Dispatcher’s” Chair (circa 2006)

My HO Scale Empire (Or What’s Left Of It)

A bit of history… I had a huge HO scale layout, spanning two bedrooms, one of which I called my office. The other used to be Nick’s bedroom, until he moved into his sister’s room when she moved out. I even cut tunnel passages through the drywall between the office and the corner bedroom. That all changed when we moved to Mount Dora and the kids moved back in there.

I’m hoping that just because I’m not talking about my garden scale pike, this HO scale discussion will still be of some interest. If not, it’s understandable. Anyone who’s ever started a model train layout knows it’s never finished. It’s a given. But this is going in the wrong direction entirely. Backwards. Having to dismantle everything I worked years to put together is not something I thought would be at the top of my priority list.

I had to dismantle the part of the layout that occupied my old office so our son-in-law could make it his office. That, too, was heartbreaking. Pulling up all the track and cork roadbed, removing track feeders, wiring and controllers. Then the real work began. Dismantling all the framework and carefully storing everything away in the corner room, with the understanding we would use that room for storage.

The plywood and L-girders were simply functional, meant to someday be covered with a beautifully stained veneer to match the ornate shelf brackets, with sweeping curves in the diagonal braces, crafted to mimic old railroad station architecture. Most of those pieces already made it to our Mount Dora home. The track and roadbed and HO scale structures remain there in the corner room.

Now defunct office side HO layout over the desk (circa 2006)
Now defunct office side HO layout over the desk (circa 2006)

The Last Of My HO Scale Empire

That was then. This is now. I had forgotten all the track and roadbed is still there on the bookshelf layout, high along the walls of the corner room. There are remnants of track and roadbed that remain where the coal mine used to sit on the main level along the wall to the office, complete with the holes for the tunnels in the drywall, still there after all this time. I patched them on the office side long ago.

Beyond all the trackwork, I have models of buildings and trackside structures, many of them kits still in their boxes awaiting assembly. The assembled structures I’ve had nearly my entire life, since grade school anyway. The coal mine for instance. The brewery. The rolling lift bridge. And many more. Those already assembled structures present the challenge of how to best store them in the smallest possible space… Without damaging them.

Beyond that are all the miscellaneous items, distributed across a diverse set of containers, including old Athearn blue boxes, assorted electronics cases, and even an old Dannon yogurt container. When I say miscellaneous, I mean tools, hardware, pieces parts of rolling stock, leftover model kit sprues, model train power packs, wiring, terminal strips, etc. Everything I’ve collected over the years for my HO scale empire.

From HO Scale Empire to Bare Office Walls
From HO Scale Empire to Bare Office Walls

Extraneous Information

So why all this extra information? To explain the lack of progress on the Barkyard. Why once again something else has taken higher priority. The good news is this “distraction” will help pave the way for our comfortable retirement. We stand to triple our money when we sell the house. Ann’s already retired. I’m not. I can’t wait, but I’ll have to, continuing to squirrel away 25% of my paycheck until then.

More good news is the progress in the garage here because of this distraction. Nowhere complete by any means, but many baby steps in the right direction. All the trestle making pieces are now in a large 90qt. storage bin, ready for organizer design and 3D printing. They were taking up all the “real estate” on the shelf over the carriage doors. Space that is now dedicated to storage bins that hold items seldom needed but not yet useless trash.

Some of those seldom needed items occupy most of the more valuable storage space above the wall cabinets over the work benches. While there’s not a whole lot of room to spare over the cabinets, what room there is would much better serve frequently needed items than seldom used ones. Items not used since going up “over the rafters” have been purged as well, making room for all the plastic stringer materials, just laying on the floor in front of the workbench.

Out of Garage Storage Space
Out of Garage Storage Space

Collateral Improvements

The garage is just one of the many “collateral improvements” underway, all thanks to needing more storage space. The only way to get there is to better organize the limited storage space available. Our Closet Lighting post details the addition of closet lighting, but doesn’t really touch on the amount of storage space that was freed up by cleaning out the closet.

The office has undergone a number of reorganizations too, incrementally wringing a bit more storage space here and there. But the biggest improvement yet was triggered by making space for the tall file cabinet coming here from the other house. The two “half sized” file cabinets have been here pretty much since we moved here. The time has come for the tall cabinet to move here too.

For the longest time, the color laser printer sat atop a stack of three large storage bins, full of HO treasures from previously dismantling the office portion of the layout. It sits at the end of the long stretch of cabinets in my office. This has a number of negative consequences. First is obstructed access, both to the bottom of the bookcase and the HO items stored in the bins beneath because of the printer sitting on top of them. Second is the lack of space for the printer anywhere else.

In preparation for that tall file cabinet’s arrival, the plan is to stack the two short cabinets atop one another and slide the tall cabinet in next to them. Same footprint on the floor, but twice as tall. Actually a little more than twice as tall, but you get the idea. There’s an assemble it yourself bookshelf unit that sits on top of the short cabinets at the moment, so the contents will need to go elsewhere and the shelf itself put out to the curb.

The Printer's New Home On Top Of The File Cabinets
The Printer’s New Home On Top Of The File Cabinets

Storage Improvement Phases

Now we get to a third consequence for the printer. Where does it get power? The wall outlet will be blocked once the file cabinets are in place. The solution is a new surge strip with a “wall hugger” cord, just long enough to reach the printer on top of the file cabinets. Phase one complete. Bookshelf gone, contents elsewhere, file cabinets stacked, and printer relocated. That eliminates one other negative consequence. Now the front panel is at eye level. And legible!

Phase two is sort through the HO treasures and reduce the bin count from three to two. The plan is to stack those two bins on top of the two large storage bins already in the corner of the bedroom next to my dresser. There’s room for six more bins, including the two everything gets sorted into now. Stacking them in the corner reveals these new 90qt. bins are larger than expected, but thankfully there’s still enough space for them.

My Model Building Retirement Stash
My Model Building Retirement Stash

Phase three is sort through the lower, sliding door section of the bookcase, now that moving those bins has restored access to it. There’s quite a bit of wasted space, even with all those CDs and DVDs in there. The original thought was access was seldom needed, so why not store them where access is difficult or limited at times. New plan. Move them elsewhere and store the plastic model kits in their place to take up that wasted space.

Those plastic model kits were the last things to come over from the other house and are now sitting on top of the bookcases. While all of them may not fit in that lower space, most of them will, freeing up the space on top for things that need more frequent access. Those models will have to wait until I have the time to spend on them. Like once I’m retired. At least, that’s the plan.

Model Kits' Temporary Quarters
Model Kits’ Temporary Quarters

Future Distractions

Eventually I want to “remake” the bookcases. Those bookcases were designed and built to be “massive”, because they occupied either side of the massive stone fireplace at the other house. And while they do provide a huge amount of storage space, they were never designed to fit the space they occupy. If anything, the exact opposite is true. The space they occupy was designed to fit around them.

Where they sit now influenced the size and design of the new bedroom closets here in Mount Dora before they were even built. Each bookcase is 32″ wide. I allowed a bit over twice that, 65″ total, to leave some “wiggle room” between the outside wall and the back of the closets. When the closets and the back porch remodeling were finally completed, it was apparent I’d forgotten to take into account the width of the baseboards and the bookcase trim pieces.

Massive Bookcases Bracket The Massive Stone Fireplace
Massive Bookcases Bracket The Massive Stone Fireplace

Some “minor” rework with a backsaw and problem solved. The larger problem is how to redesign them to better suit that space? Maybe it’s better to say rework them into a design that reuses as much of them as possible, if possible. The bookcases aren’t quite 22″ deep, and there’s only about 18″ between the end of the cabinets the bookcase on that side. Where they meet is a blind corner cabinet situation.

The main (structural) shelf is lower than the cabinets too, 30″ vs. 36″ off the floor, so simply extending the countertop to the bookcases won’t work. But that’s a future distraction. If it’s not apparent by now, it should be obvious why it takes so long to get anything done on the Barkyard. In this case, coming up with the design, finding a place for everything sitting on the bookcases, then disassembling and reassembling them to match the design.

The Next Distraction

Unfortunately, the next higher priority item is filing the taxes. We always file for an extension, which is why the deadline is October 15th, and not April 15th as you would expect. Hopefully it goes quickly and smoothly. As much as preparing for the sale of the house has been a source of friction between Ann and myself, it doesn’t hold a candle to tax time. It’s always guaranteed to bring those “suppressed emotions” to the surface.

Always something else that needs done first!

Taxes Due!
Taxes Due!

Leave Us A Comment

If you made it all the way through to the end of this post, thank you. I hope you understand why this is important to us. Even if we didn’t really discuss the Barkyard all that much, other than to explain why we still have no progress to show all this time later. Call them excuses. Call them what you will. Soon we’ll have all the time that was taken from us by everything else that was higher priority.

In any case, leave us a comment to let us know what you think. You’ll need to create a user account to do so, but we don’t use any personal information for marketing (see our privacy policy). You’ll receive a verification email. Reply with the link provided to verify your email address. After that, it’s all automatic. No waiting on moderator approval! No spamming your inbox with useless ADs and Special Offers. None of that nonsense.

Stay tuned…

 

It’s Dead! 3D Printer Relapse

Not again! I was so happy to finally get this thing back up and running only a few months ago and it just failed on me again! Catastrophically this time, taking half my thumbnail with it! The extruder release lever broke, snapped right off, just trying to remove the filament. That sent my thumb on a rapid collision course with the printer frame. Ouch!

Blood everywhere and playing beat the clock to get the filament out before the hot end cools off, now I’m prying what’s left of the lever with a screwdriver to release it and still having to tug the filament harder than I should. I noticed it’s been getter harder and harder to remove the filament over the last week or so and should have known something was wrong.

Had I known it was going to fail I could have ordered a new extruder pre-emptively. Had I known it was going to fail, I could have saved myself some pain too. I guess in some ways I already knew it would fail, eventually, being made of plastic where metal is called for. Plastic gears. Plastic case. Plastic tensioner arm. All plastic!

The only things not plastic are the gear and idler pulley that together push the filament through the extruder. That and the screws that hold everything together. There’s the spring that holds pressure against that release arm the idler mounted on, pinching the filament against the drive gear too. It snapped off right where the spring pushes against it.

The Damage To The Extruder And My Thumbnail
The Damage To The Extruder And My Thumbnail

Time To Rewind

Let’s rewind a bit. In my previous post, I covered the history of this Tevo Tarantula Pro (TTP) 3D printer and what it took to get it operational and back online. I’ve been using it almost daily ever since then. In fact, I’ve been using both 3D printers nearly every day. There’s a certain satisfaction from having both of them cranking out prints at the same time.

When one or both isn’t printing something, it’s almost like OCD with me, asking myself what can it be printing now? Every post since the one about getting it working again has included prints from both 3D printers. It’s uncanny how quickly that old TTP can print. I thought I couldn’t push it any faster, but I did mistakenly and it kept right up!

The new Sunlu S9+ was advertised as capable of 250mm/sec, but even when I ask it to do half that, the TTP is still faster, even though the print’s been sliced for it using slower speeds. How is that possible? Nick has a theory on that, thinking it’s built in acceleration profiles limiting the overall speed in the new one.

Turns out I was actually sending some pretty tame acceleration limits with the startup G-code. I modified the startup G-code to remove them and modified the printer settings directly with much more aggressive values, but it still seems to obey some magical built in values I haven’t been able to find. Oh well, at least it’s almost as fast as the TTP.

Too Fast For Even My New Phone Camera To Catch
Too Fast For Even My New Phone Camera To Catch

Cranking ‘Em Out

As I said, we’ve been cranking out the prints. Between Death Trap, Death Trap Jr., and the Closet Lighting controller prints, both have been kept busy most of the time since bringing the TTP back online. I used the time between prints to make minor design modifications for each new iteration of each print then kicked off the next revision.

Of course, when it takes 8 – 12 hours to print each piece of a Death Trap it gives me plenty of time to work on other designs, and not just 3D print designs. I’ve also been working on a major refactor of how the menus and meters are handled in my Arduino sketches and libraries. The motivation is to test a new round display as a digital version of an analog meter.

But I’ll save those details for later. When I say later, I mean in a later post, once it’s all working again. To be honest, I was getting overwhelmed by the immensity of the project and had to step back from it for a bit. Not going to list all the priority items I’ve already discussed in recent posts. Let’s just say the Ultimatum of end of August is quickly approaching.

The Saturn V
The Saturn V

My Saturn V Tribute

Between the Ultimatum and the constant media circus lately, even preempting the recent 56th anniversary of men first walking on the moon, July 20, 1969, I decided to print my own Saturn V as a tribute. I needed a breather. An escape from all this necessity and media insanity and it seemed like the perfect project.

Most of the parts are either black or white, with some parts in metallic silver, and a little red thrown in for the letters. The new printer is already loaded with white and the TTP with black, so I sliced the parts based on what printer had what color. Once all the black parts were printed, I loaded up a half spool of metallic silver, a.k.a. silk silver.

These were the engines, heat shields, the service module and few other interstage parts. The engines had the most supports I’ve ever printed by far. Probably more material in the supports than in the rocket engines themselves. Those supports had to come off in layers, peeling them off until getting down to the final course that snapped right off.

I should note these STL files are from a third party source and it took some doing to get them sliced for my printers. I generally design parts without the need for support unless absolutely necessary. I probably would have made the engine nozzles separate from the combustion chamber and turbo pumps and stuff so they can be printed flat on the build plate.

Finishing Touches

Anyway, I loaded up an old spool of what was left of 3D Solutech red. It was still coated in dust from sitting out in the office on the old closet rod arrangement I had sitting over the printers. The idea was to make it easy to load a different color by just sliding the desired color spool into place and loading it.

That was before I knew about the effects of moisture on the filament and filament driers. I loaded it in the filament drier and let it drive out as much moisture as it could first, before loading it in the TTP. Long story short, I thought I did a pretty good job getting rid of the dust. Not so much.

And it wasn’t apparent it was an issue until the symptoms of a clog started to manifest themselves later. The red letters were the least of my worries. Or so I thought at the time. Once they were done printing, I decided to print the base in red too. Think I putting the finishing touches on the Saturn V I literally put the finishing touches on the printer too.

Nice Red Pimple In A Sea Of White
Nice Red Pimple In A Sea Of White

Symptoms Adding Up

I originally printed the Death Trap Jr. in black, but it looks like exposure to the sun is enough to warp the plastic. I decided to print a white one with the filament left on the spool, starting with the lid. My first indication there was trouble brewing should have been how long it took to clear the red out of the hot end and replace it with the white.

It was pink for much longer than I’ve ever had to run the new material through to clear out the old. As it was laying down the first or second layer of the lid, all of a sudden it “burped” out a red “pimple”. That is to say a big glob of red that must have been still stuck in the hot end, now surrounded by a sea of white on the build plate.

That should have been my heads up. Between pulling out the filament getting harder and harder and now this, all the signs of a hot end clog were starting to come together. I thought there was enough filament left on the spool to print the base too, but I was wrong and had to pause the print to load the new Elegoo PLA+ filament.

Trouble Brewing

It was all I could do to pull the remaining filament out. I had ordered four spools of the Elegoo PLA+ in white, and loaded a spool as a test and a comparison to the white Sunlu PLA+ I’d been printing with. The TTP was reloaded with the new white and the print resumed. It seemed to print fine. If anything, it’s a slightly brighter white than the Sunlu.

Then the extruder started making that skipping noise, but given an assist from me in the form of a little extra push on the filament, it seemed to smooth out things for a while as the printing continued. The base finished and I thought nothing of it, preparing to pull the filament back out to store it in the drier until the next print.

That’s when it happened. Right around 9:00 PM Saturday night. I could not get the filament to pull back out. Pushing on the release lever didn’t seem to do anything. Until it snapped off, taking part of my thumbnail with it. So now we’re all caught up after the rewind. So why bother pulling the filament out at all?

After having the filament just randomly snap apart when left out and exposed to the humidity over a period of time, I decided to start removing the filament when the last print for the next few days finished. This allows the flexibility of keeping the spool in the drier or storing it in one of the sealed bags and loading a different spool, and whenever needed.

Replacement METAL Dual Gear Drive Extruder
Replacement METAL Dual Gear Drive Extruder

Where Do We Go From Here?

Obviously I need a new extruder. I’m not sure if I can even still source the original, let alone find one that isn’t already on its way out like my old one. Nick recommended a dual drive replacement like the one he got for his printer recently. It’s all metal, with two opposed drive gears rather than one and an idler “pulley”. The frame is all anodized aluminum.

I ordered one from Amazon and it arrived Sunday afternoon. If I have any complaint it would be the total lack of assembly instructions. I had to closely scrutinize the limited number of pictures on Amazon to piece together how things fit and where.

But before all that, I had to remove the plastic gear pressed on the stepper motor shaft. Thankfully there was enough clearance between it and the face of the motor to get a pair of screwdrivers behind it and pry. I only flung it on the floor in spectacular fashion once… When the screwdrivers finally lost their leverage, the adjustable wrench finished the job.

Old Pressed On Plastic Drive Gear
Old Pressed On Plastic Drive Gear

Fitting The New Extruder

Now it’s time to get the new extruder drive gear on the stepper motor shaft and roughly aligned with its companion on the rest of the extruder. Running the set screw down will keep it in place until final adjustment can be made. Now we can fit the new extruder to the stepper motor, separated by the mounting bracket. I only screwed up the orientation twice…

First I managed to get it 90° off, thinking the release arm worked opposite of what it actually does. The next time I somehow managed to get connector on the stepper motor facing away from the cable. Each time it had to come all back apart and the screws totally loosened and moved with it.

After a few choice words, I finally get it all put together and ready to test. Well, once I adjust the drive gear alignment on the motor shaft that is. It’s already a miniscule set screw to begin with, and it’s a good thing the hex wrench is so small and flexible, because trying to get it in the set screw would be impossible without flexing it, even with a ball end.

With that done and out of the way, it’s time to load up the filament and do some testing. And instantly I’m getting that skipping and nothing out the nozzle… So much for the new extruder fixing the problem.

Nick Lends A Hand

Nick was kind enough to take a look at it with me after supper. I had basically shut down the printer and left it off until I was ready to test with the new extruder, not giving the idea of a clog a second thought. Until now.

Nick realizes it’s taking way too much force to push the filament into the hot end. Not much if any plastic is coming out the nozzle. That would explain why the extruder is just skipping. Then he asks if I recalibrated the extrusion rate. I told him I had not. Not being able to extrude makes it difficult to measure how much gets extruded to adjust the rate.

Looking at the old extruder, it’s readily apparent that I need to make at least some adjustment since the old one had a gear reduction and the new one is direct drive, right off the stepper motor shaft. Oopsie. After “guestimating” the reduction ratio, I make a quick divide by four change, from 408 to 102. Still skipping though.

Poked the nozzle. Nothing. Took the nozzle out to see if it could be reseated without having to tear down the hot end again. I probably just made things worse by giving the molten plastic all the room it needed to fill that void, guessing that “overdrive” forced the molten plastic out between the bowden tube and the nozzle in the hot end causing a clog.

A New Hope

After having torn down the hot end twice, and finally getting it fixed only a few months ago, I NEVER want to have to do it again. But it looks like that’s what it’s going to take. That’s it for tonight. I thank Nick for his help, then shut down the printer again and leave it off until I have more time. Do I need yet another new hot end or can just clear the clog?

Tearing down the hot end takes up my entire work cell to lay the printer on its side to be able to get to everything on the printer, short of standing over it while it’s sitting on the shelf and having to turn it to reach behind it. I need that work cell for my work laptop during the day. I can’t leave the printer torn down with parts strewn everywhere. It needs to wait.

Later in the week I was chatting more about it with Nick and something he said about the opening through the hot end being as big as the bowden tube triggered a thought. Will simply pushing the bowden tube through the hot end clear the clog? A quick search of the waste basket tells me I already threw out the old tubing. Damn!

I don’t really want to dig out the new roll of tubing again just to cut a short piece. Then I remember I have an assortment of solid brass rods. Is there a 2mm rod? Bingo! If it’s not 2mm, it’s 5⁄64″, and at least 100mm or 4″ long. If anything’s pushing the clog out, this ought to work, as long as it’s not too big around.

The Culprit, A 2mm x 6mm Plug
The Culprit, A 2mm x 6mm Plug

We’ll Do It Live!

It’s a perfect fit! It quickly and easily frees a 2mm round plug ~6mm long. It pops right out onto the build plate! Nice! Not having to tear down or replace the hot end is even better! I should mention I’m doing this while the hot end is live, at temperature set for 210°C. Otherwise the plastic would be solid as a rock and stuck to the inside of the hot end.

Time to thread the nozzle back in, as fast and as far as I can by hand until it gets too hot to touch. The small adjustable wrench tightens it the rest of the way in. Next is to thread in and tighten the retainer fitting for the bowden tube coming from the extruder. Last step is to push in the bowden tube until it seats against the top of the nozzle.

Basically the bowden tube has to fit tight against the top of the nozzle to prevent the molten plastic from oozing out around it and causing a clog in the hot end. To get that tight fit means the end must be cut absolutely straight. There’s even a special cutter tool to do just that. And you’d better believe I used mine!

With everything buttoned up, I load up the black filament, pushing it through the new extruder and all the way down the bowden tube until I feel the resistance of the nozzle. From there I command OctoPrint to extrude 50mm of filament and… Still skipping and very little plastic comes out the nozzle. Again?

Bowden Tube Cutter
Bowden Tube Cutter

We’ll Do It Again!

Let’s do this all over again then. Remove the fitting and bowden tube. Remove the sizzling hot nozzle with the wrench. Push out the clog with the brass rod. Put it all back together again. Same thing! Still skipping and very little plastic coming out the nozzle. What is going on?

Did the hot end somehow manage to clog again? How is that possible? I’m beginning to suspect the bowden tube isn’t fully seated on top the nozzle or the new nozzle is somehow clogged already or both. I try to mark where the bowden tube sits relative to the top of the fitting, but even permanent marker doesn’t stick to teflon tubing.

Let’s do this all over again. Again. This time I switched to another new nozzle, guessing not clearing the clog first just clogged the new nozzle too. This time to ensure the bowden tube was indeed fully inserted and sitting on top the nozzle I inserted it first, before screwing in the fitting and tightening it down. It definitely went in further than before!

It’s Alive! Again!

It’s alive! It’s extruding like it should! Not skipping at all! That must have been the problem, another clogged nozzle and the fitting interfering with the bowden tube and constraining it enough so I wasn’t able to insert it enough to fully seat on top the nozzle. Definitely need to remember to insert the bowden tube then install the fitting next time.

I’m so happy that it’s working again and cannot believe it wasn’t something more serious. Had I known it was going to be a simple fix I wouldn’t have waited all week to try it. But again, until Nick mentioned about the bowden tube passage through the hot end, I wouldn’t have thought to work on it while it was still sitting on the shelf.

Removing a few easy to access parts and pushing out a clog with length a brass rod is certainly easy enough to do just that though. Thankfully I didn’t wait for the weekend to try it. But before I start doing backflips to celebrate, it’s time to actually calibrate the extruder steps and run a test print.

Turns out my guess of 4:1 reduction was off, more like 2⅚, but now when I ask for 100mm of filament to be extruded I can be confident it is. I fire off a test print, crossing my fingers I won’t have to recalibrate the Z offset too. The closet lighting battery cover prints fine, although I may have heard the nozzle lightly grazing the texture of the build plate.

One More Time

I fire off another test print, this time another closet lighting switch box lid since the latching tabs were broken off the old one. Do I need another closet lighting switch box? No. Will it be nice to simply swap out one that needs charged with one that’s already fully charged and ready to go? Yes. Yes it will.

I’m not taking the time to put another one together right now though, but at least I’ll have all the parts I need to put one together when I’m ready to. With both the test prints finished and looking good, I’ll just need to keep an eye on the Z offset, looking for a telltale groove forming in the texture of the PEI sheet.

Desperately trying to find something else to print so as to keep exercising the printer but coming up short. Already have more than enough run in stands of various colors, like black, navy blue, and white.

Speaking of Navy Blue, that’s another 3D Solutech color I can’t seem to match and I’m down to the last few layers on the spool. And it was just as dusty as that red was that I’m pretty sure caused the clog in the printer.

Lessons Learned

I learned a number of things from this one. A number of things that I should avoid or do differently in the future. And I learned a method that will make it easier to remove another clog in the future if it happens again.

The first is even though I think I got all the dust cleaned off from those leftover 3D Solutech spools, they aren’t clean enough to avoid a clog. Maybe I can rinse them off then bake them in the drier to drive out the moisture. I hope it doesn’t totally ruin the filament, but at this point, it’s already ruined unless I can find a better way to clean off the dust.

The next is to insert the bowden tube into the hot end fully to ensure it’s flush against the nozzle before installing the retainer. And this time I learned something new, an easy way to clear a hot end clog without having to tear it all apart. Had I known this before destroying the original hot end the first time I had it apart, I could have avoided having to replace it.

Another thing that I learned before this happened is moisture is the enemy when it comes to 3D printer filament. I learned this the hard way when the exposed filament loaded in the printer would just randomly snap, becoming brittle from the moisture. The problem is the remaining filament is just as brittle and removing it may be difficult or impossible.

So Long Solutech

As an aside, 3D Solutech used to be my go to filament, made in many different colors. A much larger range of colors than most every other manufacturer. For example, Wheat, Skin, Denim Blue, Navy Blue, Merlot Red, etc. Their Merlot Red is a very close match to the maroon color of the AT&SF passenger cars while their Navy Blue a close match to B&O Blue.

Their products are no longer available since they went out of business years ago. Amazon’s available stock lasted for another year or two until it was finally depleted. I still have a large stock, vacuum sealed in the box, but once it’s gone, it’s gone. Like the Navy Blue, all I have left is a few layers on the spool, maybe one or two.

The only alternative is to paint the parts, in this case with B&O Blue, a.k.a. Bando Blue. But even getting matching paint has become more difficult as major manufacturers have left the market, citing low sales volume. So now everyone’s in the same boat as those who modelled a road name with colors no one carried, having to hand mix their own.

Ill Advised Attempt To Keep All Spools Available
Ill Advised Attempt To Keep All Spools Available

Live And Learn

I also have a large stock of already open, dust impregnated spools that used to sit out on a wooden closet rod above the printer, exposed in the office environment, some for years on end. I’m really hoping the idea of rinsing the filament clean is a viable method to reclaim them. We shall see.

I’m faced with the prospect of just throwing them out. For those near empty spools, it’s not so difficult, but the nearly full ones I’d really like to save if at all possible. A dozen spools at $20 or more a spool is a $250 loss. I’ll learn my lesson the hard way it seems.

But it’s more than just the money. It’s the lack of suitable replacement color options. Sunlu has a large selection of colors, but nowhere near as many as Solutech offered. My favorite color to print prototypes with was “Mint”, an Aqua shade, but lighter. Kind of like powder blue but with more of a greenish tinge added.

Fringe Benefits

Oh well. At least now the filament sits in a filament drier meant to drive out the moisture. As a fringe benefit of being totally enclosed within the drier box, it also protects the filament from dust. As I said, the only issue is with the exposed filament if it isn’t removed from the printer after the last print for an extended period of time.

For now I should also learn to just take the win and move forward. After a relatively simple fix, I’m once again blessed with a working printer. Two working printers for that matter. And both are sitting idle, awaiting their next assignment, with exposed filament until then!

I hope you enjoyed this post and the “surprise” ending of a not dead again printer. Hopefully by the next post I’ll have the design for those concrete molds for the switch ladders. We shall see. Stay tuned, more to come.

 

 

 

 

 

 

Closet Lighting

I’ve made small progress on many different things today. Not as much as I wanted to get done, but I never do. The one thing I really wanted to get done was cleaning out my bedroom closet the rest of the way. There’s kind of a short story surrounding that, so I’ll try to keep it brief…

When we remodeled the back porch, there was a lot that needed done. It was a disaster. Everything was covered with cheap, thin paneling that may have been tempered Masonite™ at one point, but now brittle and crumbled in your hand. Not only did it cover the walls to the outside, but it also formed the bedroom closet walls. It had to go.

There was also a makeshift passthrough door in what was supposed to be a wall between the laundry room and the extra storage room off what became my bedroom. That extra room became data central. Not all at once, but over repeated incarnations to what it is now, each time to increase and better organize storage as well as provide better utility.

Old Craptastic Closet Wall Panelling
Old Craptastic Closet Wall Panelling

After tearing out all that crappy paneling, and the bedroom closets, and studs that framed them, it really became one big pass through until I rebuilt those closets. I used bead board, with the outside facing the back porch painted white, and the inside left as natural wood. I even used cedar for shelf cleats and the closet rod hangars. Absolutely beautiful!

Closet Lighting

The only thing missing is lighting. There was no provision for lighting in the original closets either. Probably a good thing too considering most of the house power came from one of those ancient, original knob-and-tube wiring feeds. One spark and all that crappy paneling would have lit up like tinder and burned the house down!

Ann got around it with a battery powered “tap” light stuck on the bead board ceiling in her closet. I could have installed light fixtures and surface type switches with that flat, snap conduit, but we had already completely rewired the house long before doing the back porch and rebuilding the closets. Battery power it is. Then it hits me…

Why not use an arrangement like the office lighting strip? I grabbed my tape measure and verified the closet is a little more than 38″ wide. Wide enough for one of the two segments in the LED office lighting. The only difference is the office lighting has a dedicated mains power supply supplying many amps, 6 or 8 amps @5 volts IIRC.

The closet lighting will need to run on rechargeable battery power with a limit of about an amp. I have a couple of leftover passenger car lighting 3D printed battery boxes, already wired up with a 2000 milliamp hour cell, ready to go. But that would only be temporary.

Dual Strip Office Lighting
Dual Strip Office Lighting

Another Lighting Controller?

Yes, another lighting controller. I really need a bigger switch, housed in a removeable box that can be moved to a charging station. I’m already behind the 8 ball on getting other 3D print designs finished and really don’t want to add yet another to the list. For now, just the ability to unplug the LED light strip from the controller box will be good enough.

I have enough of the extruded aluminum channels with diffusers to make up another segment. The nice thing about using a 3′ segment like the two that make up the 6′ light in the office is I can reuse everything from the office lighting sketch with minor modifications to the configuration and web page to support just half, 55 rather than 110 LEDs.

Each pixel has it’s own red, green, and blue LED, each consuming ~20mA each, plus whatever the consumption of the single control chip per pixel is. Let’s say 60mA per pixel as a nice round figure. The bad news is all 55 pixels on at the same time at “full tilt” will consume 3.3 amps at 5 volts! Our poor little passenger lighting setup will handle maybe 1 amp.

Thankfully the lighting controller can set them to ¼ power to bring consumption back under an amp. I was hoping to put together the new lighting segment tonight, but I forgot these extrusions are a meter long (39.36″), not 36″, and need cut to length. In any case, it’s a tomorrow thing.

It’s a Tomorrow Thing

My thought was just use the table saw with the miter gauge to trim the aluminum and diffuser to length together. Easier said than done with the garage in the state of disarray it’s in, stuff stacked on the table saw and strewn about the floor and everywhere. Hacksaw it is. A quick file to remove the burrs and it’s time to stick on the LED strip.

Once I’ve soldered the pigtail connector to the LED strip, I prep the extrusion with an alcohol pad then remove the protective strip from the double sided sticky backing, a little at a time, while placing the LED strip against the extrusion and pressing it down in place. With that done, it’s time to add the diffuser and end caps and give it a test.

I already modified the sketch config and HTML page to match the “half” office sized LED array last night. As I feared, the battery power gives out once a certain brightness threshold is reached, resetting the Arduino. Time to regroup. After some figuring, I decide to split the 55 LED strip into two, a main light of 30 LEDs, and an under shelf unit of 25 LEDs.

Another hack job, literally, with the hacksaw. Time to solder on another pigtail to the second LED strip and add a harness to another Arduino then program it for the second light strip. Also need to reprogram the original to have fewer LEDs and a new HTML control page as well. Those edits are fairly quick and my soldering job is soon tested.

Repurposed Passenger Car Lighting Controller
Repurposed Passenger Car Lighting Controller

It Ain’t Pretty

The original idea was to use one of the spare passenger car lighting battery boxes to power and control these things. But now that I need two of them, things are getting complicated. Add to that the tiny slide switch used to power on the unit is difficult to find, let alone know which way is on if accidently left on and the battery goes dead.

It’s not a deal breaker, but it could certainly be much more user friendly, and obvious which way is on. I used double sided tape to stick the battery box to the wall of the closet and routed the wiring harness I assembled to connect the LED strip to it. After drilling pilot holes and securing the mounting clips with screws, I snap the extrusion in place. Time to test.

It works great, but it ain’t pretty, and it suffers from all the drawbacks I already mentioned. Unfortunately, recharging it was an afterthought too. At least it became apparent it was once I realized where I stuck the box to the wall didn’t allow access to the existing charging port. Now I get to gut the thing and pull out the battery every time it needs recharged!

Add to that the placement of the LED strip at the top of the closet leaves a rather pronounced shadow beneath the shelves. That’s where the second strip comes in. It will mount beneath the shelves to illuminate anything beneath them. Once I attach the mounting clips and snap it in place that is.

Best Laid Plans

Originally I didn’t plan on a light under the shelves since all it would do is backlight the clothes hanging in front of it. Now that I’ve cleaned out the closet and donated everything that didn’t fit, I’m left with one polo shirt and my motorcycle boots. There’s no reason to leave that polo shirt hang in the closet and gather dust since I no longer need to wear it to work.

I work 100% remotely now and I’ve only needed that polo once since starting this job. So now it’s folded up in my dresser. Beyond all that, it’s not long before the gutting to recharge the battery renders the battery box inoperable. The original idea of reusing what I already have is quickly dissolving into a new design adventure.

Not what I wanted at all. In fact, it’s exactly what I wanted to avoid. Certainly nothing I have time for, but it needs done nonetheless. A couple of design decisions later and I have the the HUGE 10,000mAh batteries out along with their dedicated power bank charge controllers. After a few charge and discharge cycles, I remember why I mothballed these things.

It takes hours to get to 75%, then minutes to reach 98%, where they sit for a long time before reaching 99%, then 100%. They certainly don’t garner trust in the charging readings, being the finest quality Chinesium, but they do have a nice remaining charge display and can provide more than an amp of current.

Three Styles, Newest To Oldest From Left To Right
Three Styles, Newest To Oldest From Left To Right

New Designs?

Looks like I’m designing a new battery box with the dimensions of a standard switch box to hold the HUGE battery and switches big enough to be seen. The problem is I have so many different types of dedicated charge port (DCP) controllers, it requires multiple designs.

Basically I have three styles of DCPs to worry about. The first has one of those bright white LED “flashlights” that turn on when you press and hold the button. The next an older style twin USB A output with a single USB micro charge port. The third is a newer, high current twin USB A output with USB micro, USB C, and Lightning charging ports.

I chose the second style for the prototype design. The flashlight version is an LCD with a bright blue backlight but it suffers from the LCD off axis lack of viewability issue. The other two have bright white LED displays. Much easier to read without the off axis problem. The first iteration has half the access opening in the “case” and the other half in the “lid”.

The only problem with that earlier version is that to be able to provide access to the charge port from the bottom of the case, the wakeup button is on the opposite end from the outside of the case. After trial and error and three or four iterations trying to come up with a feasible mechanism to remotely push the button, nothing is working reliably.

Double Whammy

After trying to look up the specs on the unit, it becomes apparent it’s no longer available, superseded by the newer, high current version with more charging port options. So that coupled with the button on the wrong end is the double whammy. The newer unit has the button on the opposite end so it can be accessed from the outside of the case.

Not wanting to give up on the older version, I decide to go with a “universal adapter” approach where the case and lid have cutouts in the proper location for access to the USB A and charging ports, but the specific access port locations are contained in an adapter that attaches to the lid. It doesn’t seem all that important now, but boy am I glad I did it that way!

After printing countless iterations of both adapters, I reach the final designs. The case has an access “hatch” to allow sliding in that HUGE battery with a snap in cover to keep the battery from falling out. The lid provides openings for two round LED rocker switches to snap into.

Various Iterations Of Cases And Adapters
Various Iterations Of Cases And Adapters

The Final Design

The final case design simply allows a generous opening for any port configuration of the chosen DCP. Previously the case and the lid both contributed to the port access closure. The adapter is now responsible to “form fit” and fill in around them. The case also provides openings to snap in two of the standard black three pin connectors these LED strips use.

There’s a bit of a story behind that, but I’ll try to keep it short. For initial fitment, I prefer to make small test prints that print quickly and allow fast turnaround adjustments to home in on the final sizing and spacing. But if I had the actual connector specs, I could shortcut the trial and error design effort even more.

After Googling a bulkhead style connector for way too long and getting nowhere, I finally realize the connector that’s attached to the LED strip has a set of snap in retainer arms already built in! DUH! But now the issue is I need that connector on the supply side from the Arduino, not the supplied side on the LED strip, so it can snap into the case opening.

Rather than rework or remake the LED strip and cabling that’s already in place, I decide to solder up and assemble an “adapter” cable. In other words, a “gender bender”, in the parlance of the ancient serial port connectors we used back in the day. A quick test proves it works as intended.

Trouble In Paradise

That’s not the last of the soldering necessary though. The rocker switches still need wired up to turn on two separate Arduinos. Two you say? Why two? Because there’s no way to wire the rocker switches to both provide power and act as an input to indicate which LED strip to energize, short of using blocking diodes and further complicating the design.

It’s the quickest way there, and considering I didn’t want to take the time to do any design on this to begin with, it’s certainly turned this into a much bigger project now. I have Arduinos to spare, but I don’t have time to spare to update the sketch to control two LED strips let alone read the inputs to determine which LED strip to control.

All the interconnects use the standard lithium cell connectors, with the polarity and connector style matching the battery setup. If it supplies power, e.g. battery or rocker switch, it uses that configuration. If it accepts power, e.g. DCP or Arduino, it uses the shroud configuration. That way eliminating a component to troubleshoot guarantees the correct fit.

So with everything buttoned up and ready to test, I plug in both LED strips and turn on the switches. Both turn on and really light up the inside of the closet. This is great. This is exactly what I wanted, a brightly lit closet so I can see what’s in there. No more working in the dark. But then everything turns off after a minute? Seriously? WTF?

Adapter Cable And Various USB Micro Adapters To Prolong On Time
Adapter Cable And Various USB Micro Adapters To Prolong On Time

Scratching My Head

Now I’m really scratching my head. My bench testing with an inline USB power monitor shows ~10mA per pixel, or ~300mA for the 30 pixel strip and ~250mA for the 25 pixel strip. This should be well within even the original 500mA USB current limit, but these DCPs are supposed to support 2.1A and 2.4A!

So now I’m wondering if it isn’t drawing enough current? How can that be? I can see if it was only a single LED, like 10mA – 20mA, but this is an obvious load. To test the theory, I grabbed the test fixture Arduino and LED strip and plug it into one of the USB ports. That seems to have solved the issue by adding another ~290mA load. Until it doesn’t…

I thought maybe it just needed the data connection to the test fixture Arduino setup to remain on, but when that failed too I decided to do some more research on how the USB connection actually works in this situation. That’s when I found the whole DCP thing, where shorting the two data pins together was supposed to tell it this is a DCP.

So for grins I grabbed one of the last micro USB breakout boards I had, shorted the data pins together, and plugged it into the USB connector on the DCP. Still no luck. More research and I found three more configurations to try with various resistor divider combinations on the data pins from power to ground.

It’s a Tomorrow Thing All Over Again

One configuration uses a 5.1KΩ / 10KΩ divider. Pretty sure I have those values in my resistor stash… That’s buried beneath three other storage bins and in the back behind another bin up on the shelf in the corner. It’s late, and rather than mess with it tonight I’ll just deal with it tomorrow. But tomorrow turns into the next day. And the next.

In fact, this whole episode stretched out over weeks before I even got to doing the research, and the entire time my progress with the closet ground to a halt. Making room for the most recent acquisitions in the closet is the goal here. The idea is to make room for all my bins strewn about here and there and everywhere on the cabinet at the foot of my bed.

That storage space on top the cabinet was occupied by those recent acquisitions stacked on top of it. I managed to get most everything stuffed in the closet, but there’s still more to be done there. Mission almost accomplished. Now I need the lights in the closet to stay on so I can see what I’m doing to try to fit the last of boxes of cars and whatnot in there.

Closet Upper Light Only
Closet Upper Light Only
Both Upper And Lower Lights
Both Upper And Lower Lights

The New Final Design

I called them the final designs earlier, but that’s no longer true. If memory serves, I scrapped using these for a project at work for the same reason, because they kept turning off after a minute. Let’s see how well the earlier version DCP works. This is where those battery connectors saved the day. It’s as easy as unplugging the one and plugging in the other.

I didn’t bother with dressing everything into the box before I knew whether it was going to work or not. By now I had already reworked the original cabling and put together a second for the new strip under the shelving. I set the whole mess on the shelf and plugged in the cable and turned everything on. And now we wait…

It works fine and continues to provide power as long as it’s switched on. Time to switch over to using that DCP. Unfortunately the only exception to my connector rule is the hardwired power feed to both rocker switches. The feed has a connector, but from there is hardwired between the two switches, and the wires must be cut to remove the switches.

Light Switch Upper Only, 53% Remaining
Light Switch Upper Only, 53% Remaining
Light Switch Both Lights On
Light Switch Both Lights On

The Old Switcheroo

So why do I need to take the switches out in the first place? Isn’t there an adapter for that style DCP? The answer is yes, but the adapter for the other style DCP is already glued to the lid of that box. Couple that with the broken retaining tabs on the lid and it’s time for the old switcheroo to another lid which requires the switches to be removed.

I already have another switch box more or less ready to go with the older style DCP, but it will need the power output connector attached while I’m soldering the power feeds back on the rocker switches, now moved to their new home. The old box was black, while this one’s white, not that it matters for controlling LEDs. More aesthetics than anything else.

I figure a white lid with a white case looks better than the mix match white lid with a black case. Besides, I’d have to print another black lid and I don’t want to waste the time doing so. With everything buttoned up I place the new switch box in place and connect the LED strips. Both strips light up right away, and more importantly, stay on until turned off.

No Longer Available

Unfortunately, I can’t get those older versions of the DCP anymore. I only had a few of them to start with, and once they’re gone, they’re gone. With the new versions not working as expected and being the finest quality Chinesium, there is absolutely no documentation for them.

And of course any markings on the control chip don’t turn up anything in a Google search either, where I was hoping to find a replacement that is still available. The battery protection chip shows up, but that’s about it. I may find an answer on how to strap or configure the new ones someday, maybe I’ll find something on the old ones missing on the new ones.

In any case, it works for now, and I have more pressing issues to deal with. Like making room for all my stuff still in the corner room over at the other house. That’s the motivation for getting the storage bins off the top of the short file cabinets. The idea is to then take everything off the old shelf unit sitting on them as well and stack them on top one another.

This will make room for the other tall file cabinet over here. I already have five large storage bins with HO scale stuff in them. I ordered four more large storage containers that will hopefully be enough for the rest of the already assembled buildings and yet unassembled kits.

I’ve already filled one with all my 3D printer filament and will filled another this morning.

The Ultimatum

Now that the kids have moved most of their stuff out of the other house, Ann’s ready to list it. She gave the kids the ultimatum of the end of August to have all their stuff out or kiss it goodbye. I got the same ultimatum. I told her that may be an unrealistic expectation, but agreed having a deadline is better than not having one.

I also told her I’ll do what I can to reach that goal, but be prepared to be disappointed if it doesn’t happen. My biggest concern is the motorcycles in the garage I still can’t get to. Then she sends me a picture of one of them in the driveway after Nick moved a bunch of stuff out of the way to do so.

I’m not sure why she told me not to touch any of the kids stuff in the garage or move it but all of a sudden Nick could move a bunch of their stuff. I think it was meant to say I didn’t need to worry about getting to the motorcycles more than contradict what I was originally told about moving the kids’ delicate stuff.

It helps to know they’ll help with them, but I still can’t get to all the boxes of spare parts on the shelves until the kids get the rest of their stuff out of the way. I can’t even start disassembling the work benches until they get all their shit off them. We have 40 year old teenagers, that need to be told every step, like they can’t think for themselves. ¯\_(ツ)_/¯

Expanding Storage

One way or another we need to expand our storage space, or at least I do, just to have room for everything. One option is renting temporary storage but I’d like to avoid that if at all possible. Most everything I would store there is climate sensitive and will rust or melt if it’s too hot or humid. That’s why the garage has its own dedicated split unit.

The garage is already crammed to the gills, but like the bookshelves in my office could be much better organized. To that end, I allocated the remaining two large storage bins to the garage and all the trestle making pieces sitting across the shelf over the carriage doors. I just ordered four more for the HO stuff at the other house.

I spent last weekend at the other house going through everything, sorting it as trash, garage sale, or keeper. Ann and Nick got all the trash out to the curb and placed all the things I labelled as garage sale in Esnel’s office. There’s still more sorting that needs done, but I accomplished most of it in one day. I’m keeping all my styrene model kits for when I retire.

All the HO building kits are now all together in the corner room closet, along with all the electronics sorted into several 6qt. and 16qt. storage bins. I had to move all the wood out of the closet left over from disassembling the lower part of the layout, placing it on the countertop now laying on the floor, left behind when we moved the beautiful cabinets out here.

Long Term Storage

Before getting lost in the details, I was saying those trestle making pieces are coming down and will be replaced with items that are seldom needed but nice to have ready access to, like the old door knob sets or ducting and ventilation parts. Right now the tops of the cabinets are stacked with those seldom needed things. All the space will be freed up.
There are even more trestle building pieces stacked vertically on the back of one of the carriage doors. The other has a rack for what I thought would be useful pieces of wood. They’ve been there ever since I put it together years and ever ago. I have yet to use a single piece of wood stacked there. Time for the bin.
Then there’s the swinging plywood rack I though would be far more useful that it is. In fact, it’s just in the way, and most of the stuff stacked there hasn’t been touched since it was put there. The big chunk of ½” plywood is about the only thing I can think of that I recently grabbed and sliced into pieces to use for the office floor. Just need to install it.
The next big ticket item is a new shed. The old ones ahs certainly served its purposed, but it’s getting tired. The floor used to have a plywood floor on top of studs beneath it, but with the floor being so spongy, and now the carpenter ants coming up through the floor it’s obvious it’s long gone. The new one will be twice and big on a concrete pad.

Another Distraction

Between the Death Trap design from the previous post and now this new closet lighting controller design, I haven’t touched the switch casting design in months! I’m beginning to think it’s time to find a high school prodigy or three to employ to offload some of this workload. That or just retire so I have enough time to do this full time instead.

There’s a story there too. As much as I’d like to retire, Ann already has. She originally planned to officially retire in September, but as fate would have it, was forced to retire early. The company she used to work for was more interested in selling their services in the various “markets”, as they call them, than actually providing quality health care.

The last straw was the so called “team building” planned for Jupiter, FL. Supposedly an optional invitation, but it quickly became apparent it was mandatory. She’d have to travel there, along with her other management counterpart, and only one of their shared team of more than a dozen. Two managers for one team member? How does that make sense?

Early Retirement

When Ann said she wasn’t going to attend when they couldn’t give her a good reason why she needed to be there, other than “Because we said so”, she was fired. No severance. No professional send off. Nothing. She wasn’t treated like she’d been a key contributor, but rather summarily dismissed, because “Fuck you, that’s why”. Their Loss.

Her team was told her last day was today and that’s all they were told. Talk about a piece of shit company. I told her she should sue them, but Florida being a “Right to Work” state means your employer has the right to make you work your @$$ off for them. You have no rights as an employee. It’s a Red State thing. Google it.

But that’s enough politics. The moral of the story is Ann’s now retired, ready or not, thanks to the greedy, heartless fucks she used to work for. And as much as I’d like to be retired, I have at least another year and a half, just so we both have affordable health insurance. Talk about being held hostage by employment…

Somehow this moved away from the closet lighting and turned into a “What’s Next” focused on getting the rest of the stuff from the other house out here. Since I mistakenly published this post before I even had it all together or any pictures added, I hope you’ve been patient enough to follow along as I typed and updated it.
If not, no apologies necessary. I’ll get this finished soon enough and probably move the discussion about storage and whatnot to it own post. Stay tuned.

 

No Rest For The Wicked

I originally debated whether to post this publicly at all. I wish I had more progress to report in this post, but we’ve been otherwise occupied with all sorts of “distractions” we’ll call them. We work all week, so that leaves us just the weekends to get things done. Let’s just say we haven’t had a weekend to ourselves for at least a month now.

Every single weekend there’s been something else that needed done, and not here on the Barkyard. Not even here at home. It’s not all bad news, but not much progress has been made, even though we’ve had many unrelated accomplishments. I will warn you death is involved, so turn back now if you’re squeamish and not so inclined to hear about it.

When the doctor gave mom six months to live, six years ago, we pretty much knew he was only looking to enrich himself, convincing her she needed a bunch of expensive procedures to extend her life to avoid his “death sentence”. Mom became a nurse in the “doctors are Gods” era, never questioning him, even though we tried to convince her otherwise.

In My Time Of Dying

If you’re familiar with healthcare decision making, the question of quality vs. quantity of life is a prime concern. Mom went into Hospice care rather than undergoing surgeries she likely wouldn’t have survived. That damn doctor even tried to convince her to have a procedure that he and we already knew would shutdown her kidneys! Again!

Not only was the doctor wrong, but so far from right that mom proved his prognosis complete bullshit by outliving his prediction of months to live by many years. Regardless, by the end of May mom’s time was up. She was able to pass away peacefully, at home, in her own bed, not tied to a bunch of machines in some sterile hospital environment, all alone.

I got the call early Saturday afternoon that mom had passed. Sunday we were on our way to my parent’s home in Palm Bay. Both my brothers were already there, taking the red eye flight, arriving there about the same time Nick and I left home that morning. Hospice had already taken mom yesterday. There’s no reason to hurry, but at least we’re there for dad.

Chris and Nick
Chris and Nick
Nick, Cindy, and Matt
Nick, Cindy, and Matt

Arrangements Were NOT Impeccable

Nick and I spent all of our bereavement leave travelling back and forth to mom and dad’s and the funeral home. That first day was entirely wasted! Only dad needed to be there to sign paperwork. “Little Miss Vague” didn’t think the details important. Another day for mom’s final viewing, driving through the worst storm we’ve ever been through! What a day.

Driving four hours just to spend ten minutes at the funeral home wasn’t fun. Having to do it AGAIN because of some stupid girl’s vagueness was ridiculous. I say girl because she doesn’t possess the maturity to be called a woman. The funeral home certainly demonstrated they couldn’t care less about us, giving a clueless little bitch a role she isn’t qualified for.

“Little Miss Vague” certainly demonstrated she really couldn’t care less about us either by laughing and joking with the receptionist at the front desk while we paid our last respects to mom in the next room. Like I said, she isn’t mature enough for the role she’s been asked to fill, let alone qualified. Just a stupid, clueless little bitch.

For The Living

At least the four hour drive to mom and dad’s and back wasn’t a waste. Chris and Matt were there, pretty much what’s left of our immediate family. Ann had to stay behind to take care of the dogs, both ours and Nick’s. Courtney had the option, and was originally going to come with us for mom’s viewing, but had second thoughts and decided not to.

When Nick and I arrived at my parent’s house, Vitas (mom’s hospice provider) was already there to remove their equipment, like the oxygen generator and mom’s hospital bed. When they were finished, the task of arranging for the living began. Dad was heartbroken, his partner of more than 64 years now gone forever. Time to get things squared away for the living.

We’ve always joked that my brother Matt is the “White Tornado” because of his energy and dedication to making sure things are clean and organized. He moved furniture, swept, then mopped floors, making sure dad had a clear path without tripping hazards or obstructions that could cause a fall.

For now dad’s still making it happen and still able to get around with his walker, but he’s also now one life changing event away from needing constant care. We picked up mom’s ashes last weekend (as of this writing) and took our last road trip with her to bring her home. Dad seems to be doing better now. Time will tell. It’s yet another waiting game.

New Life

Not so much about starting a new life as starting a new chapter in life. We’ve also been busy helping the kids, Courtney and our son-in-law Esnel, move out of what used to be our home of twenty years, and into their “new to them” house. It’s Esnel’s mother’s house, and it will now become theirs, as she passed away not even a year ago.

There’s a whole ‘nother story there that we won’t go into. Let’s just say that making their new house into their home is going to take some work. Another weekend devoted to helping the kids donate all Ana’s belonging to the Christian Sharing Center to those less fortunate. Now the real work begins…

Cleaning. Painting. Wiring. New ceiling fans. New laundry equipment. You name it, everything necessary to move in and make it their home. But that’s yet another weekend dedicated to other than the Barkyard. Not complaining, just sayin’.

You can imagine what the rest of the wiring looks like
DIY Wiring That Needs Removed

Another weekend to go pick up used laundry equipment 45 minutes away, then transporting it all the way to their new house, at least another 45 minutes from there. Then the half an hour drive back home. They needed something better than the miniature, all-in-one stacked unit that may be good enough for several towels, but not much more.

The motivating factor behind all this is the sooner they’re moved out of the other house, the sooner we can list it on the market, and add the proceeds of the sale to our retirement fund. I still have the remnants of my long lost HO scale empire that spanned two rooms looking for a new place to live. And three motorcycles in the garage that need a new home.

Rats!

That’s right. I said rats. At least a dozen of them having a party in our Barkyard! I’m sitting here one night in data central working on the casting mold design for the switches and look up at the surveillance system monitor to see not one, not two, but nearly a dozen rats running around the Barkyard!

Up and down the massive oak tree trunk. Out from under the house to the corner of the deck. Then beneath it. Then out from under the other side of it, and back again. It’s freaking me out! I haven’t seen any rats for such a long time that it doesn’t make sense that we now have so many all at once. Not sure what happened, but I’m not pleased at all.

The only thing I can think of is they recently cut down most of the trees across the street all around the high school, dislocating countless squirrels, and most likely these rats too. All I know is it’s time to order more rat traps. And poison. Well, not exactly poison, but the stuff that swells up inside them until they literally explode from the inside out.

So far I’ve sent six of them to their graves, four of them in traps, two of them bloated and barely able to move until they passed. Folded one in half, and feet away from where the trap was set. Like I said earlier. Death is involved. Haven’t seen any of the remaining “dirty dozen” in over a week, but that doesn’t mean they’re all gone. Yet.

A Break In The Action

Today is the first day of the first weekend I haven’t something else that needed done for somebody else! Finally I’m able to do something for the Barkyard! Today is the first day of my nine day staycation! The entire week of the Fourth of July, bookended by both weekends. And I’ve done a number of things that needed done for quite a while now.

Like updating this post for one. Cleaned up all the rat droppings on the garage floor and arranged things so there aren’t a tripping hazards everywhere I need to step. I wanted to do that last weekend but had to take my last road trip with mom to deliver her ashes to dad’s. Then had to help move the kids “new to them” washer and dryer to their new place.

So I actually didn’t feel guilty spending time to sync the computers as well as update to the drive synchronization web page I created to help me keep track of everything. Imagine having four different computers, all with their own version of things I’ve worked on over the past few decades.

Some are broken into pieces and spread over different drives because one drive large enough for all of it didn’t exist at the time. I lost a considerable amount of that history from 2012 to 2014, with no backups. Mainly family photos and renovations at the other house. I have a total of six photos from 2014. Sad.

Obviously needed a better backup plan. Along those lines, that web page tracks three of those computers. I may even add the fourth. Eventually. As I ran the comparisons of areas that change frequently, I added the common ones I usually keep in sync across all three computers. Essentially a redundant backup. Next step is identify single point failures.

Nice Slice
Nice Slice. You Should See The Fan.

Broken Into Pieces

Speaking of broken into pieces, I about sliced my finger off, breaking a couple blades off the new computer fan I just installed in the old computer in the process! Ouch! Those puppies are SHARP! Well now I have a deep slice in my fingertip, bleeding everywhere, and a new fan that needs replaced. Again.

Things went from a periodic bearing growl from the old fan to increased volume from the increased airflow of the new fan to shake, rattle, and roll from the imbalance of missing blades! I was in the process of looking for the model number of the power supply fan and reached in the open case to lift it without thinking these things were dangerous.

I don’t know how many times in the past I’ve stopped a cooling fan with just my fingers without a thought of getting injured. These things aren’t generally that powerful and it doesn’t take much to stall the motor. Not these new ones! They run faster, with more torque, and knife edged blades. Talk about a recipe for disaster! Lesson learned.

Oops. Missing Blades.
Oops. Missing Blades.
Sharp Blades Cut Into Each Other. And Me.
Sharp Blades Cut Into Each Other. And Me.

Rats! Again!

I hadn’t seen any rats for weeks after the initial culling, but tonight they’re back for a reprise, what looks like the remaining half dozen I failed to kill the first time around. But this time I’m seeing smaller ones too, like the size of mice. Even worse, I’m seeing mating action to make even more of the little bastards!

I still have a number of traps strategically placed under the corners of the deck where the rats like to scurry up into the slots in the concrete post bases on either side. But even though they’ve been tripped and reset time and time again, still nothing in them! I thought maybe we’d scared them off. Nope. Need a better mouse trap…

Nick had sent me a Facebook link to some contraption on a Facebook group as a starting point, but of course you have sign up for the group and a wait for a moderator to add you. I don’t mind that as much as jumping through their hoops and answering their 20 questions only to be ignored. Fuck them. Didn’t really want to join their fucking group anyway.

The gist of it is an ammo container from Horrible Freight, modified with two holes cut in either end. The idea is to place yummy food just the other side of a larger opening with a hardware cloth mesh blocking access to the enticing bait just the other side of it, forcing them to the other end which leads to the trigger of a trap just inside it.

Death Trap
Death Trap

Death Trap

My first thought is for all the time and effort to make the modifications to a bunch of these ammo boxes, the time is better spent designing a 3D printed solution that’s ready to use hot off the build plate. Time to switch gears from the switch casting design and focus on a new, more deadly approach. We’ll call it “Death Trap”.

I have the proof of concept prototype printed within a day. The second generation versions are geared toward chamfered edges and glue in mesh pieces. Printing the mesh in place added hours to the print time, so the second gen uses a separate mesh that takes maybe 20 minutes to print and glue in place.

I even added an embossed “Death Trap” moniker to the cover. But even with the gen 2 mods, the box takes ~12 hours to print and the top another ~8 hours. Basically a day per Death Trap. Even worse, there isn’t enough filament on a single spool to print two entire Death Traps! There’s roughly 330 meters of filament on a 1Kg spool, a little over 360 yards.

If the figures are to be believed, the top takes 71.46 meters and the box another 107.56 meters. Doing the math, that’s 78.13 and 117.53 yards, respectively. In any case, twice that is more than 330 meters, at a little over 358 meters. I just bought four spools of white and I’m already down to one after printing four Death Traps!

Prototype Death Trap Base With "Tree" Supports
Prototype Death Trap Base With “Tree” Supports

Double Trouble or Death Trap Jr.?

At first I tried simply halving the rat sized version into a mouse sized version, but it ended up being slightly too small. Another hastily designed prototype hot off the presses, er, printer, lead to a second generation with the same features as the rat sized version, i.e. beveled edges and glued in mesh. Even a top with the embossed “Death Trap” logo.

So now both printers are hard at work printing Death Traps, the new one the large rat sized version and the old one the mouse size versions. But half sized means one eighth the print volume, so the mouse sized versions take only a few hours each. For comparison, the top takes only 18.61 meters and the base just 22.93 meters.

The Death Traps are specifically designed around the dimensions of the Victor M035 Mouse and M205 Rat traps. I originally printed the mouse versions in black, but it appears just the heat from sunlight is enough to deform them. New ones in white are coming soon.

So far, they’ve caught zero rats or mice. Sadly, I did managed to snap a squirrel though. No more leaving them set them during the day. In the past we may have gutted and dressed out that squirrel for a meal, but these Florida squirrels are tiny compared to the ones I grew up with in Ohio. He’s on his way to the dump or incinerator with the trash pickup.

Taking The Win(s)

While I may not have caught all the rats, at least i caught half of them. Still wondering where they came from and why such a large number of them? At this point I’m taking the win. From the research I’ve done, rats are leery of something new to the environment, so it may take some time after introducing the Death Trap for them to get acclimated. Time will tell.

Another win I’m taking is the week off for July 4th along with both the weekends surrounding it. Well, at least the weekend before. The Saturday of the weekend after was helping the kids move most of their stuff to their new digs. But that was the only big interruption of progress.

The biggest recent win for me by far is getting the old Tevo Tarantula Pro 3D printer back online and cranking out the prints. When I bought the new, bigger one to replace it, it promised to be faster, but the old one continues to run circles around it. I thought I pushed it to its limits before, but accidentally set it to slice even faster and it still keeps printing!

Fixing The Floor (Again)

I was finally able to get the plywood floor of the office sliced in half and properly supported. Because the actual office floorboards are the original porch decking, they slope toward the back wall at ¼” per foot, for a total drop of 2″ over the nearly 8′ width. I placed a 4’x8′ sheet of ¾” plywood over it, supported in the middle by 1×4 and a 2×4 at the back edge.

Since the porch porch has settled of the century the house has been here, and continues to settle, I overcompensated a bit, just in case. The first 2′ of the 4′ width of the plywood sheet is raised ¾” by the 1×4 and the remaining 2′ another ¾” for a total of 1½” by the 2×4.

The problem was both supports shifted away from where they originally started out and the plywood became “spongy” and “bouncy” and anything sitting on the plywood bounced right along with it. I didn’t dare stack anything for fear of it toppling over when I walked on it.

Nick gave me his battery powered circular saw that made quick work of it. That is, once I had everything off the plywood, the carpet pulled back, and the centerline measured and marked. Why cut it in half you ask?

Better Than Ever

Because it’s much easier to lift out half that sheet of plywood, leaving the desk and computers in place, then place the supports where they belong and fasten everything together. With that done and the carpet back in place, now it’s solid as a rock, just like I wanted it to begin with. Better than ever!

Now I want to extend the areas under my desk and off the end under the work cell so everything is at the same height. It’s bothersome having the ¾” plywood just end where my feet hit the floor under my desk, with a similar situation under the work cell. But that’s a problem for future me as they say.

We cleaned out my closet, and the only thing I kept was a single polo shirt and my motorcycle boots. Everything else is gone. And with that, I’m going back to getting things done. Time to start making room for all my HO scale stuff still sitting in the corner room over at the other house. And styrene model kits. And file cabinet. And… You get the idea.

Making Room

I accomplished a lot of the things on my list, not as much as I wanted to get done, but I never do. Making room for the most recent acquisitions in the closet was a big goal for me over my time off, and I managed to get most everything stuffed in the closet, but there’s still more to be done there.

The idea is to make room for all my bins, currently sitting on top the file cabinets, over on the cabinet at the foot of my bed where all those recent acquisitions used to sit. Mission almost accomplished. But now I need lights in the closet to see what I’m doing.

I had to take time away from that task to look into it. To that end, I feel another Lighting project coming on… I’ll spare you the details and save them for another post. When I put in the new closets, it was long past when we rewired the house, and before I tore them out the originals didn’t have electricity run to them either. Battery power it is.

Stay tuned for more updates on that and the progress of moving what’s left of my HO scale empire from the other house out here. I feel a bookshelf layout coming on… Nope. Not until we’re able to run train the the Barkyard again!

 

 

It’s Alive! 3D Printer Resuscitation

It’s official! I finally managed to get that old Tevo Tarantula Pro (TTP) 3D printer back online. It’s been sitting on the shelf with the new printer for over a year now, useless and just taking up space. With even more recent acquisitions, space is at a premium. I’m to the point where if I can’t get it working, it has to go to reclaim the wasted space.

Thankfully it didn’t come to that. But I was ready to start parting out the old TTP, either to use for other projects or to sell online. If you’ve read this post about its demise, you know it’s been the mainstay of much of our Barkyard “imagineering”. It left us in the lurch when it bit the dust.

The new Sunlu S9+ printer has been a steady source of new prints and inspiration, and continues to pump ’em out, so it’s not like we need another 3D printer. But… We already have one and it sure would be nice if it worked. Spoilers. It does work. As well as it ever did. In fact, it still has that damned offset to the right and the top that I remember!

Hot Off The Presses… er, Build Plate

So What’s The Problem?

Essentially the problem is me. At least the reason it hasn’t been fixed until now is my fault. The original problem was the wires flexing enough that the hot end heater circuit became intermittent, causing a massive clog the hot end just couldn’t recover from. Mainly because I broke everything trying to get it apart.

The reason I say the problem is me is because it took me so long to finally get fed up with the situation and finally do something to resolve it. I tried to put everything together after ordering and receiving a new hot end, back when it first failed, but was never able to get it to reliably PID tune the nozzle heating.

If that sounds like gibberish, it means that any heating related elements need to be “tuned” to function properly, without going into “thermal runaway”, a condition where the temperature continues to rise out of control. The last thing we need is a “fire starter” in the house. We’ll get back to PID tuning in a bit.

Totally Irreparable Hot End

An Incorrect Assumption

At the time, I thought the replacement’s use of inline connectors was causing too much noise for the electronics to deal with and put it aside for later. Later never came. All that needed done was to remove the those connectors and solder the leads together as one solid connection from the heater and thermistor back to the controller.

It was never a high enough priority to choose to take the time to do that. If you’ve ever taken apart the print head of a 3D printer, you’ll understand the dread of doing so. It never goes back together the same way it was before taking it apart. And it never goes together correctly the first time. Or the second. Or the third. You get the idea.

Another problem is where to work on it. Once it’s torn apart, everything has to go back together, working or not. Since I share my workspace with my work computer during the week, I’d have to move it out of the way come morning. That doesn’t leave much time to get things done at all. Starting after supper and working until midnight, maybe 6 hours.

Heavily Damaged Hot End Fan Shrouds

Where Did I Leave Off?

I decided Monday evening to try to figure out where I’d left off way back when, tearing into it after supper. First I had to sift through the “tin” of 3D printer parts. It was an opportunity to sort things together that share a common use, like bowden tube and the related push connectors, and refresh my memory of what all was in there.

I found both the old and new thermistors along with the old heating element. I don’t plan on using it since the new one’s already in place. Using the old one would require taking the heat break and hot end back apart again just to swap them. The idea is to just remove the connectors and solder the wires together.

Next is taking the print head apart. There are several parts that come together to make a complete print head. The main assembly that “contains” everything is the fan shroud with three separate cooling fans, one dedicated to the heat break, essentially a heat sink with fins that it screws to directly. The two others on either side to provide work cooling.

The heat break has a cooling fan so it doesn’t melt the end of the bowden tube or the filament. It’s meant to provide a path to guide the filament to the hot end and nozzle. The hot end, with its heater, thermistor, and nozzle fits into the bottom of the heat break. The hot end is where the solid filament is turned into molten, oozing plastic, and forced out the nozzle.

Heat Break and Hot End Relative to Print Head Fan Shroud

Making Quick Work Of It

Because the hot end parts use connectors, it’s easy to disconnect them and move them out of the way. The connectors are snipped free and the wires stripped in preparation for soldering. Turns out the thermistor that came with the replacement hot end is the wrong one! Well, let’s just say it wasn’t the one the firmware was expecting.

In general, the type of thermistor and its characteristics are “baked” into the firmware when it’s built, at “compile time” as they say. There’s no way to change it once it’s built and loaded onto the controller short of changing it, rebuilding it, and reloading the new version. When I first got it, Nick was the one who built the firmware. Not sure where the source code is now…

After much searching on the interwebs, I found a WordPress page dedicated to the TTP, and true replacement thermistors meant for it listed there. I ordered a set of ten, just in case the original is bad. They’re also replacements for one of Nick’s printers as well. They come with a 1 meter pigtail, so my thought is I’ll just dress one into the harness.

Old Thermistor, Far Left, Out of Focus and New Heating Element Wiring, Center

Change Of Plan

Doing anything with the harness looks like it would be a nightmare. Change of plan. I’ll just use the old thermistor. After all, as far as I know there was nothing wrong with it. I just snipped it out of the circuit back then when I found the predrilled hole for it in the replacement hot end was bigger than the original.

After some fiddling with it and the old hot end I discovered that predrilled hole in the original was deeper than the thermistor was inserted, as if it was meant to rely on the heat being radiated and not conducted through direct contact with it. There was no thermal paste or any other means of conducting the heat from the metal of the hot end to the thermistor.

Thankfully getting the old thermistor in place is as simple as inserting it into the predrilled hole and clamping it in place with the original screw and washer. Soldering the wires back together takes some “fixturing”, but with the help of the “third hand”, I made quick work of it. I even remembered to put the heat shrink on the wires before soldering them!

New Heating Element Wires Won’t Accept Solder?

Make That Change Of Plans

Happy with the relative ease of restoring the old thermistor to the circuit, it’s time to tackle the heating element. Now I know why the thermistor was easy… Because the heating element is refusing to cooperate. Not so much the element itself as the wires connected to it. There’s no amount of flux or heat that will allow the solder to “wet” them!

Now I know why they had connectors! Not sure if it’s aluminum or steel wire, but you can’t get solder to sweat onto either of them. I’ll never understand why any electronics manufacturer would use anything but copper wire. How much money did they save? Those connectors, crimp terminals, and assembly had to cost more than copper.

When I saw the silver color of the wire, I just assumed they were tinned copper. Wrong! As much as I wanted to avoid taking the hot end apart, looks like I’ll have to now. There’s no other way to gain access to the heating element. And just as I feared, I stripped one of the tiny 3mm grub screws in the process!

Print Head Assembled and Wires Neatly Dressed

What’s In The Big Prize Stash?

Of all the small, metric hardware we have, grub screws aren’t in the inventory. Then I remember Nick gave me one of his old hot ends from a different printer. Maybe it has one? Score! It’s a smidge longer, but it should work. Problem solved. Time to solder the old heating element in place.

The red, braided cover is more difficult to “strip”, but the flush cutters manage to cut it back far enough to strip the actual insulation. Lighting strikes twice as I remember to install the heat shrink before soldering again! Time to shrink things in place with the battery powered heat gun.

After struggling with getting the new heating unit out and installing the old one in its place, it’s time to put things back together. That’s easier said than done, but a LOT more than I thought would get done in one evening! It only takes three tries to get everything back together and ready to test!

Giving The Hot End “The Boot”

Third Time’s A Charm?

The first try is a bust when I realize the hot end interferes with one of the work cooling fans in the shroud. Let’s loosen and strip those grub screws some more! The next try is because I didn’t have the thermistor clamped down enough and it just pulled out. Let’s loosen and strip those grub screws even more! Third time better be the charm!

By now I’m using the small needle nose pliers to “cinch” down those grub screws that last little bit. I didn’t realize it at the time, but the nozzle on one of those work cooling fans was cracked and falling to pieces. I zip tie what’s left of it together enough to get the screws in place. Until it cracks and one of the screws falls out!

The other nozzle was totally deformed into a crescent moon shape, pretty much pinching it off. A little work with the heat gun and a screwdriver opens it back up, albeit haphazardly and crooked. I searched for replacements online, but don’t know what those things are called. It will be good enough to test with and at least they’re accessible.

Ready For Initial PID Tune and Testing

The Big Test

Getting everything connected and plugged in and turned on is a big step toward testing the repair, but first things first. Time to do a PID tune on the nozzle heater. This is where the hot end replacement failed the first time around. Had I known then what I know now, this thing would have been working a lot sooner.

So what the Hell is a PID tune? PID is short for Proportional, Integral, Derivative. It’s actually the parameters were tuning for the heating control system. Proportional is exactly what is sounds like, a proportional response to the heater given feedback from the thermistor.

The Integral part is like a long term averaging, so as not to overreact. Derivative is more responsive to the rate of change of the thermistor feedback, the faster the change, the faster it responds. The three taken together allow for a fast response to a given input, without overshooting the value, with small excursions around the setpoint.

Amazing First Time Nozzle Temperature Curve

Absolutely Amazing

It’s incredible how close the thermal response is to ideal the first time through tuning! It’s like this thing was never offline. Without going into too much more detail, many 3D printers use Marlin as the base source code for building the printer’s firmware. The printer is commanded using GCode and Marlin (“M”) commands.

For example, to start the PID tune process, an “M303” command is issued. It takes parameters, like which heating element to tune, what target temperature to use, and how many cycles to run before completion. In our case we’re tuning the nozzle heater, so the command would be: “M303 E0 S210 C10”.

The end result is a new set of parameters to replace the existing parameters with. This should be done any time the nozzle assembly is modified to account for any variations or changes in the heating characteristics. In our case, this becomes: “M301 P40.10 I5.44 D73.92”, where P is the Proportional value, I is the Integral value, and D the derivative value.

The Moment Of Truth

One last thing to do, extrude some filament and verify the nozzle is heating as expected and no thermal runaway occurs. I set the controls to extrude 50mm and it’s looking good! I command another 50mm and… Schmidt! It’s extruding alright, AND PUSHING THE HOT END OUT RIGHT ALONG WITH THE FILAMENT!!!

That’s all she wrote for tonight. The printer is on the shelf and out of the way for work tomorrow. I’m not taking it all back apart tonight. Without new grub screws to replace the stripped out ones, it wouldn’t make any difference anyway. There’s no way to fix this until the grub screw assortment I ordered gets here Wednesday.

Still, it’s very encouraging that everything else is working. None of those problems from the first time around. If there’s a lessons learned from all of this, it’s don’t trust it when they say it’s compatible with your particular brand. It’s not. Another is hex keys and screws are easily stripped with excessive force, especially when they’re small.

A Two Day Wait Just For Two Set Screws

The Suspense Is Killing Me

I hope it lasts… But seriously, the wait for the grub screw assortment to arrive is torture, not knowing if this is really going to fix the printer. It arrived early in the afternoon, so I was able to get right to it once I was done with work for the day. I’ve had this thing apart so many times now I could do it blindfolded. Not that I’d want to mind you.

No way to know if pushing the hot end out caused any other issues until it comes apart. A close inspection reveals everything is clean. For whatever reason it’s giving me fits trying to get that hot end back into the heat break, but in the struggle, I realize the “flat” on the hot end connector appears in one of the grub screw holes. Hmmm…

I wonder if that’s what caused the loose fit? If that flat isn’t close to perpendicular to the grub screw, it may seem tight, but won’t be. Because it threads into the hot end, it’s at a slight angle when the hot end is square to the heat break. This time it gets aligned with the flat and the grub screw tightened down along with the other one.

Drum Roll Please

This print head has been apart and back together so many times, the bowden tube is fighting me now. The way the push in connectors work is they “bite” into the outside of the tube using some type of one way clutch to allow inserting the tube but preventing it from being pushed back out. Only depressing the release ring will allow it to push back out.

Over time, the repeated insertions leave a permanent “ridges” that refuse to push back through that clutch. The only way to fix it is to replace the bowden tube, which is exactly what I did. The connector threads into the top of the heat break and holds the end of the tube tight against the top of the hot end so no molten plastic can leak out.

The old one was a bit short anyway, so now’s a good time to replace it. Filled with new confidence, it’s time to test this latest incarnation. First a PID tune, then the extrusion test. It works! The hot end stays put and I can repeatedly extrude filament! No movement of the hot end whatsoever! SUCCESS!!!

Back To Basics

The next hurdle is to adjust the Z offset, that is to say the offset from when the BLTouch sensor detects the build plate and the nozzle contacts it. This has always been a hassle and a long term struggle to properly adjust that distance. Whether the first layer adheres to the build plate or not hangs in the balance.

Too much and the nozzle crashes into the build plate. Not enough and the first layer just sticks to the nozzle and not the build plate. Somewhere in between is the balance where prints just stick or they don’t. It’s a painful process of cancelled prints and minute adjustments and more test prints.

Until this time. I actually found an article online on how to precisely measure this offset in one operation. Without going into too much detail, the secret is to turn off the “soft limits” that stop the head travel before actually reaching the desired adjustment. That’s the piece of information I’d been missing this whole time.

Probably The Best Test Cube From This Printer So Far!

The Old Standby

With the Z offset within a couple hundredths of a millimeter, it’s time for a test print to see if the printer really works. The good old 20mm calibration cube is the best choice. I don’t want to have to reslice it right now, plus I know it’s worked on this printer in the past, and it only takes 25 minutes or so. Off we go.

I’d forgotten how much louder the stepper motors are on this printer. Definitely spoiled by the silent stepper drivers on the new printer. Not sure what’s different this time around, but it’s the best test cube I’ve ever seen this printer print! No elephant’s foot. No layer shift. None of the artifacts I seem to remember in the past.

I AM ECSTATIC! This is beyond awesome. This is beyond belief. I cannot believe the old printer is back online and working as well as it ever did! I cannot believe I did not do this this sooner! It’s May of 2025 and the printer failed February of 2024. Considering this all came together in a couple evenings, I should have made the time long ago!

A Few More Tweaks

I planned on getting to this point a long time ago. I even bought a second Raspberry PI 4 to control it. It just sat there this whole time, unused and ignored. Thankfully it was already configured and ready to go when I needed it. There’s only one thing that still needs some work. The PI cam. It’s oriented in the portrait mode.

Recently I figured out how to tie into the camera stream using the browser and VLC. So I was a little confused when the Octoprint version was correct yet portrait mode but the streamed version was rotated 90°! A little more digging and I figured out how I managed that.

There’s a setting in OctoPrint for “Classic Webcam” that allows flipping both horizontally and vertically and well as rotating by 90°. Now they’re both rotated 90° and portrait mode! Then I realized the PI 4 controller for the new printer is standing vertically compared to the old one that’s still horizontal and it dawns on me it’s the internal camera mount.

OctoPrint Camera Settings for Stream, Snapshot, and Time Lapse

More Tweaks

The see through case for the PI 4 only has two mounting holes, not four. The problem with that is if the orientation is wrong, i.e. portrait mode in this case, then the only other option will still be portrait. The case itself must be rotated the extra 90°. I designed a new mount for the case back then, but only printed one because that’s all I needed at the time.

So that’s the first real print job for the printer, printing its own vertical PI 4 case mount. I used the original sliced version, but soon regret that choice once I remember the problems it had printing the first time. Not only did it have a brim that didn’t stick to the build plate, the small hole features also cause headaches.

Those small features invariably end up sticking to the nozzle and not the build plate, which ends up grabbing other parts of the print and ripping them free from the build plate, dragging the whole mess along until finally cancelling the print. In this case, it’s something even more stupid, the filament “jammed” on the spool and caused it to stop extruding!

After spooling out nearly 10 meters (~33 feet) of filament, I finally manage to untangle the snag on the supposed “non tangle spool”. It’s hard to describe, but once the tension is released from the filament, an entire layer springs loose and somehow the other wraps manage to overlay the loose end. This traps it beneath them once tension is restored.

Unfortunately, the more tension, the tighter it pulls down over the end being fed to the extruder. May as well tie it in a knot at that point. The extruder actually pulled the spool off the counter, filament dryer and all! The extruder drive gear nearly ground through the filament when it stopped spooling out.

With the rewound spool in place, I extrude 200mm of filament, 50mm at a time, to ensure it didn’t cause a clogged nozzle or other issues with the extruder. Not sure why this particular spool of white PLA is so snag prone, but it’s jammed twice now, once for the new printer and now once for the old one.

Even More Tweaks

Back to the drawing board, or in this case, SketchUp. Once I finally found the original design on disk, I made a quick change to put down a solid first layer, then draw the small features on top of that. If the first layer isn’t sticking, there are other issue that need addressed. But this trick has worked for me on other designs, e.g. Run In Stands.

The nice thing about new STL is I can slice without the brim. In fact, I don’t even need a skirt! Another trick I learned from the new printer is how to add enough of a “primer line” to the startup GCode for every print. Essentially it moves to the edge of the build plate and extrudes two thin lines, side by side, enough to ensure the nozzle is flowing.

The skirt accomplishes the same task, but sometimes doesn’t stick and causes more problems than it solves. Those primer lines are just enough to gets things started. The next print is a success, but I realize that the nozzle temperature in the slicer was still set to 200°, not 210°. It’s not going to hurt this print, but I fixed it for next time.

Next steps are to glue the freshly printed PI 4 mount parts together and replace the existing mount with the new one. I’ve described the process in detail elsewhere, but the short version is I use a liquid acrylic solvent to “weld” the PLA parts together, similar to styrene cement for building plastic model kits or PVC cement for plastic plumbing pipe.

In similar fashion, the best strength is obtained obtained in 24 hours, so I let the new mount assembly set up overnight then swapped it out with the old one the next morning. I had forgotten how much I detest those mini tripods I bought all those years ago. At the time, I thought they’d be useful for my job, but they didn’t work out.

Instead they ended up here at home and holding up the PI 4 controllers for both the 3D printers. They’re study enough, with telescopic legs to adjust to unlevel surfaces, but the ball “joint” that allows the camera mount to swivel is way too loose. No matter how hard I cinch down on the set screw’s stupid little plastic handle, it ALWAYS ends up loose again!

The PI 4 Case on the New Mount on the Annoying Tripod

The Final Tweaks

Guess I should stop complaining about it since it only matters when I tell OctoPrint to capture a time lapse of a print. Even then unless I fabricate some overly complicated “Extendo Mount” contraption to hold it further away and higher off the build plate, the capture is too close. The PI camera for the new printer is an 8MP version, but the setup could be better.

The PI camera for the old printer is an older 5MP version that has problems with low light. Even with the bright office light in the ceiling fan on, the time lapse still looks dark. There may be some other settings I can adjust in the Linux OS itself, but since I don’t usually capture a time lapse anyway, what’s the point?

The last thing I want to figure out is why prints on the old printer are ALWAYS offset from the origin, the front left corner of the build plate. I would usually take this into account when slicing, but it’s not an exact science. When I was printing the “Glow In The Day” clocks, they were sized to require nearly the entire build plate and nearly impossible to adjust.

The Offending Setting Causing Those Blasted Offsets

Even more Googling reveals it’s the Cura slicer and not baked in offsets in the printer’s Marlin firmware. In fact, I tracked it down to the actual settings file Cura uses when it wouldn’t let me update the offset values. Turns out they’re not actually “offsets” at all, but rather print head dimensions to the corners measured from the nozzle.

The default print strategy is to print the first layer of copy 1, then first layer of copy 2, then second layer of copy 1, then second layer of copy 2. The sole reason for those settings to exist is to allow printing multiple copies of the same print to finish sequentially, i.e. completely print all layers of copy 1 then completely print all layers of copy 2.

Unfortunately, when  the “Apply Extruder offsets to GCode” is checked, the slicer automatically adds those printhead offsets to the actual GCode values when slicing. This is so the printhead can avoid collisions with the other print(s).  Not sure where to tell it to print each copy sequentially, but I don’t plan to use the feature anytime in the near future either.

To be sure I re-sliced the test cube and moved it as close to the front left corner as possible. Both the slicer and OctoPrint appear to have built in safeguards to avoid printing outside the edges of the build plate. Looking at the GCode it leaves us about 5mm away in both X and Y. The closest I can get is 1.999 x 1.999 away from the origin (0, 0).

Finally Figured Out How To Get Rid of That Blasted Print Offset!

The Final Tests

A quick test print of the re-sliced calibration cube shows it’s right there at the front corner. It also clearly shows the slicer settings leave a lot to be desired compared to those used to slice the earlier near perfect print. In the Cura slicer there are really too many settings to display all at once, but there’s a way to select which settings are visible.

I need to figure out what those settings were that used to visible to fix that extra buildup of plastic at the corners and the ridges where the infill meets the walls. Also looks like there was some under extrusion on that top layer. This cube looks terrible compared to that first blue one. Another possibility is this is a different filament.

Those tweaks will have to wait until after the real final test print though. Printing the PI mount was a good test, albeit a short one at just shy of an hour, but the true test is the one that takes 6 hours or more. For that we’re printing the last eight run in stands I need for the Mikado’s tender.

That calls for a new slice since the standard one I use has only six and takes more than 5½ hours on the new printer. Had to laugh when the slicer told me 4 hours! The curious thing is it took about the same amount of time to print eight of them on the old printer as it did six on the new one. Ironically, the new one is supposedly faster than the old one.

Printing The Run In Stands

There must be another hidden setting I’m neglecting because all the print speed settings are the same between the two printers. I did notice it seems like the old printer is moving faster than the new printer using the same slicer settings. Guess it’s time to push the new one to its limits just to see when prints start to fail. Maybe an overall acceleration limit?

That’s a problem for future me as they say. For now, I’m thoroughly pleased with the performance of the old printer. It’s everything it used to be and nothing unexpected. I take that back. I did run into something unexpected when trying to narrow down those offsets. The X and Y range is supposed to be 240mm, but the Y axis hits mechanical limits at 230mm?

Unexpected Discoveries

I remember when Nick and I originally put this together we had to move the Y limit switch just past the end of the one mounting screw to where is was just holding on. Maybe that center rail the print bed rides on needs adjusted away from the front panel? There may be another 10mm to be had. Hopefully there’s an extra 10mm in the timing belt too.

The X axis looks like it could go on forever. Well, at least until it reaches its mechanical limits, well past 250mm anyway. The limiting factor at this point is the flexible metal build plate, limiting the build area to about 232mm, maybe 233mm, in both directions.

I tested the Z limit of 260mm as well, but both the harness and bowden tube to the print head contact the top crossmember well before that, before 240mm anyway. I doubt I’ll ever be printing anything that tall, but if I do, that’s what the new printer is for. Its build volume is 310mm x 310mm x 400mm.

For now it’s working, and working as well as it ever did. Considering the limits of the build plate, I’m not going to take things apart just to get that last 10mm out of the Y axis when it’s more like 2mm-3mm to be had. I’ll use the big printer. It’s quicker and easier. Well, it will be quicker once I figure out the slicer settings!

Thanks for tagging along and stay tuned for the next adventure.

 

 

 

 

 

 

Adding I2S Sound

Another Project?

Yes. Another. Project. And no, it’s not yet another passenger car lighting project! I can hear you rolling your eyes from here…

This time it’s about adding sound to anything that you please using an Arduino ESP32-S3 Super mini and an I2S amplifier. But I’m jumping the gun here going on about the specifics already. Let me start at the beginning, with a little history on our “sound projects”…

A Little History

We started looking at “sound enabling” our equipment years ago. January of 2020 to be exact. The idea was to couple an Arduino and one of those “cheap” MP3 player modules as a low cost sound option. When compared to the cost of retail sound offerings available, often for hundreds of dollars or more, the motivation is obvious.

Long story short, those “cheapo depot” MP3 DFPlayers turned out to be absolutely unreliable. Nothing but junk. No amount of tinkering or tweaking could guarantee operation without having to “ruthless reset” everything. We ended up mothballing the project indefinitely. Well, at least until I could find a more reliable solution.

It was quite an effort to get as far as we did, but it left us with a reusable software implementation based on the concept of a “playlist”. The backend (Arduino) serves up the playlist in JSON format to the front end, a browser based user interface (UI), served up via WiFi from files stored on the backend.

MAX98357 I2S decoder amplifier
MAX98357 I2S decoder amplifier

New Found Motivation

Enter the idea of the I2S interface. Not the I2C interface. I2S, short for Inter Integrated circuit Sound, developed by Philips back in the ’90s for stereo equipment interconnections to share audio streams between components, both internal and external. The more I read about it, the more I was convinced this was the solution I was looking for.

Being the electronics and audio buff I was growing up, I’m surprised I hadn’t heard more about it at the time. Late to the party, I found some folks online using various I2S audio decoders in their projects and settled on the MAX98357 based decoder. It has a built in 3W amplifier, with a somewhat odd 0-21 volume range, but whatever. At least it works!

But I’m skipping ahead again. While the Maxim hardware does everything for us, it requires a LOT more horsepower from the Arduino to handle converting and the streaming the audio data to the decoder hardware. When I say a LOT more horsepower, I mean at least an ESP32-S3 (dual core) to handle the load.

ESP32-S3
ESP32-S3

Time To Order Parts

I’ve never used an ESP32-S3 so I don’t have any to experiment with. Don’t have any of those Maxim decoders either, seeing as how I’m just now reading about them. While the Arduinos I’ve been using aren’t a dime a dozen, they aren’t ten dollars a piece either. They’re roughly twenty dollars for three of these “high horsepower” ones.

The Maxim decoders are about five for fifteen dollars. The only thing missing is an SD card reader. They may make an Arduino package that has one already included, but I haven’t looked for one (yet). I found five for $7.50. So far grand total of $7 + $3 + $2.50 = $12.50! That’s not including the micro SD card to store the sound files on.

That’s an order of magnitude (10x) less than the retail price of a low end sound system! Last time I bought a 32GB micro SD card was years ago, but it was ~$7.50. So let’s say $20 vs. $200. Sold! Thinking about it, maybe there’s a version with enough flash storage onboard to eliminate the need for a card reader altogether. Depends on the number and size of the files I guess.

The next step is to bring that old MP3Player project out of mothballs and see if we can breathe new life into our aspirations for sound.

What’s Next?

Time to start working the old software into a new project to meet our needs. The old project is one of the older ones and doesn’t have any of our latest improvements, like themes and OTA progress indication. But the first thing to do is get rid of the DFPlayer stuff, then update to using LittleFS in lieu of the old SPIFFS library.

I’ll try not to get into too much detail about the software, but that’s what we’re talking about, so… If you’re not familiar with Arduino speak, the Serial Peripheral Interface Flash File System (SPIFFS) is deprecated. The replacement recommendation is the Little File System (LittleFS). This is used to read files like the HTML web files (internal flash) and sound files (SD card).

Those libraries are “built in” to the specific Arduino hardware platform, unlike some of the others we use, like ArduinoJson and I2S_Audio that perform specific tasks regardless of platform. Fortunately, this sketch doesn’t need much else beyond those and the WiFi libraries.

Eventually the code we use to encapsulate the audio functionality will have its own library, but for now it’s part of the sketch to ease debug. Thankfully most of the playlist handling code doesn’t need much modification. Really the only “major” change is implementing looping in software where it used to be hardware driven with those junk MP3 modules.

Sounds Easy Enough…

The software is already pretty close, at least the UI code is, sans the equalizer settings. The looping is “commented out” until the backend Arduino code gets updated to implement it in software. The messaging piece is already there, it’s just adding the logic necessary to emulate what the old hardware used to do for us automatically.

The neat thing about the existing backend code is it already responds to event messages from the old hardware when the previously played track finishes playing. It should be easy enough to substitute the event processing for the new hardware, tracking the current looping mode to determine which track is next, if any.

Most of the effort on the UI is getting everything updated to use the latest improvements, which involves comparing the older existing code with current versions from other projects, like OiffceLighting, LithoPhaneLEDs, and PassengerCarLighting2812. We added two new themes for PassengerCarLighting2812 recently, highlighted in the Latest Evolution Lighting post.

ESP32-S3 Super Mini
ESP32-S3 Super Mini – Small Enough For The Latest Evolution Projects

Development Concerns

While we’re talking about adding themes, that brings up another “issue” with using Arduinos, at least when it comes to uploading files to them. The Arduino IDE, with the proper uploader installed, will upload all files in the “data” folder to the flash file system on the Arduino. No problem there as long as you can find and install the proper uploader package.

Right now each and every project has to have its own “data” folder with a “themes” subfolder in it. Any change, or in this case addition, in any one project must now be manually propagated to every other project to keep everything in sync. Similarly, all the CSS and javascript files suffer the same fate. Basically any shared common files.

There may be a way to use symbolic file links in place of the actual files, but I haven’t tried it yet. Hopefully the IDE won’t have problems with the file system interface using symbolic links. If that works, it will allow one set of files to be maintained and all projects can link to that “master” set. But let’s get this deployed before we go mucking around with something else…

Some More History

Just a little more. I promise. If you want A LOT More History, I’ve tacked it on the end of this post.

We started on this latest adventure going on six months ago as of this writing. But I let myself get sidetracked with other projects, Hurricanes, etc. You name name it, I got distracted by it. Some of those distractions were acquisitions and the ensuing investigations of their installed electronics, like battery power and sound systems.

The I2SAudio project was put on the back burner for at least a few months while all that was going on. But all the basics were there and working. We’re able to play sound files stored on the micro SD card from the UI. Only dynamically building out the looping buttons based on the playlist was left to do.

Past tense. That’s done now too. That leaves expand/collapse of the playlist in the UI. I swear I have code somewhere from past experiences with a javascript/CSS based “twisty” implementation. I’m hoping that I can leverage it, but like most things in my favorite place, somewhere, it will never be found quickly nor easily.

Making More Work For Myself

Defeated by wasting time looking for it, I tried yet another internet search. Unlike the first few searches that turned up nothing useful, encouraging me to look for that old code, this one came back with a new HTML5 construct I didn’t even know existed. The <details> and <summary> tags provide a built in expand/collapse function without the need for code behind it.

At first I thought this was the quick and dirty way to get there from here. WRONG! The entire playlist tree in the UI is built dynamically from the playlist data received from the backend. Using nested HTML <ul> and <li> elements, we build the hierarchy one entry at a time. Each <li> element has a <span> that contains the actual “name” of the entry in the tree.

All these elements are given a specific CSS class to correctly render in the browser. Without going into too much more detail, it’s important to note that any selection clicks made in the UI on any of those elements in the playlist tree get “bubbled up” to the top level element, in this case the top level containing <ul> element.

Why does this matter? Because now in the javascript event handler we have to figure out which one of potentially hundreds of elements was clicked on, then backtrack and modify the CSS class of the affected element(s) to indicate selection visually. Before adding the new elements, this boiled down to one of the three element types already mentioned. And it worked. Past tense.

Why Did You Break It?

After modifying the javascript dynamic generation function to add the new <details> and <summary> elements, all of a sudden NOTHING WORKS! So here we are weeks, if not months later, still fixing the “quick and dirty” way. But at least it’s working now. Even the CSS needed modifications to work with both versions.

I commented out the old, working version of code as I progressed with the new version. Boy am I glad I did! I went back and made it selectable using a single flag to indicate whether to use the old or the new version. My thought is maybe I’ll come back to this some day and figure out how to make it all work without the newer HTML5 constructs.

So why in the world would I want to come back and redo this, potentially breaking everything yet again? Looking back at how each level of the hierarchy needs more and more of these <details> <summary> blocks, it’s apparent these were meant to hide large blocks of HMTL, most likely upper level <div> element containers, not each and every nested element of a tree.

I’ll spare you and save those particulars and details for later. At this point, the only thing left to do for the existing UI is figure out why it stops selecting down to the lowest level for all child items except the first child of the parent selection. What did you just say? A picture is worth a thousand words…

I2SAudio UI Screen Shot
I2SAudio UI Screen Shot Showing Only First Group Completely Expanded

There, I Fixed It

Well, not really. That can wait until we know this is really the UI paradigm that best fits what it is we’re trying to accomplish here. What you see is essentially an MP3 player interface, with play, pause, stop, next, previous, etc. There’s also a set of looping selections, based on the top level selection, in this case Genre, Artist, Album, or Track.

But those “classifications” don’t really fit either. Function type seems more suited for Steam Whistles and Diesel Horns than Genre. Not sure how to classify Single Chime vs. Three Chime, but Artist isn’t it. Road Name seems a better fit than Album for C&O vs. CN. Track may fit, kind of, but I think you get the idea.

The good thing is these classifications are all easily configurable as part of the playlist. But keep in mind for every new classification, there must be a corresponding addition to the CSS to accommodate it.  The other thing to keep in mind is they can also be directly tied to the currently selected theme settings, like the “Teal Mobile” theme used in the above screenshot.

A New Look?

Regardless, the UI is going to need a facelift moving forward. Now what that should like like, I have no idea. Guess I need to look at some of those sound systems on the market to get an idea what theirs looks like. But even then that may not be the best fit for our application.

When it’s all said and done, we have everything we need in place whenever we finally figure out what it’s supposed to look like. Most of the commercial products I’ve seen tend to break up sounds into an intro, sustain, and ending portion, stringing them together, starting with the intro, then looping the sustain part, and finally play the ending to finish up.

Not sure how “quill” will work, but that’s a problem to solve another day. I’m sure there are other “features” we’ll need to add as we go, but for now we have a reliable, extensible solution. With that in mind, I’m wondering if we have the capability to play two tracks at once.

Stuck thinking in that MP3 player mindset, I just issue a stop, then play a new track. Wonder what happens if I don’t stop the currently playing track? I did a deep dive into the library code already to see for sure what was going on for other issues I ran into, but it would be easier to just modify my code and see what happens. Probably a kernel panic!omg lol

 

A Look At The Hardware

Originally just an ESP8226 was used for the MP3Player project, more than adequate to communicate with those POS DFPlayer modules over a 9600 baud serial connection. But even that simplicity was unreliable, or rather, the modules themselves are unreliable.

Fast forward to now, using I2S audio technology, proven over decades. But there’s a price to pay when it comes to the control side of things. Beyond the extra horsepower, the full sized ESP32-S3 is a sizeable piece of hardware, consuming nearly an entire half sized breadboard. In fact, to have space for anything else, we used two of those half size breadboards side by side!

The ESP32-S3 module itself is stout enough to hold the two breadboards together once plugged in. There are only two other components required, but to be sure there was space for them AND the connections without having to run half the connections under the Arduino, two side by side are better than one.

I2S Audio Breadboard And Size Comparison
I2S Audio Breadboard And Size Comparison, “Super Mini” vs. Full Size Dev Module

The full sized S3 module is labelled with an abbreviation of the project and its last IP “triplet”. This is absolutely necessary for me to keep my sanity. When “rooting” through a box of old projects with probably a dozen Arduinos inside, it’s maddening having to plug in each and every one just to see what it’s running and what IP to use in the browser.

The two purple modules are the actual I2S decoders, one for the left channel, one for the right. Notice only one is connected. That’s because the decoder can also combine both channels into a single mono output as well. Good enough for what we’re doing. The actual formula is (L + R)/2. The mode is selectable with a single input, left, right, or both.

The blue module standing up next to the speaker is the micro SD card reader. All the audio files are stored on a 32GB micro SD card. The S3 reads the files and converts the audio to an I2S stream that the decoders turn into audio output to the speaker with over 3 watts of audio power! More than enough for our needs.

The speaker is a leftover from one of our Bachmann Ten Wheeler projects. We replaced the old tender bottom half with a new one, complete with “updated” electronics for chuff sound. Still the same tired old 9V hiss generator connected to a chuff switch… That only activates twice per revolution. Not very realistic, but at least the new red painted wheels look nice.

In any case, the speaker in the old bottom half became a “spare”. IIRC we ended up with at least three if not four “spares” this way. I designed and 3D printed the speaker enclosure, hoping to give the tired old 1W 8Ω speaker a fighting chance to sound good. It helps, but with its limited response, there’s not much else that can be done.

Something’s Different

You may have noticed a difference between the full sized S3 and other Arduinos, the number of USB connections. One is the standard Program Upload and Serial Monitor port. The other is for JTAG debug. JTAG is short for Joint Test Action Group, which defines a means of getting “inside the hardware”, essentially allowing the equivalent of attaching test probes inside the chip.

Apologies, that’s a very dumbed down explanation of a fantastic innovation in hardware development, also proven over decades. We won’t need that low level debug ability. At least, not yet. More pertinent to our discussion is which is which? The one that works is the one we’re looking for. Just that simple. The other is enabled and configured using the board settings.

The obvious difference with these “Super Minis” is their size. They’re so small it presents a problem when labelling. There’s no big metal can to stick the sticker on. Haven’t tried it yet, but probably have enough room on the back for a sticker. They also run hot to the touch. Hotter than their full size counterparts for sure. Beware.

That’s Not The Only Difference

Another difference with these S3s, and even the ESP32-C3 Super Minis, is the actual board selection. They only have one USB port, but good luck finding the correct board for your particular flavor of Chineseum. Nick had ordered a set of the C3 and S3 Super Minis and gave me a sample of each.

Even though the silkscreen on the C3 says it’s a specific type, selecting that type in the Arduino IDE board manager does not allow me to communicate with it. It also causes build errors that go away when selecting the generic ESP32-C3 Dev Module. What’s interesting is there are contact pads on the PC meant for “pogo pin” connections.

The C3s I bought have more contacts than the one Nick gave me. It’s a crap shoot when dealing with any of these “dime a dozen” Chineseum parts regardless of where they’re sourced. It would be helpful if the competition to mass produce knockoffs of knockoffs to make of profit didn’t make it impossible to get anything more than basic information, let alone good information.

That’s the nature of the beast. It would be different if paying more for quality actually worked in this case. Been suckered by that before with these things. About the only way for me to know is if they can be trusted is to order from an Amazon seller I’ve dealt with in the past that I feel can be trusted. Sometimes even that isn’t enough. Caveat Emptor.

What’s A “Pogo Pin”?

These were designed in the ’70s for testing integrated circuits and other micro circuits. Basically they’re a spring loaded pin the provides positive pressure on a mating contact pad. I hadn’t seen them is common use until using a Raspberry PI Zero. The I/O is limited on the PI Zero, but an expansion board can provide more USB connections.

The expansion board “piggybacks” on the original PI Zero, making connection via pogo pins on the expansion board that mate to a set of built in pads on the PI. These Super Minis are the only other commercially available products that I’ve seen them on.

That’s not to say you have to use pogo pins to make the connection. It’s just another solder pad, it just doesn’t have the plate thru hole. You can just solder wires directly to them, but be sure to strain relieve the wires. Don’t depend on the pad to hold the wires in place or you’ll find yourself in the situation where the pad got lifted off the board and went with the wire.

 

The Particulars

If you’re already familiar with HTML, feel free to skip over this. For those unfamiliar with HTML, it’s basically a page description “language”, a means of describing a page of text, images, graphics to a browser and how to present the various elements of the page, even dynamic elements like Data Driven Documents (D3). We use that to display current sensor data for our block controller.

With Cascading Style Sheets (CSS), we can tell the browser what colors to use, what font/size/color, whether to left, center, or right justify, etc. for every element! Javascript adds another dimension of dynamic interaction between the page and browser without the need to reload everything from the web server for every action, even override the default event handling.

We’ve mentioned a number of HTML elements used. I think the <details> and <summary> tags are self explanatory, but one item of note is the <details> tag has an “open” attribute that, when set, expands to display everything between the <details> and closing </details> tag. Otherwise, just the items between the <summary> and closing </summary> tag are displayed.

More Details

A division tag, or <div>, is a sort of container, meaning everything between the <div> and closing </div> it to be treated in a similar fashion. Generally it will have a CSS class or classes associated with it, sometimes even an id. The corresponding CSS  describes how to present these items to the browser, even whether to display or hide the entire division.

The unordered list <ul> and list item <li> tags are a means of grouping similar items together, like a list of bullet points. CSS can describe exactly whether you want bullets, squares, triangles, or nothing at all in front of each list item. Unordered simply means it’s not a ordered (numbered) list <ol> type, which has it’s own styling settings.

Each list item can have its own child element(s), like the <span>, or even another unordered list, with its own list items, in nested fashion. Each level in the hierarchy can have its own presentation style described with CSS. For example, present the highest level items with a light red background color, the next level down as light yellow, the next light green, the last light blue.

Even better, CSS can tell the browser to invert the item when “moused over”, swapping the color of the background and the font, without having to write javascript event handler code to monitor for when the mouse is actually over the item. Same with currently “focused” items. More complex CSS “selectors” can provide finer control over browser actions.

Developer Tools

If you’d like to learn more about HTML, CSS, and javascript, there are plenty of resources available online for free. For example, W3 Schools, has tutorials for just about anything you’d like to learn about coding. I find it to be an invaluable tool for HTML, CSS, Javascript and jQuery, Python, SQL, etc.

If you’d like to see what’s happening “under the hood” of your browser, try opening the “developer tools”. Each different browser has its own way to enable this mode, but in Chrome, my browser of choice, simply press the F12 key. I use it to monitor and debug my code ALL THE TIME!

Here’s where I spend most of my time when adding and troubleshooting new features. The screen shot shows the developer tools inspecting the javascript “Console” log. Starting at the top, it captures the tail end of the Connect message response from the backend, including the playlist and themes data used to build the UI presentation.

I2S Audio UI Developer Tools
I2S Audio UI Developer Tools Example For Javascript Console

Below that is the beginning of parsing the JSON message into actions and dispatching to those specific action handlers. The repeated “WebSocket.js:254” message demonstrates the looping behavior as each new action is dispatched, in this case power, then version, then volume which is dispatched to its corresponding handler.

It lives at “WebGenAudio.js:108”, or line 108 in the WebGenAudio.js file. This handler was “registered” with the main WebSocket.js handler for all web socket communication between the front end (UI) and the backend (Arduino). The power and version messages are common to every project because they all have a Power button and a software version field in the Settings.

Not every project uses audio though. All the audio related processing is contained in the WebGenAudio.js file. Similarly, all themes based processing is contained in the WebThemes.js file and again, action handling for themes is registered with the main WebSocket.js web socket handler.

This amount of information ion the console log is obviously very verbose. Not to worry, there are a number of predefined “log levels” that are turned on or off with the flip of a “switch” at the top of code. Turn them on as needed to troubleshoot then turn them off for “production” code.

Styling Tools

All the audio related styling is contained in audio.css rather than clutter the main.css file with styling only useful to audio projects. The themes module has a livery.css file to describe the various color choices available. It is included by the main.css by default, available to all subsequent styling files.

This is deliberate and part of our modular architecture. If you want it, include it. If not, don’t. Themes is really the only “baked in” choice, but if not wanted or needed, a default livery.css file can be provided or its inclusion in main.css removed altogether.

The developer tools allow you to view all the HTML elements AND their associated CSS styling in the HTML “Elements” tab, just to the right of the javascript “Console” tab. The secret magic trick to using Elements is the “select” tool at the very left of all those tabs. Click it to enter select mode, then go and click on the element of choice and it will take you to that part of the document.

If you don’t make a selection then wonder why clicking isn’t working the way it should, it’s because the browser is still in select element mode. Click the “select” tool again to exit selection mode. Don’t ask me how I know…

I2S Audio Developer Tools Elements
I2S Audio Developer Tools Elements – HTML And CSS Selectors and Properties

CSS Selector Tools

Earlier I mentioned CSS “selectors”. Essentially these are a shorthand for telling the browser, when you see this, do this. For example, we generally assign the “button” class to a button declaration in the HTML source file. The corresponding selector would be “.button” in the CSS file.

If different buttons have a different id, e.g. id=”play” vs. id=”pause”, then “#play” and “#pause” would be the corresponding CSS selectors. These are simple examples, but there are much more complex selectors available, like providing a visual “highlight” when the mouse travels over an element or dimming a button when it’s disabled.

We use these constructs and even more complex ones to transform those awful looking default “radio” buttons like like the classic car, old style radios with mechanical pushbuttons. We even override the awful “File Upload” to match all our other button styling. And it’s all done with a CSS definition. And it’s all handled by the browser! NO OTHER CODE REQUIRED.

The developer tools Elements above displays both the selected element HTML, and its associated style information below in the “Styles” window, including the selectors used to determine how to present it. You can even poke and prod values into the element style to play with various settings without having to edit, save, and reload the page. Very powerful and I use it quite a bit.

 

A LOT More History

We started looking at “sound enabling” our equipment years ago. January of 2020 to be exact. The idea was to couple and Arduino and one of those “cheap” MP3 player modules as a low cost sound option. When compared to the cost of sound offerings available, often for hundreds of dollars more, the motivation is obvious.

If I can throw together something acceptable feature-wise for a handful of dollars, it’s a no brainer. The emphasis here is a fairly limited feature set. The cheapo depot MP3 player modules are meant for one thing, and one thing only. Controlling an MP3 player with a minimum parts count.

It provides a built in amplifier with 30 level volume control to directly drive a speaker, and it is LOUD! It also has a micro SD card slot for storing the music files, inaccessible from the Arduino using a dreadfully slow and antiquated 9600 baud serial connection, and a minimal interface for standalone operation via a handful of external components. And they’re JUNK!

Originally just an ESP8226 was used for the MP3Player project, more than adequate to communicate with those POS modules over a 9600 baud serial connection. I remember owning a number of 9600 baud modems back in the ancient times, but seriously, that’s how bad those modules were to work with.

If you’ve ever lost a 9600 baud modem connection back in the day while downloading a file, and had to restart all over again when it happened, you know how unreliable they are. Same with these modules, with the same lack of warning.

ABSOLUTE JUNK!!!

That’s right, these DFPlayers are ABSOLUTE JUNK!!! After spending months on end working with these things, it was apparent they would NEVER run reliably. If there is a way, I certainly couldn’t find the magic combination of software and hardware to make them work without constantly getting into a “zombie” state.

Once they’re “zombies”, the only way to bring them back to life is a hardware reset. It appears that the digital noise from the Arduino side of things is just not conducive to reliable operation. I never tried them in stand alone mode, but then again, that’s not the mode of operation we require. I’m not building a “Walkman™”.

It wasn’t all wasted effort though. I did eventually manage to create a workable user interface built around their feature set, and some of those features are rather impressive for the price, like built in equalizer modes, e.g. Classic, Rock, Jazz, etc. Another useful feature is the looping capability. Now if they just worked…

Mothballing The Project

It was quite an effort to get as far as we did, and it left us with a reusable software implementation based on the concept of a “playlist”. The backend (Arduino) serves up the playlist in JSON format to the front end, a browser based user interface (UI), served up via WiFi from files stored on the backend.

The UI relies on HTML, CSS, and javascript to render a modern presentation. The playlist is presented in a hierarchical “tree” fashion, e.g. Genres, Artists, Albums, Tracks. The front end communicates with the backend via a “Web Socket” connection, essentially a bi-directional communication channel that “sits on top of” the HTML connection.

But unlike the HTML connection, immediate updates to the UI can be made without having to “refresh” the page and wait for everything to load, all the files served from the backend again. A “click” to play a track from the playlist in the UI is sent via the web socket to the backend, it starts playing the track, then responds to the UI to keep things in sync.

 

Gratuitous Starship Troopers Reference FTW!

Want To Know More?

If you’d like to know more about this or other Barkyard RR projects, leave us a comment! You’ll need to create a user first though. In this day and age, it seems like every grifter and con man is constantly spamming sites to the point where we’d spend more time moderating the comments than doing anything useful. We hope you’ll understand.

The only way we have to get around the spam is to ask for a verifiable email address. Until you verify your address, your account remains in limbo, so to speak. We’re not selling your data, that’s not why we’re here. We’re not “monetized” in any way. But if you’re concerned, please refer to our privacy statement.

If you’d like to see more of this type of content, please let us know. If you’d like to get a look at the sketch code or the web page code or need links to what parts we’re using or just have a general observation, please, feel free to drop us a comment. We’ll get back to you as soon as we can.

If that isn’t your cup of tea, then use the Contact Us page. You’ll still need a valid email address though, especially if you want a response! This will take longer since we have to actively moderate submissions vs. the automated user account and email activation handling.

Thanks for following along. Stay tuned. We’ll have more soon!