The knob killer

In response to my post, Time to kill the knob, the ever-insightful Trevor Marshall asked

… but if we get rid of the knob, what do we replace it with? Are you thinking along the lines of a miniature backhead? I assume it would have to be something hand-held…

Yes, exactly.  The knob killer will be based on a small tablet like an iPod.  Think about an app with two main screens – one for the engineer and one for the fireman – as in the diagram below.  You swipe between them to change roles, or you give an iPod to each crew member.  Both views include the steam and air gauges that the engineer and fireman share on a real locomotive.

On the engineer side, I see four sliders – reverser, throttle, train brake and independent brake.  There is also a button (slider?) for the cylinder cocks.  Opening the throttle and pushing the reverser all the way forward makes the train go, but also uses steam.

On the fireman side, I see a water glass, a slider (button?) for the injector, a button for the blower, and a slider that opens the fire door.  When the fire door is open, you can see the fire, and feed it by tapping on the dark spots.  Using the injector or feeding the fire depletes the amount of water or coal in the tender.

This all runs on an iPod or Android tablet because they are fantastically flexible devices, with very high reliability, and amazingly inexpensive!  Users of WiThrottle have already noted that the wireless performance of their phone is much better than radio throttles.  My friend, Mark Dance, is quick to point out that any time we choose consumer devices over something that has been custom built for the model railroad hobby, we benefit from orders of magnitude more research and development into reliability and cost efficiency.  The result is that WiThrottles can be cheaper and better than radio throttles.

Trevor goes on to point out,

In defence of the knob and toggle approach, it does allow us to control speed and direction without having to look at the throttle – in the same way that an engineer on a real railroad doesn’t have to look at either the throttle or the reversing lever in order to operate his locomotive. It’s done by feel, while keeping one’s eyes on the track ahead.

There is already a snap-on knob for smart phones.  I believe it works with the same material that styluses use to interact with the smart phone screen.  It would be straightforward to 3D print a cover for the phone or tablet that works the sliders in the same way.  As in the bottom half of the diagram below, it would have holes for the gauges.  Where appropriate, the knobs would ride in notched slots, and the user would have to push the knob in to move it.

If your fireman didn’t show up one day, you could open the front cover of the throttle and swipe across to the fireman view to maintain steam.  Or, I guess we could invent an auto-fireman mode, for less fun.

Oh, one last thing: to ring the bell?  Shake the device.  To sound the whistle, hold it above your head and raise and lower it.



34 thoughts on “The knob killer

  1. This topic had me searching for multi-position slide switches to emulate the notching for a diesel version of this concept. I found some that do six positions, but not eight…

  2. I like the concept of an overlay but the snap-on tactile knobs and levers appear to only be a thesis project and really not available (yet). The idea of an iOS compatible handheld would allow an interface to the iPhone/iPod with customized features (although I laughed at the shake for bell and raise to whistle).
    Music mixing and game controllers that do this are common such as this one
    or Madcatz controllers or similar to this:
    PG-9025 Bluetooth Wireless Game Controller Gamepad Joystick for PC iPad iPhone Samsung Android
    PG-9025 Bluetooth Wireless Game Controller Gamepad Joystick for PC iPad iPhone Samsung Android
    I couldn’t figure out how to post pictures so sorry about the links!

  3. Hi Rene,
    I like your concept. I don’t mind that there are WiThrottles out there. I think it’s another way to get folks interested. However I am a fan of the “old-fashioned” knob because I can control the train without looking at the knob.

    Then I see your “thesis” this morning! Now that’s something I could get into. In your controller scenario, how do you see the throttle and the brake working together? Pulling the throttle back would slow the train but it might take ten scale miles to for it to stop? What might happen if you forget to reduce the throttle before applying the brake?

    I think it could be very realistic. I have heard that the guys doing Blue Rail are/were gamers. Maybe they might consider doing something with your concept.

    1. Thanks Shawn. Now you’re exposing gaps in my knowledge. I think if the brake is applied while the throttle is open the train will eventually stall, but it could be that a knuckle could break. I would be inclined bed to simulate a stall. There should be a ton of brake noise coming from the train, however.

  4. Thanks for working up this concept.

    I really like the idea of just shaking the phone to ring the bell. We use that already for other app’s and it should work equally well here too. Further, it would feel just a bit more like the real thing.

    I also like the idea of creating one interface for both sides of the cab. I hadn’t thought in those terms and I’m starting to. This is neat.


  5. Rene: We in the traction world are used to levers and knobs on the controllers as we power up and down, unless you have a PCC where foot pedals are used. I am doing a little doodling on this and will be back to you

  6. Holding the controller above your head and move your arm as if pulling on the whistle cord to sound the whistle? Are you serious?

    And we wonder why non-model railroaders think we are just a bunch of overgrown kids…

    A lot of what is being suggested is eminently sensible, and indeed entirely possible to anyone interested enough in the hardware and programming to create an interface which is tactile and dedicated to the purpose, but motion and orientation detectors will increase the cost, and whilst I understand there is an idea to increase the fun and the “play value”, I wonder about the effort that many have put into dispelling the idea that we are grown men playing with children’s toys being thrown out of the window here.

    1. Hi Dunks,
      I take my modeling seriously but at the same time, I have to agree with Rene; it is play and I’m OK with that!

      1. So am I, but we each play differently, and being a more reflective kind of person, making the motion of pulling the whistle cord is not me.

  7. Hi Rene…very cool. Make sure to bring Gary (Hinshaw) into the loop on this. He is pushing JMRI/engine driver /WiThrottle along in a different direction with integrated lineside signal display and switch control, but I believe he now has the ear of the gentleman who is responsible for this code. He also has some of the suction cup knobs which attach to smart devices. Perhaps these knobs could be held captive in slots in your phone cover to act as sliders?

    At a recent Tehachapi BC ops session we tested both tablets and larger format phones (Samsung Galaxy 5 and 6s) in Gary’s application. I believe the consensus was that the phones’ form factor was more appropriate…large enough for finger room and to display all the information yet small enough to hold in one hand. Your imagined application, I believe, should require less screen real estate than Gary’s so you may find the same thing.


  8. Hi Rene. This sounds very cool and quite feasible. One correction to Mark’s comment: I don’t have any of the suction knobs in hand yet, because it would require a modified throttle slider to work with the knob’s rotary stylus. (Here is a link to the knobs, fyi: )

    I don’t see why a similar idea wouldn’t work with sliders. Of course you need the throttle app to have the same form factor as the slider cover and that would require a hardware-specific implementation of the throttle GUI. The Engine Driver code is open source, so that’s probably doable without too much difficulty. Look forward to seeing where this goes. 🙂

    1. Very cool! One of those inventions that I wish I had thought up first!! 🙂
      I think that might be the bridge device we’re looking for. I don’t mind using an iPad or similar device but I will say that a touchscreen slider just doesn’t give me the tactile response that I can get from a knob. I guess I’m too much into “tweaking” the throttle just a smidgeon which I can feel on a knob but not on a virtual slider.

  9. For those who think that engineers & firemen on steam don’t watch inside the cab, let me assure you the gauge glass especially and other gauges get a lot of attention.
    I’ve been using Engine Driver for over a year now on my Android tablets, and only recently remembered that the volume control works the throttle.
    I need only look at the screen for direction and functions.
    If the direction selectors were large enough and in the upper corners they could be accessed without looking.
    I’ve been pondering a fixed backhead control for a long time, so an Android version would be fantastic!

    1. Thanks Dan. The key is to utilize a robust consumer platform, rather than coming up with something bespoke for model trains. So, an Android device would be perfect.

  10. Rene:

    Nearly a year later (well maybe a nine month gestation period) I have gotten to the point where this may be a start. The introduction of the BlueRail Bluetooth board allows my cell phone direct communication with the engine. Game controllers can be used as a tactile way to go thru the phone to manipulate the train speed, direction, and lights.

    That said, an Arduino based Bluetooth game controller is very possible. I have the parts and have been experimenting with the AdaFruit BlueFruit tiny AT84 and some components. If I can get my hands on a Bluetooth keyboard to map the tactile controls then this would be a start toward a more realistic steam engine “handheld” backhead. Obviously some compromises will be required. I’ll post my progress on MRH but looking for your feedback on initial ideas.

    Not sure how to post a photo here.


    1. Hi Neil, I don’t think direct communication with the engine is required, but this certainly sounds like an interesting approach. I guess one of the challenges might be acquiring the connection between the engine and the controller without a screen. I don’t know how Bluetooth works really, but in every case where I’ve used it, one device has to know something about the other – often a pin – and you need to choose which device you’re connecting to.

      1. Then it occurred to me…

        To select the loco we key in a unique identifier like dialing the phone. When I read your comment René I wondered: why not just put something like an RFID chip in the loco and then just pass the throttle over it to select? Not unlike scanning stuff at the store’s self-checkout lines. “Want that engine? Just hold the throttle near its cab.”


      2. The Bluetooth boards are selected through the app so chosing a loco still would require you look at the phone. Same is true for configuration (steam or diesel, bell and whistle choices, etc) but after that the handheld would be used for acceleration, braking, whistle & bell, lights, and somehow enable the Johnson bar to be used for more than a reverser. Perhaps a gauge could be incorporated so that under full steam the engine would quickly lose pressure. This would be rather arbitrary since we can’t really expect the fireman to be balancing the fuel and water – a balance must be sought to find “the company notch”.


      3. It’s that manual selection through the phone I had this vision of getting rid of. Whether selecting the icon on the screen or keying in an address I wanted more direct method of selecting the engine – hence my “tap the model” approach. Further, to have this live outside the throttle or decoder software so no change required to how you want to operate the model. Just something that lives outside and bypasses having to remember the address, key it in, etc. I don’t pretend to understand enough about “the hardware” to know the challenges but it felt like using the RFID to macro the loco’s address into the throttle – changing the input source.

        That said, I’m just taking away from the original idea for this thread.


  11. @Chris:

    Appologies to Rene for hijacking this thread.

    The RFID reader is easy to implement with an Arduino shield. The hand held controller would be pointed to a loco file via wifi to JMRI. I wanted to stay away from a computer running dcc commands via the rails (which may also be possible with JMRI) so have glommed onto the Bluetooth board since it can be addressed via my smart phone as a hub. The phone will stay in my pocket so, for now, will be used to choose the loco.

    Once I get the controller just moving the train then it may be possible to repeat the engine choices to the controller which would be used to select the engine (proximity sensor?). Since RFID tags can be really small this may work as well. The tag doesn’t have power but is like an inductance coil and antennae in one. The coil (like an electric toothbrush) receives power from the controller and responds. This can trigger a reader to identify the tag, provide info, or simply cause the controller to begin the conversation via Bluetooth. Theoretically.

    Fist thing first. I need some time to get off the breadboard once the software is written. I’ve been bidding on a keyboard and it occurred to me just now that my iPad keyboard would probably work fine. Dope!

    1. Why not dead rail??
      Also why not have the sound go to headphones for that in cab experiance. Then you can lower the volume in the model to just scale ambiant. That would mean you cant hear it at a scale 1/4 mile or whatever.

      “I wanted to stay away from a computer running dcc commands via the rails”

      1. Dead rail might work for Neil’s On30, but I have enough difficulty finding room in my little tea kettles without adding a battery!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.