Friday, January 2, 2009

Hunting for the DCC system of the future.

I started this blog to document how I added features to the Digital Cab Control (DCC) system that we use on our model railroads.

DCC is still in the dark age. It reminds me of DOS. and HEX and BINARY and MACHINE LANGUAGE.


It's time to develop new ways for us to interact with our model railroads.




I wrote my first software to improve the way DCC works about 8 years ago. I'm working on my fourth generation of software now. Eight years is a long time, and much has been learned. So, these first few posts will be sort of the back-story. I'll try to bring the readers up to date on what I have gotten working so far, and the lessons learned.



First, I'll introduce you to my garden railroad. This blog is mostly about the future of DCC on the garden railroad, but, later I'll also cover my N scale layout and a couple of medium sized club layouts in N and HO.




My Granddaughter, Ally, when she was three.



The ALLY is a ten year old Garden railroad.



The ALLY takes on multiple roles, everything from round and round for display, to formal waybill switching using point to point.


The ALLY is for fun. My granddaughter, Ally, and I have been building it it since she was a one year old. Many of our visitors/operators are Ally's friends. Ages range from 2 to 12. They are Ally's cousins, neighbor kids and her friends from school.

I learned a lot about serous switching operations from five year old kids.


I've spent hundreds of hours watching kids, ages 3 to 11, run the ALLY. I don't tell them what to do. I let them decide how they will run the trains.


Guess what! They just naturally OPERATE the trains just like the big model railroad clubs do.


They have a simple rule:


If it's not nailed down, ship it by rail.


Like any Garden railroad, the ALLY has cars, people, and lots of farm animals. Kids will pick animals up and load them onto the trains. At the end of an "operating session" it could take days to find all the cows, sheep and pigs to put them back into their "right spots". I'd find them inside cars, in the "woods" or scattered about the yard.


I soon discovered a trick.


I made two pastures with little fences and water troughs for the cows. I put lots of cows in the first pasture. At the other end of the railroad, I just put one cow in the second pasture. Without saying a word to our visitors, at the end of every operating session, all the cows were in one "stockyard" or the other.


Automobiles are popular with kids too. They got loaded on the trains and were never where I wanted them to be at the end of a session. I added a new car lot filled with new die-cast cars. I added a junk yard with one rusty old car and some tires. I put old cars on the streets and in driveways of the houses. At the end of the next session, the citizens of the ALLY had a new car in the driveway and the junk yard was full.


What was happening?


Well, the kids were running a sophisticated train order system, just like the big model railroad clubs. But, without the cards. Instead of cards or waybills, the kids were doing almost the same thing with cows and automobiles.


You could say, they replaced the cards with tokens.


Experiments with other tokens:


I had always kept logs on our logging train. I removed them and piled them near a forest where I planted some "stumps". At the other end of the ALLY I placed a couple logs next to a building with stacks of cut lumber. At the end of the day, all the logs were at the "saw mill".


Ally likes those little plastic figures called Polly Pockets. They have tons of accessories. I bought a few and added some open passenger cars. It just wasn't possible to load and unload people on our closed coaches. Passenger operations between the two passenger stations thrived on the ALLY.


The ALLY uses a Digital Command Control (DCC) system to control the trains.


And therein lies the problem.


The DCC system is very advanced for a personal railroad:



  • It has multiple decoders in every loco. All locos have sound. Some have three color classification lights, mars lights, smoke and other DCC controlled features like cab controlled DCC uncouplers.

  • It has up to four decoders in every passenger car and caboose. Nearly every light is individually controlled. Many cars have sound decoders.

  • There are decoders is stock cars and even logging disconnects.

  • Turnouts, signals and building have stationary decoders.

  • Water pumps for falls and even the valves on the sprinkler system have DCC decoders.



The problem, how does one operate such a complex array of lights, sounds and other features?


Forget the three year old kids of a second. My two sons, now 30, are masters of all sorts of computer games. The have just about every certification that Microsoft issues. I installed the ALLY's DCC system.


Yet, the three of us can't possibly use every light, sound and function available on the ALLY during a normal operating session.


DCC is still in the dark ages when it comes to consumer electronics.


If you look at the new toys, you see animated dinosaurs that learn their environment, react to it, and their owner and even anticipate the owners wants.



The iRobot Roomba cleaning robot automatically figures out the size of a room and all its obstacles. It adjusts to different carpet, finds its way back to its charger and avoids falling down stairs and entertains cats for hours.



  • Today's DCC automation systems are great for museum displays. They run the trains automatically.

  • Today's DCC automation systems are great for large model railroad clubs. They control signals, and force operators to obey rules or follow a schedule.

Both of these examples require tons of work to set up and configure. Clubs members spend a lot of time learning the system. These systems are way to complex to set up or operate for model railroader.



I needed a system that:


  • Has to be very smart.

  • Has to configure itself by learning the track plan just by running a loco over all the track.

  • Has to work without any wiring other than the power feeds to the rails. This was especially important for my garden railroad. Wires and watering systems are not a good mix.

  • Has to work using existing off the shelf DCC hardware. Preferably from a single maker.

  • Has to learn new locos by monitoring how a human operates the loco and then mimicking the human operator.

  • Has to dispatch a loco automatically. I have noticed that a three year old can master putting a loco on the rails, turning the throttle and operating a direction switch. They can't key in or select a DCC address, so the system must auto-assign the most recently added loco to the first unassigned throttle that changes speed or direction.


During the past 10 years, I wrote various extension for the ALLY's DCC system to accomplish all of the above. None of the systems did everything, just some of the features. The eventual goal is to combine all of these features into a single "smart" device that can be plugged into the system and add all of these features.



This blog will follow that quest for the next generation of DCC.

5 comments:

JC said...

Bob,
It is great to see your blog. I have used your advice on making the layout kid friendly for my grandkids many times.

Benny said...

Very interesting, Bob! This is like walking into a Ford Dealership and seeing the flying car on the showroom floor at long last!

Anonymous said...

Bob,

Nice post. I've been very interested in your work and your programming. I'd really like to see some way to trace the design of your layout onto the computer. The benefits of knowing a location on the rails is instrumental, in my opinion, to getting DCC in the 21st century...or 20th century.

Steeeeve said...

Bob,

The anonymous post is mine.

Anyway, I'd love to see a post about what you think the next controller should be like. The "F4" feature you told me about is something I think should be standard. Those kinds of ideas make it easy for a normal train user to have full control of the layout.

Let me know if the comment feature is working.

Anonymous said...

Bob joined in the fun a couple of days ago and look forward to the garden rr tours we are discussing. The Regal