IMPORTANT NOTE
Everything discussed in this article is strictly a personal project and does not indicate any form of availability of any product(s) either from Dovetail Games or any of the parties mentioned.
There are also a number of hardware products mentioned which currently do not have any public method of integrating with Train Simulator and are using custom software that I’ve written specifically for my purposes. Lastly, there are no guarantees that any of this will work outside of my environment, so if this article encourages you to delve further then you do so at your own risk.
Saitek provided the panels and joystick for this experiment, and PI Engineering provided the Orby and the foot pedal. The RailDriver was mine, I’ve had it since they were first launched.
INTRODUCTION
I've always had a fascination with hardware for Train Simulation whether it was those old 3D Stereo glasses, joysticks or PI Engineering’s RailDriver product. There’s just something about getting a bit more out of the experience or feeling just a little bit closer to being there.
Over the last couple of years I’ve been experimenting with a few different ideas and one of the earliest was whether it would be possible to use the Saitek Pro-Flight Flight Instrument Panel for Train Simulator. I first had this little unit working with the game probably two years ago, but it was limited to only showing the speedometer since that was the only output that was available outside of the game. I’ve also played with joystick interfaces, a custom-built RailDriver interface, a tablet touch screen driving interface and even a Speech Recognition based interface. These are all little horribly unreliable experiments of course but each brought some interesting new experiences and ideas to the mix.
THE CAB DESK
With the recent upgrade to the External Hardware Interface API in Train Simulator 2015, I’ve been encouraged to re-visit this whole concept with a lot more success as it is now possible to drive any loco and retrieve just about any value and do something with it outside of the game.
With this new-found ability, I set about designing a simple generic cab desk based around using a RailDriver for the primary controls, some of the Pro-Flight Flight Instrument Panels (FIPs) and a Pro-Flight Backlit Information Panel (BIP). I wanted to allow some room for growth in to more complex outputs, so the cab design also included space for my two old 10.1” Android Tablets to be used as screens, perhaps showing a real time moving map or the manual for the loco currently being driven for example.
As you can see, it doesn’t try to look specifically like any one cab, because I want something that will be essentially applicable for any train I choose to drive. If I had to cite an influence, it would possibly be trains like the German Electrics or ACS-64 (which is also of German origin).
With the mock-up in 3D Studio Max rendered by one of the talented artists here at Dovetail, I took it to my father who is a wizard with woodwork, and he then set about creating the wooden frame and supports to bring it to life.
The design evolved slightly as I ended up having 7 FIP panels and 1 BIP panel, rather than the 8 FIP panels – however I think the end result is far superior.
Within a couple of weeks, a couple of coats of paint and a bunch of hardware attached it later, the desk is essentially completed, from a hardware perspective at least!
THE SOFTWARE
While the hardware was being built, I was hard at work putting together software, using evenings and weekends to make progress when I wasn’t doing the Twitch live streaming of the game. I have opted to make my software simply be a kind of bridge, it integrates all of the different hardware that is included together and then presents that back out as a single unified LUA API. This means I can write custom scripts for each loco, or more general scripts for all or some loco’s as well as put in other advanced features. For example, with the script in control of everything, it can add new features like using the Loco Brake lever on the RailDriver to work as a throttle via a toggle on one of the blue buttons – it can then update one of the panels to reflect what the current setting is so that it’s clear and easy for me while I’m driving to see the current state of the script and how I have configured it for this loco.
THE HARDWARE
Saitek Pro-Flight Instrument Panel
There are seven (yes, 7) of these panels on the main part of the desk. Each one shows a single gauge updated in real time alongside what is happening in the game. I have implemented a few gauges covering UK diesel and German electric, but the plan is to widen this out greatly over time. Each panel can display any of the gauges, so it is flexible enough to allow you to easily put gauges where you want them.
For trains with AFB or Cruise Control, you can even use the little twisty knobs on the speedometer gauge screen to set the target speed if you want!
Saitek Pro-Flight Backlit Information Panel
I didn’t appreciate just how much value this would add initially but Saitek recommended that I give it a shot. The BIP is basically a cluster of 3 rows of 8 LED’s each, and each LED can show Red, Amber or Green lights.
It comes with a lid that you can remove and inside there are 24 removable plastic labels. As it comes, it’s intended for Flight Simulator so it has labels for things like “Gear down” and “engine 1 started” etc which light up as appropriate while you’re flying.
By removing all of the plastic labels I was able to mock up a rough representation of them on an A4 transparency plastic sheet, laser printed with a selection of things that are normally found as lights on cab desks. Key lights here are things like all the various PZB and LZB lights, Wheel Slip and so forth.
The code can then retrieve the value of appropriate variables within Train Simulator and decide how to light up the panel.
In practice, driving German trains is transformed! With the real lights for the PZB and SIFA going off it alerts you in your peripheral vision far more than it would on the screen so you’re far less likely to miss or mis-read alarms.
PI Engineering RailDriver
The RailDriver has been out for a long time now, it was originally released for Microsoft Train Simulator but is well supported by just about every Train Simulator out there now. It is basically modelled after an American Diesel cab, but the general design of it lends itself even to driving Steam engines without any difficulty, and you simply cannot beat having a “real” lever to move around or button to push etc.
I did find that the Throttle control, which is implemented as a combined handle to support the Dynamic Brake on the same lever, is far from ideal, though this may be the age of the unit I’m using (which is one of the originals). What I’ve done to help this is to allow the player to toggle the loco brake to function as the throttle instead of the loco brake as this lever has a superb range and much better responsiveness. You can also make it work in reverse, if you want to “pull” to apply power as most trains do indeed work.
PI Engineering XKeys Orby
RailDriver offers an “alerter” button but it’s small and I feel that the AWS Acknowledge, Alerter Acknowledge and PZB Acknowledge button ought to be more substantial and easy to use. Looking at other products around I found that PI Engineering (who make the RailDriver) also have a range of USB XKeys products including some big buttons! I picked up an XKeys Orby and have found that it makes a great acknowledge button!
PI Engineering XKeys Foot Pedal
In addition to the button, PI Engineering also make a range of USB foot pedals. Using one of their foot pedals I have now tied it to the vigilance alarms such as DSD and SIFA, so that I must keep my foot on the pedal and when the alarm goes off, release it briefly and put it back on again – just as they have to on the real trains. It sounds like it might be uncomfortable for longer uses but I’ve found that isn’t the case and the extra sense of knowing you’re pressing on that button actually helps concentration as well!
LightWave RF
WIFI LINK: BUY AMAZON UK and WIFI BULB: BUY AMAZON UK
This one fits in the category of “sometimes, you can just go too far, and sometimes, that’s exactly what you should do!”
Home Automation is where you allow something other than the conventional light switches and sockets in your house to control lights and mains power (and more), this could be as simple as some central system that reacts or times things to something much more complex involving your home computer, wireless access, your mobile phone and so forth. You can set up Home Automation systems to turn lights on or off, turn your heating on or off (or up or down), open/close motorised blinds, open/close garage doors and lots more, either automatically or even via your mobile phone.
Lightwave RF is one such system that you can get in the UK, it’s a relatively simple system and comes at one of the lower price points. All I’ve got is a set of three LightwaveRF bulbs, where all the required receiver hardware is built in to the bulbs themselves, plus a Wi-fi link unit which allows my computer to send signals to LightwaveRF devices. Put this together, and you have the ability for Train Sim to turn the lights on and off in the room!
In my implementation, I have the three lights above my desk. The other two are normally on, but if I go in to a tunnel then they turn off and the room goes dark. Come out of the tunnel and they turn back on again. It’s simple, but frankly epic! I did the integration some weeks ago and only recently got it all set back up again and completely forgot about it – so the first time I plunged in to a tunnel and the room lights went out and it went actually dark my immediate thoughts were “oh no, what’s gone wrong now!?” until I remembered, and then I smiled a lot, in fact, I may even have giggled like a child a little J
The middle light is set up to react to the cab light control in the game, so if I press L to toggle the cab light on a loco that has one, not only does it turn on in the game, but the middle light turns on too in the room – and since these are all dimmable lights the cab light comes on quite dim so as not to look just like “full daylight”. The effect is really nice!
Saitek X52 Pro Joystick
The last bit of hardware I have integrated (so far!) is the wonderful X52 Pro joystick from Saitek. It has an absolutely splendid throttle which works very well as the combined handle for most modern EMU’s with a very nice smooth and responsive range to move it through. It also has a range of other buttons and sliders on the throttle handle that I have mapped to additional acknowledgement buttons, alternative reverser controllers and so forth – if I don’t want to use the whole cab, I can now drive most EMU’s entirely with my left hand on the X52 Pro throttle! The joystick also has a nice little multi-function display screen, which I’ve set up to show some basic information such as speed etc but I’ll be advancing this as I go.
THE CHALLENGES
There are a lot of USB devices here, each panel has its own cable, plus the BIP and RailDriver. The Orby and Pedal share the same USB Connector. Combined with two webcams, TrackIR, Mouse, Keyboard and other devices – I have around 20 USB devices connected to the computer and while USB claims to support 127 devices happily, I can say for sure it is anything but "happy" about it.
You will want to be careful about picking good powered USB hubs, not cheap ones, because the FIP screens draw around 300 milliamps each in power. That means if you’re using a 10 port hub and plug in 10 screens, you need to make sure that the power supply for that hub is delivering an absolute bare minimum 3 full amps to the hub, preferably more like 5 amps just to give some room. There are many cheaper hubs that don’t come with power supplies, which won’t suffice for this at all, or come with low-power power supplies, so it’s important to check. I’m using a pair of DLink DUB-H7 7 port hubs (both of which deliver 3 amps), which both seem to be doing a reasonable job but I am going to be continuing my investigations to find the perfect set-up as even with this configuration, if I plug one more device in anywhere, Windows starts complaining about insufficient resources.
BUT… that’s what life is like at the bleeding edge! Trying lots of different things out is fun, working out what combinations work and what don’t. When I first started, it looked like I was only ever going to be able to get three of the screens operational on this machine, but with some re-wiring, re-thinking and identifying a possibly dead hub, I’ve been able to get them all working fully.
THE FUTURE
Now that the desk is basically working, I plan on using it – a lot!
Beyond that, development of the software will continue to add more gauges and many more features. I’m also going to continue exploring new avenues for hardware to see what options there are for this too. The BIP has proven to me that I need to keep my options open and try things out!
THE API DOCUMENTATION
If you wish to look into writing your own interface to take advantage of the new features included with Train Simulator 2015, you can download the API Documentation by clicking the link below:
PLEASE NOTE
This documentation is technical in nature and is not meant to be used by everyone. By downloading the file, you are accepting full responsibility for your endeavours.