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!

 

Latest Evolution Lighting

This will be a combination lighting controller and latest acquisition update. It all started when I was searching for a USA Trains GP9 like the one I bought years ago. When I bought the SD40s, I also bought some spare trucks, with the idea of modifying the 4 axle GP9 into a 6 axle SD24. When I first bought the GP9, they were plentiful. But now that I want another, good luck finding one!

The same thing happened with the 2-6-6-2 Mallet. What used to be plentiful was no longer available anywhere. Perseverance paid off. I finally managed to find the Mallet, but so far, no such luck with the GP9. What I did find was a Bachmann full baggage car for both the green and creme “Pennsylvania Limited” set and the B&O “Royal Blue” set.

I was always somewhat disappointed that there were only two cars with our first B&O “Royal Blue” set, so I was really excited to see there was another car that matched them. Beyond that, the three green and creme “Pennsylvania Limited” cars were obviously matched, right down to the combination car only having the creme for the passenger half.

Royal Blue Baggage Car
Royal Blue Baggage Car

But that left the two solid green LGB coaches looking like oddballs sitting ahead of the combination car. Now with the full baggage car, it will balance them, perhaps as economy coaches? Or the three matched cars can be used for one train while the solid green full baggage and two solid green coaches can make up another train.

Pennsylvania Limited Baggage Car
Pennsylvania Limited Baggage Car

More Acquisitions?

Regardless, half of them have our next gen lighting controllers installed, and the other half don’t. In fact, the last car I installed the latest version in was the combination car. I had replaced the existing oversized battery box installation with a smaller version that fit entirely in the original 9V battery case. But let me back up and explain where I was going with that.

The 3D printed ones work just fine, but we don’t really need 11 – 12 hours of continuous operation. That means we don’t really need that size battery either. Some of them boast 2800mAH while others just 2000mAH, that is to say they’re labelled as such. Then again, I’ve seen 2000mAH 18650 cells labelled and sold as 5000mAH too.

The oversized, 3D printed battery box that replaced the original 9V battery case in the first and next gen designs was specifically designed around that battery size (654065, or 6.5mm x 40mm x 65mm), just slightly bigger than the outline of the original 9V case. So the thought is what if we can find a smaller battery that will fit, along with the electronics?

Oversized Battery Box
Oversized Battery Box

I found a number of smaller batteries that will fit in the original case. There are 750mAH, 850mAH, and 1000mAH candidates in various form factors that fit. I bought a handful of each to test with. Turns out the 1000mAH battery fits best, which is nice since it will give us the longest run time as well.

More Lighting Controllers?

The 1000mAH battery fits nicely, with room to spare for the battery monitor/charge circuit board, and an Arduino Wemos D1 mini (ESP8266). Unfortunately, I’ve had nothing but problems with them! From issues with Windows drivers not being able to upload new program versions to failure to serve the web page files reliably via WiFi once programmed.

When they work, they work well. When they don’t, which is most of the time, it’s very frustrating to say the least. Already short on time, I don’t have any extra, let alone two weeks for messing around with, “Why doesn’t this blasted thing work now?” Until the latest round of Windows updates, at least my laptop was able to communicate with their CH340 chip. But no longer!

There has to be a small form factor Arduino that’s much more reliable than these pieces of… junk. I try to keep up with the latest innovations, but with the time constraints already mentioned, can’t be as thorough as I’d like. Thankfully Nick found these “super mini” versions of the ESP32C3 and ESP32S3 Arduinos, even more tiny, and more powerful.

The Latest Evolution Lighting
The Latest Evolution Lighting

Nick had sampled some and gave me a C3 and an S3 to experiment with after telling him my long, sad Wemos D1 story. But my hopes of having a quick fix quickly disappeared after trying to compile the code for the new C3 target. More time chasing gremlins, or in this case, yet another way of doing the same thing in the same family of parts!

More Problems?

How many different ways can they screw around a simple watchdog timer reset function? Apparently as many as the number of different types of ESP32 that exist. My code is now full of #ifdefs around every chunk of code for every different type of Arduino used!

If you’re not familiar with the concept of an #ifdef, it’s a way of including or excluding parts of the code based on whether a flag is defined or not. In this case, #ifdef ESP8266 vs. #ifdef ESP32 vs. #ifdef ARDUINO_ESP32C3_DEV vs. #ifdef ARDUINO_ESP32S3_DEV vs… You get the idea.

After yet another week of fumbling around and refactoring code I was no closer to anything that worked. The lighting controller is based on the FastLED library for the addressable LED strips. Without getting into too much detail, it forces the user to declare what Arduino pin to use at compile time, meaning it can’t be configured later, at runtime, from a config file.

After spending even more time searching issues around using the FastLED library with the ESP32C3, I found a number of different threads with people saying the C3 doesn’t have enough horsepower to handle FastLED and WiFi, saying it can barely handle WiFi! Great! After all this, I still don’t have a working model. But at least it can serve up the revised UI…

Royal Blue UI
Royal Blue UI

Squashing Bugs

Some of those folks recommend using the Adafruit NeoPixel library instead, so in the process of bringing together all the next gen and latest Arduino technology, I decided to refactor our LEDInterface to add yet another type that uses NeoPixel instead of FastLED. But even after the switch, still nothing! I’m beginning to think I’m cursed.

I added reading pins and such from the config file as well. In the process of debugging why it couldn’t correctly pull the default color, I stumble across the issue. Rather than duplicate code, I decided to share the piece that converts a CSS string color value into the red, green, and blue components to set the LEDs to…

Except it always returns black when using the hexadecimal #rrggbb form! For example, the color of the amber glow of those kerosene lamps is coded as #140600, i.e. red = 20, green = 6, blue = 0. But I must have missed a line when combining the two functions because it always returned black (0, 0, 0) and not amber (20, 6, 0). Yep. You guessed it. It was working all along!

Confidence restored, I even found a way to workaround that FastLED limitation of having to know the pin at compile time! You just ask for all of them, then select the one you want to use at run time based on the config file value! Another ESP32 “breaking” change was in the ledc interface, rendering all our code for the 5050 PWM LED strips useless. So I fixed that too.

Pennsylvania Limited UI
Pennsylvania Limited UI

The Latest Evolution

So when we talk about the “latest evolution”, we’re talking about replacing the already small Arduino NodeMCU 12E and Wemos D1 mini boards with these even more tiny, more powerful, “super mini” Arduinos. I’ve been working with a larger version of the ESP32S3 to experiment with I2S sound! I’ve totally reworked to old MP3Player sketch to use I2S and have a working prototype!

If you’re familiar with our “Themes” option, you may have noticed we’ve added a few new ones here. If not, they’re accessed by clicking on the Themes button, which presents a list of the various predefined color schemes based on different railroad liveries to select from. For example, a Pennsylvania Limited Green and Cream scheme didn’t exist. Until now.

We already had a B&O Gold, Blue, and Gray scheme for more modern F units, but we had to create an entirely new B&O Royal Blue scheme. Clicking the desired livery in the list presented sets it as default color scheme for the UI to use. If that sort of thing isn’t important to you, that’s fine. But it’s important to me, and it’s easy enough to add new liveries as desired.

Beyond that, early testing of the new 1000mAH battery yields more than 4 hours of operation. Compared to that, I’d say the 2800mAH markings were closer to the mark than the 2000mAH, but that frees up those batteries for other things, like sound!

I’m really excited about the latest evolution and the ability to add lighting to these Bachmann cars using the original 9V battery case. With just a few mods to add a power switch and charging port, all the electronics fit! And that’s a good thing too, because those other two Royal Blue cars still have the original incandescent bulbs, just begging for an upgrade!

What’s Next?

It would really be nice if we could recharge the battery from track power. Trying to access the charging port in the side of the battery box on the underside of the car can be difficult. I usually end up having to lift it off the track to be able to plug in the USB charging cable. But none of the passenger cars have track power pickups anyway. They would have to be added.

It’s really more for equipment that already has power pickups installed, like the USA Trains “cabeese” that still rely on the archaic 9V battery. Unfortunately, they’re internal and it takes some doing to gain access to replace them when they’re dead. Wouldn’t it be nice if that track power could recharge one of these LiPo cells instead?

But that’s a project for another day. I think I need to get the infrastructure back into running order before I worry about something like that!

Stayed tuned. More to come…

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Latest Acquisitions – Part IV

So here we are again. More acquisitions? What gives? When are we going to turn our attention to track and infrastructure improvements so we can run all this new equipment? Have some patience, we’re getting there! Slowly but surely, we’re creeping up on the improvements necessary to once again run trains. But until then, I can’t pass up a good deal.

I was a bit late getting into large scale. Too late to acquire these items I wanted when they first came out. And nearly too late to grab them now, before they’re no longer available. Period. But I’m disappointed with the choices available nowadays. That’s not to say I haven’t purchased new equipment, be it Bachmann, LGB, or USA Trains. Mostly USA Trains.

I’d love to have the opportunity to purchase another GP9, with the sole purpose to convert it to an SD24, but they’re no longer available! That alone prompted me to act when the GP38s, SD40s, and F7s became available. I’d love to buy more, but the issue becomes where to store them when not operating. Not to mention that without improvements, we’re not operating. Period.

A new heavyweight diner
New Heavyweight Diner

When Opportunity Knocks…

Fresh off my recent scores on eBay, I thought I’d satisfied that desire to fill the roster with more transition era steam power. We have umpteen Bachmann ten wheelers already. More than enough, to be honest. And I still have new drive mechanisms and shells yet to be assembled! The new to me Aristocraft 2-8-2 Mikado and 4-6-2 Pacific fit the bill nicely.

The added bonus of sound for both was encouraging. It’s fun to see these “antiquated” systems, still working, and still in use today! I’m working on an Arduino based I2S audio system to complement the motor/block controller system to replace all that antiquated electronics. But until the ESP32 version of DCC-EX is more mature and I adapt the motor controller to its specifications, that will have to wait.

For now, I’ve been “lurking” on some of the Garden scale forums that still exist, looking for ideas and keeping in touch with the latest in the hobby. That’s an oxymoron right there. Most of the folks in this scale are “antiquated”, just like the technology. And only folks that made it this far have the funds available to afford it! So when opportunity knocks…

Diner Kitchen Area
Diner Kitchen Area

Time To Join

Part of my morning routine includes reading my Facebook “news” feed. We won’t go into the political ramifications of that statement, but suffice it to say I only check in on Facebook once a day. It’s about all the “news” I can take. This particular morning though, I’m greeted by a new post on the Large Scale Central page, a new listing of an Aristocraft heavyweight B&O passenger set, including a 4-6-2 Pacific and tender!

So right away I want to know more, but can’t post until I join! The only drawback of “lurking” on a site. It doesn’t take long though and the moderators added me quickly. Quickly enough to be the first to respond to the post! That post set things in motion and led to these new acquisitions. But let’s go through the steps it took the get this new equipment to my door.

Right off the bat, the only drawback is I already have a B&O 4-6-2 Pacific #5300! I’m thinking that 3 can become an 8 real quick with one of my metallic paint pens. The number boards may take some doing too, but easily within the realm of possibility. Next are the passenger cars. Five absolutely awesome Aristocraft heavyweight passenger cars. The two coaches are duplicates, but with some renumbering, not a problem.

Another B&O Pacific
Another B&O Pacific

This Ain’t Amazon Free Shipping

Well, the name of the coach will need to change too, but… Shipping is the issue here. The price ain’t bad, $750 for the lot, but I’m thinking the shipping is going to kill the deal. At least on eBay you have an idea what you’re looking at going in. This is a total unknown. In fact, that’s how I approached the post, “I’m curious as to the shipping to 32757”.

Our first PMs back and forth are his estimates from another transaction, over $300! But he tells me he’ll get an estimate from USPS and UPS and choose the lesser unless I have a preference. As long as it’s NOT FedEx, I’m fine with whatever’s least expensive. The estimated total is somewhere between $250 and $260. So now I’m looking at a thousand dollars for something that was a deal at $750.

Now I’m wondering if I should have haggled over the price, but his reply was unexpected. The shipping came to $236.39, but he said just make it $200 for a total of $950, with an expected arrival of the day before my birthday! I thanked him for the birthday present and put the check in the mail.

Old School

Wait. What? That’s right. I said “Check’s in the mail”. I asked if PayPal was acceptable or what he had in mind for payment. His reply was “I don’t do PayPal, a personal check or bank check only”. Yep. I can’t remember the last time I wrote a check, let alone where my checkbook is. Like I said, most of the folks in this scale are “antiquated”. I even asked if he wanted a picture of the check to use his phone bank app to deposit it.

Nope. Snail mail is fine… I did manage to find my checkbook. He got my last check! Time order more? Maybe. He got my last stamp too! Definitely time to get more of those. Talking about it now, I totally forgot to get a book when I picked up my prescription at Publix yesterday. Oh well. Next time.

I was surprised that he shipped the whole kit and kaboodle without first receiving the check from me as he originally stated. I dropped the check in the mail to him, along with a letter explaining why the address and phone number didn’t match. I mean after all, those checks are going on twenty years old now. We haven’t had that landline for more than a decade, and we’ve lived here in Mount Dora at least a decade now too. Time flies…

Shipping Box, Poinsettia for Scale
Shipping Box, Poinsettia for Scale

The Unboxening

Except when you’re waiting on the package with your birthday present to yourself that is. But it gets here on time, as expected, and I am totally amazed. This packing job is definitely to be admired! Quite the work of art actually. He actually managed to fit everything into one box! And it’s all padded with precisely cut and constructed blue insulation foam inserts! Definitely a work of art.

One by one I extract each and every item, packed in their original boxes. Everything’s here. An RPO baggage car, two coaches, an observation car, a diner, the 4-6-2 engine and tender. All in the B&O “Royal Blue” livery. Time to inspect my birthday haul.

The first item is the diner. After all, he did say the sink counter was loose, so I figured I ‘d better have a look at that first. Sure enough, it’s loose and rattling around inside. Not only that, but the interior lighting doesn’t appear to work either. Time for a closer look.

The Fixening

These Aristocraft heavyweight passenger cars are somewhat complex. To get to the screws that hold the roof to the car, the car ends first need to be removed to gain access, with another set of screws that hold them to the car body. Once the roof is off, the twin power rails that line it and provide power to the four incandescent bulbs are visible, along with the spring contacts on the body that connect them.

I test the bulbs with the bench power supply and they’re all in working order. The same can’t be said for the LED table lamps in the dining area. Near as I can tell from what little I’ve found online about these cars, there’s a circuit card between the underside of the floor and the actual car bottom. And of course no user serviceable items there. The remedy is to send the car to Aristocraft for repair.

Yep. Not an option. Guess I’ll have to take my chances not screwing everything up. I decide to take the time to map out the three floor sections and create a schematic diagram of the electronics on that small, square circuit board, sandwiched between the floor and car bottom. Essentially it’s a full wave bridge rectifier and a pair of current limiting resistors.

 

Small Circuit Card
Small Circuit Card

Not What I Expected

I was thinking one of the diodes on the circuit card was either open or shorted, but that wasn’t the case. Feeding power to it in both polarities, the table lamps’ LEDs lit right up. Feeding power to the trucks, the LEDs light when the power switch is on. Hmmm… I wonder if it’s those contacts between the floor segments causing the problem? Only one way to find out.

I say the LEDs lit right up. But in actuality, the LEDs are all in series with one another. Four of them are on one floor section and the other four on another. I had to jumper them to complete the circuit to get them to light. But they did light. So everything is working. The only electrical item in question is the contacts between the floor sections.

With the necessary information collected, I reassemble the floor sections, paying special attention to ensure the contacts are in place and aren’t bent the wrong way or otherwise malformed. But even so, nothing is lit! I carefully use a jewelers screwdriver to bridge the contacts and find one that isn’t connecting, even after taking special care. Copper tape to the rescue!

Floor Segments And Contacts
Floor Segments And Contacts

Making It Work

I use scissors to cut the ¼” wide copper tape into two ⅛” pieces. Wrapping one of the pieces over the end of the jewelers screwdriver, I insert it into the gap between the two contacts. Lights on! Well, table lamp LEDs anyway. The bulbs along the roof still aren’t illuminated. After taking the roof off again and bending the spring contacts up to make contact, the ceiling bulbs are now working too.

One last issue to resolve with one of the truck pickups. Once again using the jewelers screwdriver, I identify the culprit contacts and insert the other piece of copper tape. There. Now everything works as expected. I can set the car on a piece of track and apply power to just the track and have everything illuminated.

Now for that sink counter from the kitchen prep area. I’m thinking it may look more like stainless steel with a coat of that Molotow chrome paint. Not so much though. Even so, I get out the hot melt glue gun and secure it over the two floor sections where it belongs. I don’t have much confidence in how long it will hold though since it was previously attached with hot melt glue that failed.

Sink Counter Reattached
Sink Counter Reattached

Checking The Rest

One by one I check out the remaining passenger cars. Both the coaches are missing windows in the vestibule door as well as the diner. Some are tumbling around, loose in the boxes, but in the end, two are totally missing. I use a toothpick to apply some wood glue along the top and bottom gaps of the windows I do have to keep them in place, allowing enough time for the glue to set up before reassembling.

The RPO baggage car is a disappointment. It must have been a newer model because those gawdy, awful looking 14V bayonet base bulbs and sockets just aren’t scale. The fact that they’re visible from the clerestory windows and it’s obvious what they are is just the beginning. Why they chose 14V bulbs instead of what appear to be 24V bulbs in all the other equipment is a mystery.

The engine is operational and all the detail parts are included and still in the original packaging. The only thing missing is the air compressor. All the plumbing to and from it is there, just no compressor. Thankfully the other Pacific has it and can be used to design a model to 3D print a replacement. Eventually. I’m thoroughly pleased with my purchase and can’t wait to get them out on the rails and running. Someday.

All About Me

That’s pretty much what everything boils down to. It has to wait on me to do it. As much as I’d love to have help, it’s just me doing most of this. Ann does a good job on the garden side of things, but ever since we took out the pond and the waterfall fell into disrepair, it’s been the opposite. She actually cut down the trees that had grown to just the right scale size, all because she couldn’t see past them!

And it’s not like I had a say in the matter. There one day, gone the next! Oh well. Without them to protect the bridge and abutments, those were soon destroyed by the pups too. Now we have nothing to replace that span. Nothing but a giant, empty gap remains! Working on a way to hide that pond and use it as a reservoir for a new waterfall and waterwheel driven mill off the end of the deck.

Still quite a bit of “imagineering” needed here though. Add it to the list of things for me to do… Someday. If this all sounds a bit depressing, to a certain extent it is. When most of my day goes toward making income and not making my dream railroad come true, it’s bound to be slow going. But even slow progress is progress!

More to come. Stay tuned.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Latest Acquisitions – Part III

Charging Port Behind Ladder
Charging Port Behind Ladder

Back at it again! This time it’s just a tender all by itself. I normally wouldn’t buy just the tender, but for this eBay auction, the pictures showed some unique features. The first thing that caught my eye was the toggle switch protruding from the bottom of the tender floor. Next was what looked like a reed switch, presumably to sense speed from one of the axles for a sound system.

Another feature was what looked like a charging port on the rear bulkhead, which would imply some sort of battery power scheme. Unfortunately at the time, there was no separate engine listed without the tender that may have matched up to it. Hoping there was to piece together the mystery of what lies within. Oh well, for the “Buy It Now” price, it’s worth the gamble.

The hope is there’s another Phoenix sound system inside at the very least. Battery power would be an unexpected bonus. Although this is likely all very old technology, it’s new to me. And what better way to learn about these older, no longer manufactured locomotives than to buy a few, investigate, and experiment with them?

Evidence Of Sound System
Evidence Of Sound System

Surprise!

When it finally arrived, the initial inspection revealed it was dirty. Just like the other items, it looked like it was placed in the box, straight off the rails. Not like it just sat on a shelf long enough to gather dust, this is last run outside and left to sit stored there, like part of an estate sale score or something. Could very well be. And like the other tenders, the shell came off and got a good scrub.

But not until finding a few surprises! The first is the weight. This thing is HEAVY! Next, the toggle switch isn’t the momentary on, center off, momentary on style expected, but rather just a standard, two position toggle! Hmmm… Guess that means I didn’t get the Phoenix sound system I was expecting. Not sure what to expect now. Time to get that shell off and see what’s really inside there.

Where to start? There’s a LOT more packed inside here than what I expected. First is a large, HEAVY, NiMH battery pack from Cordless Renovations. That’s connected to a small circuit board with that toggle switch on it. That’s also connected to what looks to be a three terminal voltage regulator on a substantial heat sink. Guessing this is the power supply and that toggle selects between charge and run.

Packed Full Of Goodies
Packed Full Of Goodies

Score!

From there, the power supply feeds what looks like a large interface “breakout” board with four slide switches labelled track/battery, on/off, smoke on/off, and lamp on/off. There are numerous connectors, some with something plugged in and others empty. There are a few pads labelled but not populated with any connectors at all. We’ll get into more detail in a bit.

The biggest thing of note is the daughter card, piggybacked on the interface card, labelled with a 2.4GHz FCC ID and a short, straight wire antenna. This has wireless remote control! Another big surprise is what looks like a sound card. It has the expected momentary toggle switch pigtailed to it. Could it be the volume control switch for another Phoenix sound card?

This is exciting! For the cost of a sound system or a wireless remote system or a battery pack or even just a tender alone, we get them ALL! It’s going to take more sleuthing to figure out what we have exactly, but this was more of a score than I ever expected. Is this another one of those seller didn’t know what they had items? Or knew what they had but also knew it didn’t work?

Whatzit?
Whatzit?

Many Questions

I feel like a kid in a candy shop! But now it’s time to answer some questions. My recent success with Google’s search by image feature prompted another try for that wireless remote control. It’s a 2.4 GHz Revolution Train Engineer receiver with sound! Wow. Now all we need is the transmitter. And the programming software. And Crest or Aristocraft to still be in business to get them.

The transmitters can be had on eBay, and even some online dealers still list them, albeit as back ordered or out of stock. The good news is they can be had for a price, somewhere between $150 and $200. As for the programmer and the software, that may prove to be difficult to find, let alone acquire. Unfortunately it’s one of those “need one to reverse engineer one” situations.

The next question to answer is what sounds system is this? For the first time the search by image has let me down. Time to take a different tack… Searching for Phoenix together with the patent ID labelled on the card turns up a link to a Big Sound 2K2, like the one I already have. But this one doesn’t look like it, It’s smaller and has a different configuration. Thankfully the link also has others listed.

Phoenix Whatzit?
Phoenix Whatzit?

The Search Continues

The next in line is the P5 model. This appears to have the same pinouts, but the picture doesn’t quite match the configuration of the components. It’s difficult to know for sure since the entire card is protected by a large piece of heat shrink covering everything except the connectors on either end. And there’s a piece of sticky backed Velcro™ stuck to that, together with its mate holding it to the tender floor.

Next up is the P8 and what looks to be the perfect match. Same pinouts as the P5, except this one warns that without some connection to the speed sensing input, which there aren’t, there won’t be any sound. Bummer. But it also says that it should provide background steam sounds or diesel startup sounds when idle. So which is it. Idle sounds or no sounds? Guess we’ll see when bench testing.

Looked up the battery too. That particular model is no longer available, but other styles are, so all is not lost. A more more modern lithium style battery would be preferrable to the older NiMH technology, but beggars and all that…

Bench Testing

Now to find out if it’s worth the money spent. Since the run/charge switch position isn’t labelled, it seems prudent to remove the battery leads from the circuit card and deal with it separately. Thankfully the connections are all screw terminals, labelled even. I don’t have any charging equipment for that multi-cell style battery pack, just single cell chargers, usually four cells at once.

Using the bench supply and closely monitoring the voltage and current should provide a good enough indication of charge rate and completion. The label says 18V, but it requires more like 22V before any appreciable current begins to flow. We’re talking an amp or more vs. tens of milliamps. The charging current continues to fall as the battery voltage increases. The supply voltage must be increased to compensate.

The goal is to keep the current above an amp without requiring excessive voltage. Charging is complete once the current falls to less than 100 milliamps at full charge voltage, which in this case appears to be ~22V. Without doing the math to add up cell voltages in series, we’ll call that good enough. It’s taken several hours already and should provide enough power to do some testing.

Bummer

Flipping the switch causes the battery voltage to drop from ~22V to ~2V? What is going on here? Did I somehow create a short when I broke the charging connector trying to remove it from the tender shell? Well shoot! Is it that 5V regulator? Is there something else going on with the sound card? Is the battery pack weak? Without jumping in and disconnecting and testing everything individually, who knows?

A first pass through everything looks like the charging connector is shorting the battery when switched to the apparent charging position. With that connector disconnected, the battery voltage remains the same with the switch in both positions. Maybe it just expects the charger to be plugged in before switching to charging? Dunno. Guess I’ll need to fashion a charging plug for the bench supply to find out.

Time to totally eliminate that little power distribution circuit card from the equation. The charging port is now disconnected as well as the battery leads. That leaves just the power feed connections to the Phoenix sound card and the wireless remote interface card. Thankfully they’re screw terminals as well. Time to isolate the sound card and remove those power leads too.

A Sound Success

As a precaution, even the miniature JST connector is unplugged, presumably feeding all the external triggers to the sound card from the wireless remote control. The bench supply is set to 12V. As the test leads are connected to the power wires of the P8, it hisses to life! It’s the steam startup sequence. Another working sound system. It looks to be more modern and smaller than the Big Sound 2K2 unit in the Mikado.

Rather than just jump in and try to power the wireless remote card, it seems prudent to reverse engineer that small run/charge switch card. Time to draw the schematic and hopefully get a better idea how it interacts with the charging socket. It’s the 2.5mm variety and doesn’t need the 2.1mm adapter. It does rely on the charging connector to complete the circuit when no plug is inserted.

Time to check the health of the 5V three terminal regulator. At this point, if that’s not the problem, then that leaves the wireless remote control card. Nope. Not the 5V regulator. Just briefly touching the bench supply to the battery input leads causes the voltage to drop and current limiting to engage at 10A! It almost welds the wire to the test lead clip!

Running Out Of Options

Switching to track power doesn’t seem to have any effect. That is to say, regardless of where the test leads are connected, the power doesn’t seem to get past the wheels. It seems to have pickups that connect through the wheel bearings, but with one wheel isolated from the axle, it amounts to just four wheel pickup, not eight.

A bit more fiddling reveals that the short is polarity dependent. There should be an assumed bridge rectifier to convert to the proper polarity but seems to be expecting the correct DC polarity. Turns out the track inputs do the same thing. Nothing for one polarity, dead short for the other. Guess I just managed to find the correct polarity the first time around.

Buzzed out the diodes on the interface card and they all act like diodes, none conduct in both directions. Removing the wireless card cures the short. Well, that’s that. Something’s wrong with the wireless remote card. Bummer. Glad I didn’t already spring for that transmitter! One thing left to check, the underside of the interface card, in case it’s double sided. Nope.

Fresh Fried Circuits

Throwing in the towel this time. The plug in wireless remote control card is fried. Unfortunately, it also has the motor control drivers on it, eight power transistors under a heat sink. Without it, about the only thing battery powered is the sound system. It’s a little disappointing, but I put enough of it back together to be able to do just that, battery power the sound system by flipping a switch.

It’s a good jumping off point though. This will allow experimenting with the different motor controller setups we have, only this time they’ll be built into the engine itself. Going to need some sort of full wave bridge if running track power though. Next steps would be charging from track power. That’s something I’d like to add to the passenger car lighting and the old style 9V powered cabeese marker lights too.

 

Latest Acquisitions – Part II

It had been nearly a year since we added to our equipment roster, until our recent addition of a Mikado, described in our first installment. This time around, it’s an Aristocraft Pacific. It’s as good a deal as could be found. Not as good as the Mikado, but close. It’s a little more expensive and a little less impressive, but only because it’s the early version with plastic side rods and such.

It does have the original sound system in the tender, and it still works. It’s missing the whistle and the bell, but the bell harp is still there. It does have the “cow catcher”, unlike the Mikado. The one big feature it sports is it’s in the B&O Royal Blue livery. And like its ten wheeler predecessor, it’s a bit on the wobbly and unreliable side. But there’s hope for it. It should be fine after a much needed tune up.

Being the early version, it still has the “glowing firebox” feature, no longer present on the more recent Mikado. Best I can tell, the Pacific is pre 2003 and the Mikado 2003 or later. The difference is the Mikado has an added Battery vs. Track Power switch stacked with the Motor On/Off switch in place of the glowing firebox door in the Pacific.

The Pacific has Motor On/Off on the cab floor, along with the Lighting On/Off switch, also on the floor of the Mikado. The Pacific placed the Smoke On/Off switch at the front of the engine on the pilot frame. The Mikado has its Smoke On/Off switch on the cab floor, opposite the Lighting switch.

B&O Royal Blue Pacific
B&O Royal Blue Pacific

Initial Findings

I did manage to find the manual and more information on various large scale sites. It appears to match the “Old Pacific” manual. And now my searches are turning up the ART-5400 PWM controller for use with it. Still haven’t found the “magic words” for the search to find the waveforms. But then again, that was probably a closely guarded bit of secret information (read intellectual property) when they were still in business.

I won’t go into all the details of our foray into PWM motor controllers here. It’s pretty much covered elsewhere. The long and short of PWM, for me anyway, is the annoying buzz at anything in the audible frequency range, and the lack of response from any built in constant lighting circuitry at any frequency greater than a few kilohertz.

Considering this locomotive also sports its own track powered sound system, not sure how Aristocraft managed to get the PWM concept to work, let alone together with it. It does require a fair amount of voltage before anything works. IIRC, the wheels didn’t even start turning until around 8V.

Original Aristocraft Sound Card
Original Aristocraft Sound Card

We Have Sound

It took some doing to figure out how this sound board works. When I first opened the hatch on the tender looking for a battery, not only did I not find one, I didn’t even see the 9V battery clip laying inside there on the very bottom. It became very apparent when I removed the tender shell to get a look at what was going on inside.

At first glance I can tell this is old technology, likely from the ’90s judging by all the discrete components surrounding four Dual Inline Package (DIP) style integrated circuits. One’s a quad comparator op amp, one’s a decade (÷10) counter, another’s a hex inverter/buffer, and finally a dual channel audio amplifier. I finally got rid of most of my DIP style parts recently, deciding I’d never be using parts that were at least 30 years old in any design.

Of course the first thing I have to do is look up which post is which on a 9V battery so I can attach the bench supply with the correct polarity. Let’s try not to let out the magic smoke, shall we? So with that knowledge in hand, I power on the bench supply and… Nothing. Adjusting the voltage has no effect. Neither does adjusting the current limit. What about spinning the wheel with the sensor on it? Nothing.

Or Do We?

All this is going on while trying to record a video of it, and paying more attention to that, the lead that fell off the bench supply goes unnoticed at first. Not sure what the first clue was, no current draw perhaps? With the power now connected, the faint sound from the speaker of amplified noise together with one of those old style analog bell resonator circuits, right on the edge of ringing, riding on top of the noise can be heard.

Adjusting the volume knob has the expected “crackle”, another remnant from analog days where any DC voltage present on the adjuster arm detects every speck of dust in its path and creates a loud “pop” in the speaker when it finds it. But the real payoff comes from spinning the wheel with the sensor on it. The bell comes to life, then the chuff, chuff as the wheel spins faster.

It does manage to make reasonable bell, chuff, and hiss sounds, but will be replaced once the I2S sound sketch is up and running. The short exposure to that Phoenix 2K2 card spoiled me. It’s less than half the size of this thing, makes much better sound, and can be controlled simply by connecting external reed switches or programmatically via DCC or other means. And even that one’s obsolete!

 

Does It Run?

Jumped the gun describing the sound system first though. Once the tender’s open, it’s obvious more research is required. Testing out the engine came first. I set it on a short stretch of track and connected the test leads from the bench supply. It does run, if only for a short time before it runs off the end of the track. Reversing the polarity sends it the other direction.

So it does run, but how well is unknown until the first set of run in stands is finished printing and assembled. It takes six for just the three driver axles. Those together with the other ones I already had printed and assembled should be just enough… If the mix matched colors isn’t an issue. That set took all but the last one of the roller skate bearings. Time to restock those and the other hardware.

It probably wouldn’t have taken as long if the assembly steps hadn’t been recorded as well, but at least they’re finished. Once on the run in stand, it’s obvious this has a lot of slop designed in, most likely for tight radius curves. There’s at least a quarter of an inch (~6mm) slop side to side in each of the driver axles. Couple that with the middle axle being driven only by the plastic side rods and it’s a wobbly ride!

 

Death Wobble?

Don’t know if it’s “death wobble”, but she’s certainly a rockin’ back and forth and side to side! With a slight tug on the cab the wobble is tamed somewhat, but not entirely. While the first and last axles are physically linked together by a shaft to the motor, that middle axle is free to “float” between the side rod links. There are two of them, not one solid single side rod like on the ten wheelers.

One link is connected between the drive pins of the middle and rear drivers. The other connects to the that link and the drive pin of the front driver. The connecting rod from the piston and cylinder shares the middle driver’s pin with one of the side links as well as the arm to the valve rod. The sector arm rocks back and forth around a centered “Johnson bar” with the valve rod action.

That’s the extent of valving action. I’d like to draft up a CNC design to mill out metal side rods and operational valve links with prototypical reverser action. Unfortunately, the Mikado suffers the same valve action limitations with rigid cast plastic in place of the expected moving mechanism. Just now thinking about, it may be possible to borrow valve parts from the ten wheeler replacement mechanisms. Hmmm…

Saving The Best For Last?

More like saving the boring for last. The first installment of this series focused on catching up with where we’re at and why expanding the roster wasn’t a priority. Then it moved on to how most of these historic items are no longer available except for those rare offerings on eBay. The occasional item may pop up in an online dealer’s list of previously owned items, but they’re usually way overpriced.

With that being said, the particulars of the deal were held until the last this time around. This particular acquisition was one of those buy it now or best offer deals on eBay. Most of those available were in the $750 – $1150 “Buy It Now” price range. Not sure what the original price was back when Aristocraft was still in business, but even so, that’s pretty steep.

The offer was half the ask, and the seller countered with an extra $50 tacked on. Combined with tax and shipping it was a little over $500 all told, not quite a hundred dollars more than the Mikado deal, where the tax and shipping together were still less than just the shipping here.

Stupid eBay Tricks

Guess it’s a common “trick” eBay sellers use to avoid having to pay more of a surcharge or lose as much when some buyer tries to rook them, but when I see shipping costs of more than a hundred dollars, it better be hand delivered, straight to my hands, and not tossed around by the postal system until it’s dropped at my doorstep. Literally.

One thing I didn’t cover in the first part was all the offers I got from sellers I hadn’t extended and offer to… Way to scare me off. Folks I’ve never met nor reached out to, already “leaching” out to me. I already think what they’re asking is overpriced to begin with. Those offers only put the price in the ball park of other sellers, before I make any offers. No thanks. I’ll keep looking.

I know what these items are worth to me, regardless of what the sellers think they’re worth. “No lowball offers. I know what I got.” comes to mind. But enough about eBay sellers and tactics. I bought the item I wanted for a price I was willing to pay. Granted, it’s not what I thought I was buying, but it’s a good enough start to know better next time. Who knows? Maybe I’ll design my own CNC version of the mechanism and 3D print the rest.

The Best Part

The best part is all the video material recorded while exploring these “new to us” models. It’s been way too long since we’ve posted any new videos to our YouTube channel. They pretty much stopped when our beloved Brigel crossed the Rainbow Bridge mid 2022. There’s a short of Brigel’s last days with us to mark the anniversary of his passing, but nothing since.

That’s not the only reason, but it definitely took its toll on us. Another source of concern was the aging computer system we use to edit and render the videos. It was a real screamer in its day… A decade ago! Now its age is definitely showing. Nick gave me an older video card he had that was still more powerful than the one I built the system with. That’s helped for a while. But the old girl is tired…

But not retired. That system has roughly 20TB of storage. Some of it SSD, most of it spindle drives. It provides network access to all our collected works, knowledge, and projects. When we lost two of the 2TB drives, meant to be backups of each other, we lost most of our pictures from 2013 and parts of 2014. It was the motivation to pull the trigger on a new machine.

A New Hope

The new system is more than capable of creating videos. There were some hiccups along the way, like when the boot SSD failed, and it could have been bricked for more than two months. And all this just after finally getting everything squared away and ready to go. Seemed like we just couldn’t catch a break. I took the opportunity to rebuild a new boot drive without all the extra fluff included with Windows 11.

Back up and running, all the while waiting on a warranty replacement SSD. At first it was a struggle just to figure out who was on the hook for the warranty. Once that got resolved, things didn’t improve much. Not until I finally convinced someone in support that having a new computer that’s essentially a brick sitting under my desk for the last two months wasn’t the user experience I expected when I bought it.

He sent me a new 2TB boot SSD express! The best part was I got another 2TB replacement SSD a week or so later through the standard warranty channels! So I bought a set of USB drive cases and now have two external 2TB SSD drives for portable storage. The new computer itself was already treated to an upgrade of a second internal drive, a 4TB SSD!

A New Video

With all that being said, it’s time to start putting out the videos again. I managed to collect up all the relevant material in a “starter” project I can “save as” to any new video project, then just remove the content that’s not related. Maybe I should just export all the bins and import just what I need into the new project. Guess I’ll try both ways.

I use DaVinci Resolve for making videos. It’s just the free version, but has plenty of features even so. Microsoft was pushing their latest Clipchamp “freebie”, but it’s barely capable of editing out the unwanted parts just creating a short excerpt video. Guess I’m spoiled. I’m using version DaVinci Resolve 18.6, but they’ve already pushed out the new 19 release.

The short video clips in these new posts were created just for them, saving the full up content for new YouTube postings. All we need now is that “flashy” intro for the channel. Maybe even a trailer to boot. Just need the inspiration…

Much more to come. Stay tuned!

 

 

 

 

 

 

 

 

Latest Acquisitions – Part I

It’s been nearly a year since we added to our equipment roster, choosing instead to concentrate on infrastructure improvements, organization, and storage. While I’d like to say we’ve been busy doing that, progress has been almost nonexistent. If anything, we’ve taken a few steps backward. The latest setback is preparations for hurricane Helene, hurriedly cramming everything in the garage, and making a shambles of any progress organizing it.

One great feature we added long ago is the storage drawers for the old Bachmann ten wheelers and passenger cars. More recent acquisitions concentrated on diesel equipment, mainly freight oriented, but the USA Trains heavyweight passenger car set upstaged all the Bachmann passenger cars. And while those ten wheelers are well suited to the Bachmann cars, the heavyweights would look out of place behind one.

Most of the other steam engines we have are more suited for logging applications, like the three truck shay and mallet. There’s that 2-6-0 we were going to modify to match the “Orange Blossom Cannonball” that we used to ride from Mount Dora out to Tavares and back, then realized it was the wrong prototype to start with and would require massive modifications. It would be much better to start with something closer, but the original has long since ceased operation anyway.

Limited Choices

Few manufacturers make anything more than “novel” steam engines. LGB is one of the few remaining, but predominantly European designs. USA Trains has one offering, the UP FEF-3 Northern, with a price tag of $4,000. Not for the feint of heart, or pocketbook. Considering the only other offerings are live steam, usually in the $5,000-$7,000 price range for just a little 0-4-0, pretty slim pickings if you’re in the market for a modern steam engine.

Before they went out of business, Aristocraft used to make some decent modern steam engines, like a 2-8-2 Mikado, and a 4-6-2 Pacific. LGB also had a 2-8-2 Mikado offering. No one makes them anymore, which leaves the aftermarket, be it eBay or online dealers. Of all the hobby shops I used to frequent, I can only think of one that may still be in business, and it’s paired with a photography store. Trains on one side, cameras and such on the other.

There was one time way back, when we were shopping after going out to dinner, we thought we found a new one. Walking in we were told they just sold all their inventory to another dealer. I don’t want to call those types of deals “predatory”, so let’s just say the online dealers I’ve seen, brick or mortar front or not, seem to want exorbitant amounts of money for what’s left of those “rare” items.

Caveat Emptor (Buyer Beware)

Don’t get me wrong, I’ve found a few good deals online, but not many. That leaves eBay. My experience with eBay has been mixed. If you’re looking for deals on eBay, you really have to know what it is you’re looking for. You need to “do your homework”, so to speak, and go in with “eyes wide open” as they say. Many of the sellers are established, and most are fair and honest and want your return business.

But even though some sport good overall ratings, they’re shady nonetheless. Back when I was restoring classic motorcycles, I had a seller refuse to refund my money when he had obviously posted a deceptive offering. When I gave him a poor review, he retaliated and said I was the one that was lying about the whole deal and trying to get something for nothing. Live and learn, and NEVER deal with them again!

Sadly, the best deals I’ve found is when the seller doesn’t no what they have, offering the item for much less than it’s worth, or mislabeling it where most others looking for the item wouldn’t think to look at that auction. Long gone are my days of sniping items at the last second. I’m more of a buy it now type these days. I know what I want and what I’m willing to pay for it. These latest deals were one of those “Make an Offer” types.

Milwaukee Road Mikado
Milwaukee Road Mikado

Shiny and New?

From eBay? Nope. As luck would have it, I got a great deal on an Aristocraft Milwaukee Road Mikado from an online dealer! Listed as “Very Good” and in the box, the price was already lower than anything I’d seen on eBay for similar items. Couple that with a 10% off coupon and it’s a deal. That 10% almost covered the tax and shipping. I think they priced it low because the tender had been modified with some sort of aftermarket electronics added to it.

Talk about a deal! I’d even call it a steal. The only way I knew there was something in the tender from the pictures was the handle of a toggle switch protruding from beneath the floor. I wasn’t sure what to expect, but knew it was some sort of electronics. For less than $450 delivered, I had a “new to me” Mikado. Of course the first thing I had to do was see if it ran. Normally that would be as easy as applying power to the wheels. Not this time though.

I did a quick internet search for the manuals and such. Near as I could tell, the plugs and wires I could see kind of matched the schematics? The front pilot was fitted with an Aristocraft coupler and the “cow catcher” was missing. One of the cast steps from the tender was broken off and missing too. There were other loose parts floating around, like the whistle and rear pilot, but not those parts.

Oh well. For what I paid, I can’t complain, although I might argue with the “Very Good” rating they gave it.

A Peek Inside The Tender
A Peek Inside The Tender

Such a Deal

One of the first things I did was take the shell off the tender to see what electronics lurked inside. Not that I’d know what I was looking at mind you. There’s a built in circuit card, and additional circuit card, a speaker, a small battery pack, a couple of switches, one in the tender floor and one in the tender shell, and a bunch of mix matched wiring, complete with wire nuts. Ugh. Thankfully there’s a connector to the switch in the tender shell.

The additional circuit card uses “modern” surface mount components. It has one large, apparently custom chip, with 40 – 50 pins and a large “sticker” on it.  I try Googling the numbers from the sticker and other components but not getting a good match from any of them. I’ve never used the image search feature… Until now. That’s what it takes to get me a valid match. Turns out it’s a Phoenix sound system! Nice!

At least that’s what I thought, until I tried to find more information. It’s a BigSound™ 2K2, short for model year 2002 I’m guessing. But I’m too late to the party. They went out of business more than a year ago. Even though I’m able to find a saved version of their website on the “WayBack Machine” site, looks like none of the PDF or MP3 files were saved. Damn! That means no manuals, no sound files, nothing.

Now What?

I did manage to find the manual and more information on various large scale sites, and one user even brags he recently made a copy of the Phoenix site, but advises to just throw them in the bin. Great. Thanks for the help. Any information gleaned from a site no longer available, that might help support others willing to take the time to keep these things working, would be greatly appreciated.

If you’re reading this and have the sound files, and are willing to share them, please let me know. If you have the programming interface and installation CD, even the schematic, I’m interested in those too. The bottom line is I have one of these sound systems and it still works fine. I’d like to keep it working and not just throw it away because there’s something newer and better.

The good news is IT WORKS! Let me see if I can figure out a way to embed a video player here. I may need to link to one already deployed on the web site itself. It has chuff, dynamo, automatic whistle, cylinder cock steam hiss, and bell on first motion. The chuff must be speed sensitive since it has some sort of magnet/reed switch sensor on one of the tender axles.

Sound Works, But Does It Run?

One of the first things I did after diving into the sound system was to take the engine apart, both to clean it and see if I could just apply power to the circuit board and get it to run that way. I was able to download the manual and parts diagrams for it along with the schematic. It shows a “jumper board” that can be replaced by DCC or other means of remote control. It’s nice that one end has the power connection and the other end the ground.

It has a built in switch to select battery power or track power, but applying power to the pickups on either of the pilot or pony trucks doesn’t work, regardless of the position of the switch. That small battery pack is just to keep the sounds playing when track power is removed. I was hoping it was some sort of battery power arrangement for running the locomotive too, but no such luck. With the shell removed, I have access to the circuit card.

Connecting the adjustable bench supply using a set of test jumpers, I slowly increase the voltage. With the base of the engine laying on its side, the drivers slowly begin to move. IT WORKS TOO! Wahoo! Not sure why the power pickups on the engine aren’t working, but at least I know once it gets power it will move. Would hate to think it relies on just two axles on the tender for power, but a battery power conversion will fix that.

It’s Alive!

I am absolutely thrilled with these results. The next step is to get things working reliably. To that end, I begin disassembling the drive mechanism. This is a strange beast to behold though. Each axle has its own dedicated gear box, all connected together by drive shafts, with the last axle also connected to the motor by drive shaft. I start with the lead axle gearbox, carefully removing the side rods and the the gear box itself.

Or should I say rod? That’s when I find the engineer’s (right) side is missing the link between the first and second axles. Bummer. I can probably design and 3D print something that will fit, but these are all metal side rods, and I’d rather fashion something from metal than plastic. What are the odds of finding that replacement part for a 20 year old engine? Slim to none I would wager. Disappointing, but not a show stopper.

Digging deeper into the first gear box, I realize at least one of the wheels will need to come off to split the gear box halves and expose the innards. The gear box itself is plastic, the halves held together by two screws each on opposite sides. The worm is metal and the drive line components have ball bearings on either end of the worm shaft. The axle also has ball bearings. The weird thing is the wheel and axle is taper fit. Never seen that before.

Missing Side Rod Link
Missing Side Rod Link

Replacement Parts

Generally wheels and axles are keyed to each other in some fashion to ensure quartering is maintained between sides. This design relies on the taper fit to wedge the wheels to the axles. The tighter the wheel retaining screw, the tighter the fit to the axle. Again, not a show stopper, but I realize it’s going to take some sort of quartering jig to maintain ALL the wheel positions relative to each another and decide to stop with that first axle.

The ball bearings looks to be single sided metal shielded, and the one at the front of that first axle gear box is pretty rusty and crusty. Its movement feels rough too. Time to replace it, but I don’t have any bearings on hand that will fit. Time to grab the measurements and see what’s available. The nice thing about bearings is they’re standardized and can be identified with just the measurements.

I ordered a pack of 10 for when I finally decide to get in there. I’d do a total refresh of the gear boxes and such, but for now, it will be easy enough to just replace that front bearing without having to tear the rest of the driveline apart. Until I come up with a quartering jig, there’s no way I’m tearing it all apart. The goal is to get it running “good enough”. It would be a good thing to get the track good enough to run on first.

Next steps

As luck would have it, there are just enough spare run in stands to assemble together for the engine to sit on, and in matching black no less! It takes every last one I have that isn’t dedicated to another engine type. I’ll need to 3D print and assemble 8 more for the tender, but considering it can just sit on the rails with no moving parts, there’s no great hurry or need. For now, we’re all set.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Infrastructure Improvements

We’ve made a number of improvements over the Summer. Some we’ve already covered. Some not. We’re making progress, albeit slowly. The main focus is getting trains running again, and to do that, we need to start laying track again, not pulling it back up.

Something that’s been bothering me is the lack of progress on setting the last batch of roadbed bricks in place. It’s been a couple of months since the last batch of bricks was cast and laid in position. That’s mostly on me for not improving the state of the garage. It’s in no shape to work on any project. Not until recently anyway.

I’ll save how the garage and the office were updated with new shelving and other improvements for another post. To say the least, the casting bench is ready for action. And speaking of casting, it’s time to set those roadbed bricks in place then cast more and place them.

Some Filaments Are More UV Resistant Than Others
Some Filaments Are More UV Resistant Than Others

If you remember from the Roadbed Bricks – Round Three post, some of those 3D printed ballast profile molds had warped and yellowed from the UV exposure. What’s left of them are sitting in a bucket outside the carriage doors of the garage. So the “then cast more” part is going to have to wait.

Setting The Bricks

We’ll get back to that later. Now it’s time to set the rest of those bricks in place. They’ve been lying there on top of what’s left of the artificial turf that needs cut back to make room for them. Time to better protect that 14# power feed cable in the process by “hiding” it under the turf next to the bricks.

My “wheelie cart” helps save me from having to crawl around on my hands and knees. Lately my knees painfully remind me I’m not getting any younger. In the spirit of “there’s always something else that needs done first”, the tires need inflated. They’re not quite flat, but they could definitely use some air.

My Helper As Always
My Helper As Always

I grab the Dremel saw bag and the retractable extension cord and get that ready to go while waiting for the compressor to build up pressure. The retractable air hose makes it easy to fill the tires just outside the side garage door. Much better!

The first thing I find once I get going is most of the four bricks are already sitting right on the dirt. If it weren’t for that black “weed control” fabric and just a wedge of turf, they could be set right in place, if the dirt had been moved anyway. Time for the yard cart… Which is full of water!

Well, not all the way full, but Hurricane Debby dropped a good amount of rain on us. Easy enough to dump it out and roll it over to the job site. I made sure when I ordered the new Gorilla Cart™ it came with the solid tires. No worrying about flats!

A couple of quick cuts with the Dremel saw make quick work of that turf wedge. And the black fabric can be pulled out of the way enough to set those first four bricks in place. It takes a few tries to remove enough dirt and test fit the contour for each brick.

The First Four At The Job Site
The First Four At The Job Site

Annoyances

That fabric certainly is annoying though. Not only does it NOT stop the weeds from growing, it’s so flexible it’s nearly impossible to cut with the Dremel saw! The one thing it DOES do well is keep the seams between the sections of turf from “puckering”, for lack of a better term.

Puckering describes the way the dirt washes away at the seam and builds up under either side, like lips puckering. At this point, it’s no longer necessary with the bricks in place. The work progresses a brick or two at a time while cutting away the turf and fabric and fitting them in place.

By the time I’m finishing up, the shade has disappeared. The new umbrella Ann got me is working fine to block the sun though. It wouldn’t have taken so long if it weren’t for the post and remnants of the stringer that were in the way and had to be removed.

The Stretch To The Switch Set In Place
The Stretch To The Switch Set In Place

Unfortunately that left a patch of dirt exposed leading up to the switch. Thankfully a chunk of turf previously cut out of the way covers it and fits the bill quite nicely. It will be good enough until the next batch of bricks is ready to finish that stretch.

But Wait, There’s More

But it’s not done yet. There are three more bricks on the other end of the “cast in place” failure. Alright, it wasn’t a total failure, but it ain’t very pretty and that’s for sure. These three fit between the other end of the “cast in place” section and the end of the previous batch of bricks.

It’s a bit harder to get the turf cut this time because of the surroundings. On one end is the the previous batch of bricks and the other is cast in place concrete. But the most difficult part is the tight squeeze getting everything to fir in that space!

That end brick from the last batch actually had the corner crack off, but it doesn’t want to go back in place without a fight, or leaving a gap. After more finagling, and even more stomping, they finally fit. Probably best not to disturb the bricks already placed last time around.

The Last Of The Batch Set In Place
The Last Of The Batch Set In Place

Levelling Up

Next up is levelling that 4×4 that sits proud of the first batch of bricks. All those 4x4s along the lower loop started out level when first installed. Over time they settled, heaving or slumping in the process. Every one of them sit on dirt with the exception of the one sitting proud.

That 4×4 sits proud because it’s resting on a wedge of turf. A wedge of turf that should have been cut out of the way when it was first installed a few years back. The time has come. But first the 10′ section of flex track that sits on top of it has to be removed.

This allows access for refitting the 4×4 to sit lower and level with its neighbor and the first round of bricks. Turns out not only is there one wedge, there’s two! A convergence, where two different sections of turf meet. This discovery forces removing the first batch bricks, disturbing the pile of rubble they sat on.

After struggling with getting the high spot out of the middle and trying to eliminate the rocking motion, the 4×4 finally sits flat and at the proper level. Getting that rubble and the bricks to sit flat and level is even more of a struggle, but eventually everything lines up.

Many Infrastructure Items Resolved
Many Infrastructure Items Resolved

More Levelling

Unfortunately that 4×4 wasn’t the only one that needed attention. Ann had been working in the front yard, adding pavers and removing dirt to do so. She nearly filled the dump cart and I dumped that dirt where the track leaves the deck. The idea is to build up the terrain there.

After removing the section of track, I backed the heavy dump cart over the 4×4 and released the latch to dump the dirt. Why does this matter? Those aren’t the 4x4s that need levelled! It’s the ones in front of the deck step. Yet another 10′ section of flex track needs moved.

Thankfully this time the turf didn’t need trimmed, but it did need pulled out of the way while adjusting the 4x4s.  While I still have the track out of the way, it’s time to trim the turf along the 4×4 that staircases the terrain where the dirt was dumped.

Dirt Terraced And Track Laid On Levelled 4x4s
Dirt Terraced And Track Laid On Levelled 4x4s

The cutoff piece of turf isn’t quite big enough cover all the dirt, there’s still an exposed patch, but it’s mostly covered. Time to put the track back together. Of course, the Split Jaw™ couplers needed new socket head bolts to replace the bent, mangled originals.

Thankfully the track just falls into place, having retained their shape from using the rail bender when they were first installed. The hold down screws are left out for now with the idea that some 1×2 blocking will be fabricated to hold the rail in place.

For now, even the end that was uneven drops right into place. It doesn’t even take concrete blocks like it did months ago. It probably would have waited, except the Bozos that installed the new copper A/C line set grabbed them and used them for seats and step stools.

The Track Finally Fits The Roadbed Bricks
The Track Finally Fits The Roadbed Bricks

Sour Grapes

Definitely some sour grapes there. First of all, who told them they could use those blocks? And they didn’t even put them back where they got them! I had to download the security camera videos just to know whether they took them with them when they left.

Second, but more importantly, who misdiagnosed the leak was in the line set to begin with? Nothing like having to pay $1500 for a non repair! Still leaking and no A/C a day later, in Florida, in the middle of August no less! Ends up needing a brand new condensing coil and we get to pay to have that installed too!

Guess I should be happy we finally got someone that knew what they were doing. So frustrating paying supposed “professionals” to have it done right and I end up knowing more than they do! I’m paying you to fix it so I don’t have to!

Broken Stringer And Extra Track Removed
Broken Stringer And Extra Track Removed

But enough whining. I don’t need them to hold the track down anymore, and that was the goal. To keep the puppies from poking their eyes out, I removed the sagging 3′ straight track section and the broken stringer that was no longer holding it up.

I left the plastic pipe to mark where the track goes in preparation for the upcoming trestle work. You can see from the pictures how much more track work remains. Next step is to add back more of the 10′ flex track sections into the roadbed bricks.

Still struggling with the decision to use wooden or metal for the trestle and bridges. It may end up being 3D printed PETG that looks like metal, but still have to experiment with PETG and its durability when exposed to the elements. Time will tell.

“Then Cast More”

I promised to say more about the “then cast more” part of the discussion. One of the things accomplished when making the casting bench operational was to cut the 8′ long pieces of the roadbed brick casting forms into two sets 4′ long.

They’re sitting on the casting bench waiting to be reassembled. I’m still looking for another chunk of 2×6 that’s 4′ long to create a third 4′ long form. I’ve also 3D printed at least three more ballast profile molds for that section, but will probably need more

More to come, so stay tuned!

 

 

 

 

 

 

 

3D Printed Casting Mock Ups – Round Two

This is a short follow up on the original 3D Printed Casting “Mock Ups”. Considering the length of the original post, that’s an understatement. But sometimes it’s necessary to fill in the blanks when progress is low and discouragement is high.

Even though progress has been slow, it’s actually been beneficial in this case. The original design is based on our “fleet” of Bachmann passenger cars, literally dozens and dozens and dozens of them. Some modified with our Passenger Car Lighting systems, some still sporting the original 9V battery twin light bulb version. All of them suffering from flimsy, rubberized plastic handrails.

I wouldn’t mention those handrails except we’re talking about 3D printing. What better replacement for plastic than plastic? Well, metal for one. Brass to be exact, but then we’d need jigs for bending the brass to shape, most likely 3D printed as well.

Steps Barely Clear Capstones
Steps Barely Clear Capstones

Design “Flaws”

Just like those original handrails that failed the test,  so did our original casting design. Well, at least the mock up did. The first flaw was discovered when first fitting the 10′ diameter curved track section. A redesign doubled the number of segments to better fit the curve. This was discussed in the first installment and it works quite well.

The next “flaw” is genuinely a “new” one, as in there’s not enough clearance for the new USA Trains Heavyweight passenger cars. And before you ask, no, there are not dozens of them. But there is a decade of them. There was a bulk deal on ten of them around Christmas time, so I pulled the trigger, as well as ordering a pair of F7 A-B units for A-B-B-A running.

They’ve been packed away since then, awaiting completion of all these “infrastructure improvements”. After unboxing one of them to test with, it was readily apparent the design was too narrow for these behemoths. The car is longer than the mock up! The wheels just fit on a single curve section though.

The steps and the equipment boxes both will interfere with the platform or the capstones. Back to the drawing board! It took some doing, and some days to do it, but I managed to add a “crude” approximation of the new passenger car to the mock up design.

Steps Interfere With Pillar Capstones
Steps Interfere With Pillar Capstones

Back To The Drawing Board

The test fit also reveals a flaw in the “track trough”. Not sure where I picked up that fault, but for whatever reason, the track is sitting proud of the platform rather than flush with it. To give an idea of how the prototype fits together, most platforms are slightly higher than the track, by about 4″ (10cm). In scale, that’s roughly 1⁄6″.

I figured giving the equipment that little bit of a height boost would hopefully compensate for any errors made while measuring their dimensions. Looks like I worried about the wrong measurement errors. Add that to the list of things that need fixed.

I’m back and forth with whether to try to forcibly disassemble the mock ups or just print all new pieces. I say try because the chemical solvent I use to cement the plastic pieces literally melts the two together into one part. Printing all new pieces is going to take a lot longer.

Each 4″ x 7″ retaining wall segment takes 4½ hours to print. Two of the pillars that join the wall segments take 3½ hours. An 8″ long track trough takes 5 hours. It should have been obvious when the curved track trough only took 3½ hours to print.

Anyway, these flaws are certainly obvious now. Not to worry though, the entire reason for all these mockups is to find the errors and flaws before they’re cast in stone, er… concrete.

Time Better Spent As Debby Approaches
Time Better Spent As Debby Approaches

Time Is Of The Essence

Alright, being overly dramatic, but time certainly is the essence of the conundrum. As in there is not enough of it to get ahead of everything that needs done. So little to do and so much time… Strike that. Reverse it.

Some say if deadlines are not set, they’ll never be met. Tell that to hurricane Debby. Now instead of spending time moving closer to the goal of running trains, it will now be spent preparing for a hurricane.

Retract the SunSetter™ awning. Stash any loose items that will blow away, like lawn chairs and cushions. You get the idea. Now add to that the garage where those items are usually stored is still the disaster it was right after the A/C decided to leak all over everything.

Progress is slow, but progress is progress. The large empty storage bin that used to sit in front of the table saw because there was no place else to put it is now filled with HO scale items that used to occupy a slot on the bookshelves in the office. It will fit beneath the work cell, taking up the wasted space under it.

Next Steps

Immediate steps are hurricane preparation, like dumping the work cart full of dirt at the end of the driveway where it has washed out around the apron and sidewalk, then retract the awning so as not to create a cart full of mud.

Beyond the immediate, back to the drawing board. The track trough and curved section redesign has already begun, old hold temporarily to prepare for Debby. I don’t like leaving the 3D printer sit idle for any length of time, but short of printing more 4″ x 7″ retaining walls, it will have to wait for the new part designs.

The big ticket item is capturing the step by step process for actually creating the station platform from all the separate cast pieces and how to create forms with them for a concrete pour. So far the mockups have captured segments of the final product, but not the process of creating those final products.

The garage needs a few more items completed before it’s ready for casting concrete patch into those retaining wall panels. There’s a stud space or two where the sill plate is totally rotted that could use a new chunk of 2×4 before setting the table saw in front of there.

The new shelves are already installed but need some thought put in to organizing what should go there and what will fit. All the things that haven’t been used and won’t be any time soon were thrown out to make more space.

It continues to evolve, like the wall cabinet for electrical items expanding to occupy two cabinets. Next is going through that cabinet that has all the “might be useful” items for the model railroad, ripe for harvesting more trash that will never be used.

Long Term

Long term is 3D printing with PETG, a more suitable material for use outdoors. Definitely more heat resistant than PLA. Not sure about its UV resilience, but paint can mitigate any shortcomings there.

The first designs will be concerned with ties and insulated split jaw parts. The originals printed in PLA lasted about ten minutes before they started to melt and deform in the Florida heat. Those stainless steel rails get mighty hot in the sun!

Next will be structural items, like window and door frames, “gingerbread” decorations and supports on buildings, etc. The ultimate goal is to create our own switches and turnouts, custom fit to the needs of the Barkyard Railroad.

Stay tuned. Much more to come.

 

 

 

 

 

 

 

 

 

 

 

 

 

3D Printed Casting “Mock Ups”

I’ve been busy 3D printing lately. So busy I’ve gone through nearly eight 1Kg spools of filament so far. That’s almost twenty pounds of plastic and I’m not finished yet! Why so much? Well, that’s a bit of a story, but I’ll try to keep it brief.

I’ve been struggling with optimizing the casting process, or rather, processes. Roadbed bricks. Buildings. Infrastructure, like retaining walls and culverts and such. You name it. I’m struggling with it, and how to marry the castings with pouring concrete using the castings as forms for the concrete.

It’s difficult to visualize how all the parts need to come together to make one final piece. How do all the puzzle pieces fit together? How to hold the castings in place? How much concrete and where? A lot of questions with no answers, even with many design drawings to help.

Lone Passenger Car Testing Mock Up
Lone Passenger Car Testing Mock Up

The photo shows the initial mock up for the culverts and retaining wall of the station siding along the patio. That passenger car looks mighty lonely sitting there all by itself. Why so much mockup? I’ll blame learning curve for that. Learning from the mistakes of the initial design, and iterations that followed, to reach the final design… For the mockup.

And that’s just the tangent (straight) part. The curved portions require their own designs, and one for every different curvature! While one design is printing behind me, I’m sitting at the computer working on the next design element, be it a different part or an iteration of an existing one.

The work bench is littered with inadequate parts from failed designs. Stacks of parts yet to be assembled await the remaining pieces necessary to put the next 8″ unit together. Be it tangent or curved, each unit is based on an 8″ length.

Pieces Parts Awaiting Assembly
Pieces Parts Awaiting Assembly

Design Constraints

Why 8″ and not some other length? There are two main reasons why that size was chosen. The first was a matter of print volume. The old 3D printer’s bed is roughly 8½” x 8½”, capable of printing to a height of a little over 9″. All my original designs had to fit within those limits.

The new 3D printer has a print volume of 12″ x 12″ x 15″, so my later designs don’t have that constraint, except for the second reason. The sectional curved track requires a certain number of sections to complete a circle. The smaller the diameter, the larger the track section can be, requiring fewer sections to make a circle.

For example, the 10′ diameter sections are roughly 32″ long, and require only 12 to complete a circle. By contrast, the 20′ diameter sections are nearly 48″ long, and require 16 to make up a circle. So here’s some math for you. What’s the lowest common denominator for those two sizes? That’s right, you guessed it, an 8″ length!

Design Constraints Made Easy
Design Constraints Made Easy

The next choice in the design may not seem so obvious, but it’s time to select the angle occupied by each roughly 8″ section. In the case of the above design capture, it takes three 10′ diameter curve sections to create that 90° arc. It takes four of those 8″ units for each curve section, by three sections, for a total of twelve segments. Each sweeps a 7.5° angle.

While the wood stringers and other structures made up of thin, “laminated” strips may be formed into continuous curves, we don’t have that luxury when it comes to concrete. Granted, continuous monolithic slabs can be formed.

But when multiple, separately cast parts are involved, not so much. The design has to be segmented to allow for many individual parts to be cast independent of one another. And at different times. These cast wall parts are made in assembly line fashion, one or two at a time.

Design Decisions

The whole point of 3D printing these mockups is to better visualize the overall casting approach. Let’s take a closer look at what we’re dealing with. Near the center and moving to the right are the casting molds for a cut stone retaining wall and 8′ diameter arch culvert. Note those additional pieces on either end.

Developing Casting Sequence of Events
Developing Casting Sequence of Events

These pieces can be fitted as necessary to create 7″, 7½”, and 8″ long castings, roughly ¼” thick, made using concrete patch. This is very similar to the process used to cast the Downtown Marketplace building faces. Those older castings were made using a brick pattern sheet and crude foam blocks. But that’s another story…

Another piece is precision fit to the arch of the culvert section, knowing the difficulty of slicing a piece of foam to fit that opening. The piece on the very right is meant to cast the “pillars” used to disguise the joints between each of the wall or culvert sections.

The top left portion shows how the various parts, including the casting mockups from the bottom half, fit together. This helps to visualize developing a plan around pouring concrete, the external mold parts, and the steps involved.

It doesn’t reveal all the pitfalls that await, like how to form that depression for the track or how to form the pillar in place over the joints, but it will help to reduce the number of avoidable mistakes before they become mistakes.

Discoveries

That’s not to say I’ll find every problem by constructing these mockups, but it sure does help to get “hands on” experience with parts before the first casting is created. It’s too late to find out the track won’t fit in the casting or the passenger car steps will hang up on the pillar capstones once the concrete’s already set.

Bachmann Passenger Car Test Fit
Bachmann Passenger Car Test Fit

I’ve already found that the track won’t fit the curved mockup, we’ll call it a “track trough”, so the design needed modification. Even then it’s a tight fit, but hopefully that will help hold the track from going places, especially with the pups pounding on it.

And while the Bachmann passenger car steps clear the capstones with no problem, I have yet to try it with the new USA Trains heavyweight passenger cars that are nearly twice as long. At almost three feet long, it will require two of those 32″ sections to accommodate testing even one car.

I suppose with a little “modification”, those early sections already assembled with the faulty “track troughs” could be reworked to allow the track to fit. The original straight section was divided into two straight segments at half the angle each.

In other words, if that design drawing above had 24 segments instead of 12, and each 8″ unit included two segments rather than one. Looking ahead at the next steps is much easier with mockups in hand.

Next Steps

Speaking of next steps, what are they? Now that mockups can be made in assembly line fashion, it’s time to address how things need to come together to produce the desired outcome, a more or less permanent concrete fixture.

First is to define the process, from start to finish, and the steps involved. This includes what forms and external rigging are needed, along with an estimate of the amount of concrete needed, optimizing for 60# or 80# bags if possible. Of ultimate importance is how to keep it puppy proof while curing.

Once the process is defined, it’s time to test how well it works, making changes as needed. But even then, many questions remain. This will most likely be an iterative process, experimenting with different approaches before deciding on the final definition.

  • Will the new, “wetter” mix allow the track relief to be worked in place?
    • If so, will a mold need left in place (to overcome slump)?
    • If not, will it take a roadbed brick equivalent to be laid on top of the fresh pour?
  • Will each 8″ unit need to be poured solid or can it be made hollow, like a concrete block?
    • If solid, how to allow for segments and/or expansion joints?
    • If hollow, could a sacrificial 3D printed insert be used and left in place if necessary? How will that affect simple footing?
  • Will the retaining wall and culvert castings require a dedicated footing? The designs simply use a block of wood in place of a footing currently.
    • No dedicated footing – Simple formed and allowed to run out the bottom as one monolithic pour.
    • Dedicated footing – Needs to be poured first then built upon.
  • Determine how capstones work. Cast as separate piece and placed atop the pour?
  • Modify designs for “staircasing”, i.e. gradually build altitude above terrain or lose it as terrain rises.
  • Measure and record terrain height map. See if it can be imported into SketchUp.
    • What format for import?

And honestly, some of the next steps have nothing to do with mockups, or even casting at all. It’s been a balancing act between work, home improvement, and making progress toward these Barkyard goals. There’s always something else that needs done first!

Excuses, Excuses!

Work has been absolutely brutal lately, busier than it’s been since I started there more than two years ago. As for home improvement, let’s just say it’s not our goals, it’s our individual goals combined. Ann wanted the raised bed planters along the fence by the driveway removed.

I wanted to get all these 3D printed mockups and jigs complete enough to get the assembly line started, saving all that hard work of removing the planters until Fall when the weather finally cools down from the “feels like 107°” by eleven o’clock in the morning, already here at the start of Summer.

Ann removed one of the planters and even transplanted the ponytail palm herself. She did not ask for, nor want my help. Unfortunately, that left me with bent screws and the aftermath of just ripping everything loose. Not wanting to sound like sour grapes, but not the kind of work I prefer doing in the Barkyard either.

That left behind a large area of dirt in need of turf. I’ve had a 7′ x 13′ roll waiting for placement elsewhere that got “requisitioned” for this task. The hardest part was getting that old chunk of turf out of the way, now full of dirt, and twice as heavy.

Always Something Else That Needs Done First

That revealed the ragged, rotten bottom edge of the 6′ tall fence panels we put up not even five years ago. Add to that one of the 4×4 posts is rotted out right at the ground, allowing the fence to sway with the breeze, and it’s time to replace that fence before it blows over.

And while replacing the fence doesn’t necessarily mean the other raised bed planter has to go, it does mean the dirt has to go somewhere while the fence panel gets replaced. The fence used to be only 4′ tall, but was replaced with 6′ tall fence to keep Brigel from jumping over it and chasing the neighbor’s cats into their yard.

Now that Brigel has crossed the Rainbow Bridge and the neighbor cats are seldom out during the day, we’d like to go back to the 4′ fence.  Well, guess what Lowe’s no longer carries in stock and must be special ordered and delivered, to the tune of an added $75? All for three fence panels!

Plan “B”

Time for plan B. B, as in cut off the rotted Bottoms of the 6′ panels to make them 4′ panels! I got set up with the makeshift bench on saw horses, ready to make the cuts and coat them with wood preservative, while Ann and Nick handled wrangling the panels and posts.

We got ahead of ourselves on the first panel. It went up before I could cut the post down. Try as I may, I couldn’t get a clean cut, even with Nick removing the panel out of the way. It wasn’t certain that the rotted post was rotted off until the last screw holding the panel to it came out and the post toppled over.

Nick was able to fish the rest of the old post out of the ground. What was left of the post was just tall enough to go back in the same hole, once I gave the bottom a coat of preservative that is. Cutting those last two panels went quickly, but Nick was having a time of it, getting those two gate posts separated.

That gave me time to cut the gate down as well. One of the gate posts needed cut to length, and both needed a coat of preservative before they went back in the ground. Things kind of went downhill from there.

All Downhill

The drill bit broke off when it hit a screw in the post while Nick was making a pilot hole for the new hinge location. That meant even more work as the entire hinge needed relocated on the gate to avoid the bit still stuck in the post. Then one of the carriage bolt’s threads were stripped when it hit another screw in the post.

But even with all the trouble at the end, we managed to knock it out in just two and a half hours! The only things that remains is installing a new gate latch. I mentioned I may have one in the garage we could use, but Ann was having none of that. She’ll go pick one out tomorrow.

Tomorrow came and Ann went to Lowe’s, only to be disappointed they didn’t have the latch she wanted. Turns out I had the exact slide bolt latch she wanted sitting right there in the bottom drawer of the desk in the garage the night before. Oh well, all’s well that ends well.

If you thought that was the last of the distractions, the relentless things that needs done first, think again. Ann decided to remove the other planter and transplant the other ponytail palm a bit further away from the fence.

Then came the inevitable new turf to replace the old, now inadequate to cover the area required of it. The new roll is sitting outside the fence, waiting on me to cut up the old piece into strips more easily handled than the entire chunk all at once.

But wait, there’s more!

The split unit A/C in the garage decided it was going to flood the shelves, workbench, and table saw beneath it when the condensate line clogged up. I had just spent the last few weekends getting things squared away enough to start using the casting and trestle workbenches again.

Nope. Not this weekend. Now I get to move everything out of the way, everything I just moved out of the way of the casting bench by putting it away! And now I get to climb up and down a ladder with my bum knee just to get thing apart enough to work on it.

In the end the fix was to vacuum out the clog in the drain line. Sounds easy enough, but when the vacuum is on the other side of everything that had to be moved out of the way, now in the way of getting the vacuum out… Can’t win for losing sometimes.

The good news is everything is put back together and working again, without flooding the garage. Again, not so much sour grapes as comic relief for others. Life is what happens when you’re busy making other plans indeed!

It’s easy to see why it takes me so long to get anything accomplished on the Barkyard.

Other 3D Printing

And the 3D printing hasn’t stopped with casting mockups. I’ve even designed multiple trestle jigs for assembling the massive curved trestle from the deck to the new bridges and beyond.

Beyond that, it’s time to do something with that PET-G I’ve had for over a year now. Everything I’ve printed so far has been PLA. I bought so much PLA, and in so many different colors, that I didn’t notice my favorite maker, 3D Solutech, went out of business!

They are the only filament manufacturer I’d found that had such a wide variety of color selections. All the other have red, green, blue, black, white, gray, and that’s about it. Maybe yellow and orange. None of them have denim blue or steel blue or wheat or even brown for that matter.

Thankfully, white and gray will do for now, and I have plenty of it. At least another 8Kg anyway.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A New Trestle From The Deck

We recently raised up the deck by an extra 3½” with the thought of placing new bridges high enough off the ground so the dogs can safely navigate beneath them, without hurting them or themselves. The next step is to raise up the track to match the new deck and bridge height. The problem is the wooden stringers. You guessed it, they’re rotted.

The wooden stringers were a means to an end, and that end was to run trains. Needless to say it’s impossible to run trains when there’s no track to run on. The track is, well, was secured to the stringers every 8″. But not anymore… With two dogs we could barely keep ahead of them and the maintenance. With three it’s a losing battle.

It’s hard to describe how much destruction the pups have caused to the Barkyard Railroad. Imagine most of the track on the ground from the bridges to downtown missing, parts and stretches ripped loose and removed a little at a time, until there’s no track left. Nothing left but the stringers, if they hadn’t already rotted away that is.

A New Approach

It’s obvious that the previous track arrangement no longer fits our needs. We need a new approach. While the roadbed brick production is ramping up to remedy the situation, we still can’t keep up with the destruction of the track on the ground.

Even so, the roadbed bricks can’t address the elevated stretches of track and stringers that need attention. The plan has always been to replace certain elevated stretches with trestles. The time has come. The old infrastructure allowed us to run trains until it didn’t. No regrets.

Soon to be Trestle
Soon to be Trestle

We’re no strangers to scratch building trestles. At least not the straight kind. We even scratch built a four foot long Howe truss bridge. It used to stretch across a pond with a waterfall. But like everything else, it didn’t hold up to the dogs or time.

The new part to all of this is the curved aspect. All the jigs and such we made way back when only deal with straight (tangent) sections. If you’d like to know more about the history of the railroad, you can refer to the Bit of History section below.

This trestle from the deck will have both 14′ and 20′ diameter curved sections, along with the tangent sections. So far there’s a design for the 14′ diameter sections, already 3D printed and ready for testing.

There’s added complexity in addition to the curvature. The trestle has to rise at more than a 2% grade, a full 6″ over 23′ of track. From 18″ at the deck to 24″ at the bridge. Previously the ruling grade was kept to 1%, but that’s out the window with the triple decker (re)arrangement of the upper loop.

Trestle Bents With 14' Curve Jig
Trestle Bents With 14′ Curve Jig (Shown in White)

The Particulars

To put things in perspective, each bent must rise above the previous by 3⁄16″, and each bent is about 8″ from the last, for roughly a 2.34% grade. For the 14′ diameter curves there are four bents per track section, 16 per circle, roughly 32″ long and 22.5° per section.

By the time the fifth bent is reached, the track has climbed ¾” from the start. The plan is to make the bents for each section all the same height, and account for the rise by increasing the height of the footings, to be cast of concrete. Each footing will be roughly 2″ x 2″ x 16″ long, adding 3⁄16″ with each successive footing.

The footings are reset to 2″ when the next track section is reached, again grown by 3⁄16″, and height of the bents for that next section increased by ¾”. The photo doesn’t do a very good job of showing it, but there are six 14′ diameter track sections, then a 20′ diameter track section, followed by a 3′ tangent section.

But that’s a lot of talk with no pictures to show what we’re talking about.

Arrangement of Increasingly Taller Footings with Single Height Bents
Arrangement of Increasingly Taller Footings with Single Height Bents

The previous bridge approach trestles sat loosely on concrete block “caps”, roughly 2″x8″x16″, placed together and leveled. Nothing attached the approach trestles to the block caps. They were free to be repositioned every time the dogs smacked into them.

And smack into them they did! I don’t know how many times I would find the approach trestles upended or cocked at an angle, with the track and the bridges on the ground. We’re hoping to anchor the bents to the footings this time around to at least slow down the “remodeling”, pun intended.

New Needs Means New Jigs

So far only the jigs for the 14′ diameter curves are reality. The design for the 20′ diameter section along with the tangent section will begin soon. The design is made up of a number of identical parts with a handful of unique parts to address the areas where specific size and shape is necessary.

The trestle jig parts either press fit or snap together. The only gluing required is to attach the progressively taller adapters to the standard bases. This is only necessary to allow 3D printing of all the parts without needing supports.

The standard base cradles the bottom of the trestle bent in a 3⁄16″ deep notch. Because the base is only 8″ wide and a standard 20″ tall bent is nearly 16″ wide at its base, the jig has index marks to align with the bent’s center leg.

Each standard base has two legs designed to press fit into the next. Each base is at an angle to the next. Each successive base is 3⁄16″ taller than the last, hence the glued on adapters. The first base has no legs and needs no adapter.

Testing 14' Diameter Curved Trestle Jig
Testing 14′ Diameter Curved Trestle Jig

The design provides alignment for five trestle bents and stretches over 32″. Next are the cross arms that hold the bents vertical. There are two sets of cross arms, one set for the inner curve, and one set for the outer.

Each set has its own inside and outside components that snap together in the middle. These cross arm assemblies then snap onto the legs that connect the standard bases together. The arms have a block, a peg of sorts, that fits in the ½” gap in the horizontal members of the bent section.

Of course, now that I’ve 3D printed an entire set, it occurs to me that this will only work for those bents that have a complete section at the bottom! DUH! But this is why we mock up the models and test fit. Back to the drawing board!

This further reinforces the shortcomings of trying to consider everything from just the drawing board. My need to have hands on pieces to manipulate and consider other options that never would have come to mind is the reason why we’re testing the designs before committing to them.

Close Up of Base and Cross Arm Interaction
Close Up of Base and Cross Arm Interaction

Model vs. Prototype Considerations

There are many more considerations, like limitations of models as compared with the real thing. For the sake of this discussion, it’s not limited to just modelling, but modelling a prototypical railroad.

Curves

As with any model railroad, some “allowances” are made for the model compared to prototypical practices. The best example is that of curvature. Most model curves are far tighter than anything in the real world. Prototypical curves are far straighter than anything we have the space to model.

Track also doesn’t just change dramatically from tangent (straight) to curved. The use of easement curves on the prototype helps ease the train into the curve without abruptly slamming everything into a corner. Think of a spiral that goes from nearly straight to tighter and tighter curves.

Our tightest curves are ten feet in diameter, huge compared to the toy like four foot diameter curves. Even so, 10′ diameter curves are really beyond anything seen on the prototype, including the tightest industrial sidings and spurs.

Those 10′ diameter curves are only used where space is at a premium on our pike, like the station spur and the tight fit of the mainline behind the shed. Everywhere else, we simulate an easement by starting with a 20′ diameter curve leading into the 14′ diameter sections.

That doesn’t help much when they’re all 20′ diameter sections though. Other parts of the layout are “flex track” which allows us to bend it to any curvature. Here we’re able to ease in to the curve by slowly increasing the force when using the rail bender, creating a more gradual curve.

Trestles

So why all this talk about curves? Beyond the modelling consequences related to track alone, it also influences modelling the structures that support and convey the track off the ground. In this case, trestles. And because the curves are tighter than on the prototype, allowances must be made for those structures too.

The way the prototype did things, each bent grew from the top down, growing the length of the legs as necessary. This leads to sections of standard height, with only the lowest portion varying from one bent to the next. We chose scale twenty foot section heights, or 10″ each at 1:24 (half dollhouse) scale.

The key take away from this is everything is designed from the track level down when it comes to a trestle, each section depending on the one below it, in a standardized fashion. The reason for this top down design is to ensure the stringers are directly supported by each bent without the need for shimming.

The rail stringers are perched atop the bents directly because the bents are built exactly as tall as required. Shims would diminish the strength and stability of the structure. These stringers are made up of staggered members, whose lengths span three bents, landing on the two outside bents in a joint.

This is to ensure there is at least one solid member at every joint atop a bent, and bolted together, again to increase strength and rigidity. There’s a stringer beneath each rail, generally with three individual members to provide redundancy for failure of any one of them, and each spaced apart to provide an air space so water is not trapped between them.

Making Allowances

So why does that matter to us? It all goes back to the discussion about curves and the allowances we need to make in our models. That staggering works great for tangent track, but not so much for curved track on our model. The prototype spacing between stringer members is around 3″. That’s 1⁄8″ in scale.

Unfortunately, the spacing between the members on the curved sections far exceeds 1⁄8″! At scale, each 8″x18″ member is roughly 5⁄16″ x ¾”. Over the 32′ length, a scale 16″, the overlap would be more than ¾”. That’s more than double the scale 5⁄16″ thickness of each member!

That means the stringer members can only span between bents without a noticeable deformation that would look totally out of scale. Of course, the shorter than prototypical member length will also be noticeable, but not as much so once the tie strips are in place.

Generally the prototype used longer ties to provide a walkway of sorts on at least one side of the track. These longer ties, bridge ties, are also more closely spaced on a bridge or a trestle. That along with a railing made it much safer to walk along the track that high off the ground.

Back in the days of steam, red hot cinders could fall from the ash pan onto the trestle timbers and set them on fire. A fire barrel filled with water or sand was placed every so often along the walkway, on even longer ties so as not to block the walkway, to provide a ready means to extinguish a fire.

Model track comes with one option, standard length ties. For that reason, a slide for the table saw was created that allows notching wooden “guard rails” to fit over the ends of the wooden bridge ties to be assembled into 8″ tie strips, long enough to span between two bents.

Unfortunately, that only works for tangent track sections. It would need reworked to accommodate curved sections if not totally remade just for curves. In this case, I was overly obsessed with true to prototype realism in my modelling.

That’s a holdover from my HO scale days where anything that’s out of scale stands out like a sore thumb, making everything look toy like. It definitely kills the illusion of realism. In the case of the notched tie strip guard rails, not all railroads notch them.

For the sake of simplicity and rapid production, the Barkyard Railroad will no longer notch its guard rails.

 

A Bit of History

Back when we first moved here to Mount Dora in 2014, we had to tear up all the track we had laid at the old house in Wekiva. There were plenty of projects that took priority over getting the railroad out of mothballs and back up and running. Slowly but surely we renovated pretty much the entire house.

One of the earlier renovations was the garage. With just two stripes of concrete and a dirt floor, it was a carriage house in every sense of the word, complete with carriage doors. You guessed it, they were rotted and needed totally replaced.

But first we had to do something about that dirt floor. It was like silt, a very fine mix of dirt and sand, stirred up into a cloud at the least provocation, sticking to our legs, ankles, and feet. Better plan on taking a shower if working in the garage.

Adding a Floor to the Carriage House
Adding a Floor to the Carriage House

Nick helped us install a plywood floor over the dirt, using the foundation blocks and concrete stripes to support a 2×4 framework covered with ¾” tongue and groove plywood. Benches soon followed along with a new table saw.

About that time we had to replace the dilapidated fence between us and our neighbor to the west. Most of the fence panels were rotted away to nothing, but some of the wood that still had some life left in it was saved as raw material for building trestle bents.

Early Trials

It was a brave new world learning to use the new table saw and fashioning a crude template to hold the pieces of a trestle bent together while assembling it. In case you’re wondering, a trestle is made up of individual trestle bents, lashed together with horizontal girts and diagonal cross braces.

The bents themselves have their own cross braces and other means of securing the legs together which divide the bent into multiple sections. So the crude template used small chunks of wood, strategically placed, and screwed to a chunk of plywood.

Assembled Bents
Assembled Bents

Repeatability was questionable at best. That is to say no two bents were interchangeable. Originally each of the legs was cut individually, and required new setups for the three different angles in involved. Getting a repeatable length was nearly impossible.

It soon became apparent that a better quality template was necessary. The new template was custom cut on the table saw to the correct angles, making dado cuts to hold the entire length of the legs in position, along with the horizontal joining members.

Other changes were made to increase productivity as well. The new design accommodates using the template as a “sled” for the table saw to trim all legs to the proper angle and length in one operation. Runners to fit in the T-slots were attached to the back, holding it in perfect alignment with the saw table.

That Was Then, This Is Now

All that seems so far away now, around Halloween of 2015, sitting in the living room, assembling trestle bents into an approach trestle for the scratch build Howe truss bridge. Fast forward to the task at hand today. The simplistic jigs I fashioned back then for holding the bents together did little to align or secure them in place.

And they were only meant for the straight sections to boot. Back then I would have been happy to have even the tangent trestle I built survive, but too many other things had to happen first, and many false starts, before we could think about a permanent garden railroad.

Again, permanent is a relative term. The dogs and the elements would beg to differ with the “permanent” moniker.

There is much more to come. Stayed tuned.