Bob's Bench

Block Occupancy for the Dream Player

Click to enlarge image

The PRICOM Dream Player is a high-quality solid-state audio player. So what, right? Even Walmart has MP3 players these days (boy are they expensive). Ever try to hook-up a Block Occupancy Detector (BOD) to a CD Player or an MP3 Player? It's not so simple. Sure it can be done, but what happens when the unit dies and you want to return that modified product. Most manufactures frown on customers hacking open their products and then trying to claim a warrantee repair.

The Dream Player was built for this exact purpose: a triggerable sound device that can also control output devices. Check out the "Dreaming with the Tortoise" to see the output compliment to this article.

So what is the number-one input trigger device on a typical model railroad? A Block Occupancy Detector (BOD). Ok, there are others too, but keep the BOD in the front of your mind for a few minutes. What we really need is a way to hook-up a BOD to our Dream Player.

Click to enlarge image

Lucky for us modelers is that several companies make very nice, and low cost, BOD's. This one is made by Team Digital and called DBD2 (see the link to the left). A particularly nice feature of most BOD's, and the DBD2 in particular is that it can run off 5 volts DC. Why is that of so much interest to us here? Well guess what, the Dream Player puts out 5V and the Trigger Inputs will directly connect to this BOD without any external parts. Well, Ok, it needs some wires!

Click to enlarge image

There are mainly 2 types of BODs, one that uses a little transformer to sense the current consumed in an occupied block, and also one that uses a diode or diodes to see the voltage loss across the diodes to detect occupancy. I personally like the current transformer units better. Why? Because I can use the wire I want, and I don't need to splice or have any connections in my bus wires. I also like big wire, so being able to stuff a #10 wire though the transformer instead of trying to figure out how to solder it to a little PCB hole really appeals to me. One more crafty thing about using the sensing transformers is that if you want to increase the sensitivity, you can just wrap the wire through the transformer twice. They are a transformer, so if you want it to be twice as sensitive, just loop your bus through the hole 2 times. Well you probably can't put 2 wraps of #10 wire though these things, but if you have #10 wire, you probably don't need to sense such a small current.

Every solution needs a problem, right? Well maybe I have that backwards, but my example here will be used for controlling a crossing gate. We need sound, a motor, and a BOD. But let's stick to the BOD for now...

Click to enlarge image

Because the DBD2 can be run directly off the 5V from the Dream Player, the connection is simple, as you can see. Black is our Ground, Red is our 5V power, then Orange and Yellow are our BOD Trigger Inputs. When the DBD2 sees current flowing into the block, it drives the appropriate output to Ground. This causes the Dream Player to begin playing the associated Audio Track. In this example, DBD2 Sensor-1 will cause Dream Player Trigger Input #1 to be activated. DBD2 Sensor-2 will cause Dream Player Trigger Input #2 to be activated. Pretty simple.

You may have noticed that the 5V terminal on the Dream Player also feeds back to itself on the Pos Terminal. That is because the Dream Player inputs are opto-isolated. The opto-isolators need power to light their LED's, so we have simply given them their power directly from the Dream Player. Since the DBD2 senses occupancy with transformers, there is no electrical connection to the rails at all. This keeps the Dream Player completely isolated from the track, and keeps the audio nice and quiet. If you were using a BOD with diodes instead of the sensing transformers, you would probably want to use the opto-isolators and not tie the Dream Player power to the sensing circuit. That's another slick feature of the DBD2 from Team Digital.

I tested this setup with our Digitrax DCS200/DT400, our NCE PH-PRO/ProCab, and also our Lenz LZV100/LH100. Each system has its interesting operational 'quirks' but happy to say that for this application, the DBD2 and Dream Player worked flawlessly with all brands.

In my experiments, the DBD2 will trigger, or 'see occupancy' with merely my fingers laid across the tracks. Wanting to be a bit more scientific, I switched to a handful of resistors. It seems that the DBD2 triggers at about 10K Ohms, anything lower then that will look 'occupied'. That makes sense since many commercially available resistor wheel sets use a 10K Ohm resistor.

I looked at the documentation for the NCE BD20a which is a single block detector, but doesn't require power from the Dream Player. According to the documentation, the output is an Open Collector type which means it will switch to Ground when activated, and release or 'float' the signal when not-occupied. This should work perfect with the Dream Player, but I have not tested it yet.

All points considered, this was quite an easy project. We got the Dream Player to trigger when the block shows occupied. Of course we need to put some sound into the Dream Player, and we might want to control some output when the sound is playing. I was very impressed with the Team Digital DBD2 which proved to be low-cost, very stable, and quite sensitive.

Click to play movie

If you want to have a peek at the finished crossing gate demo, just click on this picture, and a video will play. Be prepared, it is a 1MB file in Windows Media format. If you want to download the Dream Player audio track used in this sample, check out our Dream Sounds link on the rigt side of this page. For a real-world application for BOD, check out the Dream Crossing link on the right side of this page.

Well that wraps up this edition of Bob's Bench. Hope this proved useful to you, and that by following our example, you can add some BOD-triggered sounds to your layout. Sure you can add sound to your locos, but a silent 'mime layout' is a real crime.

Bob Scheffler