Train Simulator Controller: Master Controllers and Starwheels
I have long played Train Simulator, and have wanted something a bit more realistic to control the game. The first part of this log discussed my plans and motivations, and detailed the first steps along the journey: experimenting with connecting a speedometer and AWS acknowledgement plunger to the game. The core of controlling any train is making it go and stop, so naturally that was the next component to which I turned my attention. The RailDriver controller mentioned in the previous part of the project log has a few options: a combined throttle/brake handle, an independent brake, and a train brake. My goal is to build a set of controls primarily for passenger service, and I play more UK routes than any other region: most UK EMUs and DMUs have a combined throttle/brake, so that’s where I started. I also noticed the very polished-looking standalone throttle/brake controller from Alan Thompson Simulation, the external aspects of which may provide some inspiration in the future.
I anticipated that realistic movement of the controller would be the most challenging aspect, so that’s where I started. Serendipitous discussions of the trolleys (trams, if you prefer) and trains that I run in real life reminded me of the concept of a starwheel, a gear-like device designed to make a rotating axle naturally stop at one of several preselected positions. By positioning a spring-loaded roller against the toothed surface of the starwheel, it naturally is stable wherever the roller can fall into a valley, and unstable if the roller rides on a peak. A useful article from an old trolley publication yielded a useful diagram of the starwheel in a trolley controller. This also provided the helpful detail of the reverser and the mechanical interlockings that prevent the reverser from being thrown unless the controller is off, and the controller from being moved away from the off position unless the reverser is in either the forward or reverse position. Both of these details will likely be adapted into my final controller design.
I recently rescued my DaVinci XYZ SLA 3D printer from five years of storage, and after a bit of calibration, I set it to work in early February 2023 printing off two test pieces: a first starwheel and an S-shaped arm for the roller, both designed in Autodesk Fusion. A challenge of adapting the starwheel concept to a modern combined controller is that while a trolley controller rotates through about 11 notches or positions in nearly 360 degrees, a modern controller advanced through a similar number of notches in about 90 degrees. The “teeth” of the starwheel must therefore be much narrower (necessitating a smaller roller), and/or the starwheel must be larger. My first starwheel prototype contained 10 notches in about 110 degrees. I also tried a mix of shallow and deep teeth for the brake and power notches respectively, on the theory that it should be easier to move between brake notches than power notches.
In mid-February, I printed a base on which to mount the roller arm and starwheel, as well as a second starwheel just a bit bigger than the first one. I used an old pen spring to tension the roller arm, and assembled the prototype. It successfully demonstrated the starwheel concept, although the tension and action were less than ideal. Although the roller balanced on pairs of the diminutive starwheel teeth rather than falling into the intervening valleys, this still produced a satisfying “thunk” and haptic sensation upon reaching each notch.
Early March saw the design and printing of starwheel number 3, in a fetching blue thanks to a recent extracurricular project to 3D print buttons for a sweater my partner had recently crocheted. This new version also included an attempt to design a pocket to hold a T-shaped handle I had selected from a somewhat dubious source to act as the controller handle, which turned out to be smaller and less substantial for this application than I had hoped (not to mention plastic, rather than entirely metal). I enlarged the starwheel radius again, adding voids to reduce the amount of material necessary to print it, substituted a spring from a set of springs of different lengths and tensions I procured from Amazon, and tried again.
This more complete prototype of starwheel and handle is a definite step forward. The method of screwing the pocket for the handle to the starwheel allows some lost motion, the current angle of the roller arm makes the resistance much higher in one direction than the other, the one-sided support is flimsy, and the “stops” on the starwheel restrict it to the brake notches, but the concept is clearly here. The first next step will included printing two bases with wider spacing to correct the wobble, the asymmetrical resistance, and the resistance arm pivot blocking the starwheel from reaching the throttle notches. Next, I’ll attempt to procure a metal axle and a better handle, possibly machining or commissioning a machined handle if no satisfactory option can be found online in my ongoing search. Finally, prototyping a shell or cage to contain the axle, starwheel, arm, and handle will allow improving the linkage between starwheel and handle, and provide a base on which to begin prototyping the reverser and its interlock with the controller.
In looking ahead, I’ve also ordered several (unsatisfactory) options for door control buttons, and have been searching for, sourcing, and considering reproducing an AWS “sunflower”, the “output” to the AWS acknowledge button’s “input”, the visual indicator of when a train has entered a block with a restricting indication. More to come soon.