review – Building Recreational Flight Simulators

I make no secret of the fact that I’m a huge fan of Mike Powell’s website (http://www.mikesflightdeck.com) and first book, Building Simulated Aircraft Instrumentation (BSAI). Mike’s site was both inspiration and assistance to me in the early days of building my cockpit, and though I’m yet to finish building any of the specific instruments from BSAI (parts are still sitting on my workbench!) it’s been an invaluable resource for other cockpit projects on PIC programming and other topics of which I had little or no prior knowledge.

So I’ve been waiting excitedly for Mike’s second book, Building Recreational Flight Simulators (BRFS). And last week it finally arrived, delivered right across the Pacific Ocean nine days after my painless and quick Paypal order. So: what is BRFS like, and what does it offer the beginner and more experienced pitbuilder? These questions, dear reader, I hope to answer for you.

Book 2 is a more generic look at simulator cockpits than Book 1 (the clue’s in the titles). While BSAI was a deep dive into DIY instrumentation for a flight simulator cockpit – air core, stepper or servo-driven, with digital or analogue electronics – BRFS looks at the entirety of the pitbuilding hobby. Topics covered in detail are:

- Joysticks, control yokes, pedals and engine controls (the primary interfaces with the simulator)
- Position and force sensors
- I/O and scenery display
- Computer drawn, flight-rated and DIY instruments
- Panels, switches and warning/status lights
- Interfacing with Microsoft Flight Simulator
- Sound
- Enclosures and motion/force cueing
- Precision layout, printed circuit boards and microcontroller programming

Most chapters follow a similar format. Mike starts with some context in real aviation, how and why replicating that function might augment your flight simulation experience, discusses some options for building or purchasing the necessary components, and finishes with a construction project designed to provide a practical foundation for one’s own specific cockpit needs. If you build every project in the book, your cockpit will be impressive to say the least!

The engineer in you will be delighted with the plethora of excellent line drawings. For a visual person like me, these are a great way to consolidate the topic. Additionally, Mike has introduced printed circuit board designs, which will save you a great deal of time if (when!) you construct your project. I also have it on authority that the electronic versions of these board designs may be made available to purchasers of the book, for use with board fabrication shops. If you’re not delirious with excitement at the prospect of dipping boards into hot caustic liquid to etch them yourself, this may be of immense value to you!

Where necessary, full PIC assembler code listings are provided in the book. Again, there may be soft copies of this code made available in future to avoid typing errors. I’ll update the review if these become available.

Mike’s referencing is expansive. Every chapter includes references to community, commercial, online and literary sources of products, techniques and information that is relevant to the topic. He is careful to avoid any endorsement of specific products or vendors, fitting for a book that is more encyclopaedia than opinion piece. I am particularly glad to see that BRFS references suppliers outside the continental US, for example Maplin in the UK and and my local (in Australia) electronics chain, Jaycar. The author has clearly embraced his growing international audience.

Putting the content aside for one moment, onto Mike’s writing. He seems to have matured – and relaxed – as a writer since BSAI, and the book is authored in a style that makes for easy and even entertaining reading; rare for a such a technical tome. There are 180 footnotes in BRFS, often dryly chucklesome and worth a skim read in themselves. An example:

“Recreational flight simulation ranges from sitting in a cardboard box pretending to fly 15, to … “
Footnote: 15I’m fairly certain I’ve outgrown this stage.”

These and the general conversational style help to make the reader feel that they are enjoying a discourse with an equal, proud geek to proud geek, without any sense of being lectured by a superior intelligence (though Mr Powell is undoubtedly that). Whether you end up diving into specific sections as a reference, or sitting in the bath and reading it cover to cover, you will find the book’s structure accommodating. The writing is clear, grammar and punctuation are spot on (often a risk with self-published works) and the printing and binding first class.

I’m sure there are excellent reasons behind sticking to a treeware-only format (rampant copying being foremost no doubt) but a searchable PDF version would be extremely useful when searching for a particular keyword or reference. If I hear from Mike on this topic I’ll amend the review.

So: the audience. Let’s start with the nugget; the newbie to cockpit building. If you’re anything like I was, you are now bewildered with the amount of information on the toobs and wondering where to start. You may even be feeling that you don’t and will never possess the skills to build something yourself.

For this person, BRFS represents a distillation of the information cornucopia that threatens to induce “analysis paralysis” and that in itself makes it excellent value. The beginner may tend to rely more on commercial products than home-built for their first pit, and this is perhaps the one area where you may feel that BRFS has gaps in detailed content. However, given the incredible range of commercial products and simulator software products, it is quite unreasonable to expect the author to cover them all, and BRFS will at the very least appraise you of the existence of most of them which is often half the battle. More to the point, it will reassure you that it is possible to realise even your most fanciful simulator dreams, and that you can develop the knowledge and skill to do it yourself.

It would be easy for me to say that much of this book is not for the electronic or mechanical beginner, given the excruciating detail on such arcane topics as microcontroller assembler code, serial port communications, precision construction and many other heavy technical topics. However, it would be fairer to say that it is not for someone who wishes to remain a beginner. The important thing is the mindset – if you possess an interest in what makes these fascinating devices work, and are intrigued rather than frightened by lofty heights of understanding, you will get a great deal out of this book regardless of your current knowledge. I am living proof that it is possible, in a short space of time and using Mike’s books as a catalyst, to go from zero understanding of PIC RISC assembler to being able to design and build my own applications – and I am by no means spectacularly gifted, as my wife will happily (and vociferously) attest!

For the more grizzled simpit veteran, BRFS offers a number of things. There are specific projects that may be of great value to your current or future pit (in my case the RS-485 I/O bus and the LCD radio heads) and many of the projects may have at least passing relevance to something you’re working on. The more we fly our pits, the more we are niggled by their little limitations, and BRFS will drive you (and give you the blueprint) to at least consider building something that does exactly what you want rather than settling for what’s commercially available.

In addition to that, you may find it simply a fascinating read. Don’t underestimate the simple joy of reading something written by a like-minded individual, aimed squarely at your own passions. You may even learn something!

I’m sure by now that you’ve realised that I like this book. I like it a lot. It is a quality product, well written and rich in content that is, if you are reading this review, directly relevant to your interest in flight simulation cockpits. I can’t think of a flight simmer with an interest in pitbuilding who would not get at least their money’s worth out of it.

If I may wax lyrical for a moment: I am notorious for supporting flight simulator products for little or no better reason than ensuring that they continue to be made. The high-fidelity sim market is a tiny niche, and when compared to the quick-fix console market, is not particularly lucrative. If you have no other reason to purchase BSAI and BRFS (and make no mistake, there are many good reasons to!) consider it simply because the future of our hobby depends on us – individual simmers – supporting quality products with our hip pockets. Otherwise, you may find yourself reading “Super Awesome Jet Combat Extreme VI (PSP3) for Dummies” in the near future because there are simply no better options.

Lecture over. Great book.

Building Recreational Flight Simulators is available from MikesFlightDeck.com for US$59.95 plus P&P.

tactile feedback for slip

I was chatting to huggybear the other night about the balance in DCS:BS, and how there is no real feedback on slip other than looking down at the balance ball – which in my case is usually fully deflected left or right.

So I got to thinking that it would be cool to get some tactile feedback. Now IRL when you slip, you feel it in the pit of your stomach and in your inner ear canals. How to replicate that? The initial idea is to use motors (e.g. this) with an asymmetric flywheel, similar to what is done in mobile phone vibrators. Mount one on either side of the seat, near the kidneys. then, take the LoGetSlipBallPosition() output from DCS (which returns a value of -1 to +1) and pipe that to my custom PitManager software, which in turn pipes a value from 0 to 99 to two outputs on my PhidgetLED64, one for left and one for right. Sync the motor speed to the current coming out of the Phidget (from 0 to 30mA depending on the input value) with all sorts of isolating and amplifying wizardry and you have vibrating kidney sensors that give proportional feedback to remind you to step on the ball.

Problems: choosing motors and flywheel sizes that will give noticeable feedback, but won’t shake themselves apart; building a properly isolated circuit that can be driven by the PhidgetLED64 (my only output module); not burning down the house or causing myself permanent kidney damage.

Thoughts?

*edit* on further thinking, the sort of bollocking around I’d need to do with the PhidgetLED64 is astonishing. However… this. Perfect. And much neater too, if I end up selling the kits as HuggyBear suggested!

*edit 2* On even further thinking, what about the TN Games bullet vest? It has a C/C++ SDK so I can code directly to it.

X52 spring mod

I was getting the royal shits hovering in DCS:BS with a strong centering force on my X52. Now, by the standards of the old X45, the X52 is positively silky, but for a helo it’s like nails down a blackboard every time that centering cone locks in place.

So, with the aid of three plastic zip-lock ties, I compressed the spring which has done a nice job of reducing pressure in the center for fine hovering control, but retaining pressure at the edges for tactile feedback that it’s time to trim.

Start by not tightening them all the way, and play with it a bit. You can keep tightening them around one spring loop until it’s just the correct tension for you. I initially tried taking out 2 spring loops, but the stick flopped around and flying on Route mode required constant effort to maintain the cyclic in the centre, which kind of defeated the purpose.

3 zip-locks, evenly spaced
pit_x52springmod (38k image)

latest photos

By popular demand, here are the latest photos of the unipit in its (and my) new home.

tidy!
pit0809_front (59k image)

pit0809_headdetail (36k image)

pit0809_left (52k image)

pit0809_overhead (55k image)

targeting mode control panel done

tgtctrl (184k image)

Not my neatest ever work, but looks nice all lit upski. Still have to wire the sucker, and the circuitry to get it working with my PhidgetLED64 is proving to be a little bit of a pain. The PhidgetLED64 is designed to work only with directly connected LEDs, but my lights there are 12v lamps. So, I have to design an elaborate circuit of optocouplers and relays/transistors/mosfets to drive the lamps. Not ideal, but there you go.

On top of that I need to finish my PitManager software to the stage where I can drive the lights from Black Shark. Now that I think about it, I wonder if Black Shark even provides the data hooks for that panel? Better check that before I spend a lot of time on the lights.

At the very least I hope to have the switches working (sans lights) by the end of the weekend. We’ll see.

*edit* OK the inputs are wired and all worked first time. Splendid. However, the landing gear handle obscures the laser switch when it’s in the gear up position. Workaround: raise gear, then lower the handle halfway so that it doesn’t trip the gear down microswitch. Another issue is that DCS doesn’t have absolute positions for the rotary, but only has “rotate left” and “rotate right” mappings. Bollocks, when will sim developers learn! Workaround: map the first and fifth positions only, and pulse it manually. That rotary hardly ever gets used anyway. Still, rubbish. Hopefully 1.0.1 fixes it.

targeting mode control panel

the real one:

Drilling template for mine:

KA50_TgtModeControlPanel_V2 (13k image)

The dimensions are off because I’m trying to fit it into a spare slot on my forward left console, above the gear panel and below the keyboard. The red shows where holes go through both the faceplate and the mounting plate, the grey is where the mounting plate shows through due to additional cuts on the faceplate (e.g. for mounting nuts etc).

Drilling and cutting tomorrow.

back in the saddle

Less than 3 months to run until the expo, so back into the Black Shark. Have forgotten pretty much… everything.

Spent most of tonight re-mapping keys and joystick mappings to get everything to work right. I’ve got a lot of panels to build if I really want to be able to play seamlessly. Trying to hit the DataLink or Targeting Control Panel, even the autopilot, with the mouse when flying manually in combat just sucks.

An overhead would be nice, and would give me back a lot of panel real estate that I’m going to lose to the collective. Hmm.

The audio mixer works well, enabling me to mix 3 audio sources (game audio, teamspeak comms and ipod) into one set of headphones and, without changing cables, direct all 3 out to the 5.1 speakers as well if desired. Good for expos.

Working on the PitManager software also, a little Visual C# .Net app that will broker connections from any sim out to any instrument. I see it working on a publish/subscribe basis, so the data feeds (LuaSocket etc) “publish” their data, and any instrument can “subscribe” to get that data.

the box o tricks

A few people have been asking how I hook up all my switches and lights to the PC. It’s quite simple really – via the box o tricks.

boxy. tricksy.
boxotricks (27k image)

In there is a BetaInnovations PlasmaV2 analogue/digital input board (essentially a joystick HID board), a BetaInnovations GammaRayV2 digital input board (256 inputs) and a PhidgetLED64 output board (64 LEDs). Rather than wire my panels directly to the boards which gets very messy after awhile, I breakout the board ports to five D37 sockets on the front panel.

The 4 on the left go to 4 of the 8 GammaRay ports (3 configured as digital input, one as rotary encoders) with 32 inputs on each port, and the one on the right goes to ports 0-15 on the PhidgetLED64. The Plasma is currently not connected.

The PhidgetLED64 is brand new, a thoughtful birthday gift from my dear wife :) First project for that will be the Ka-50 autopilot or the Ka-50 targeting mode control panel. Probably the latter as I use it more often.

not at all difficult to understand Russian
tcp (33k image)

the box o tricks

A few people have been asking how I hook up all my switches and lights to the PC. It’s quite simple really – via the box o tricks.

boxy. tricksy.
boxotricks (27k image)

In there is a BetaInnovations PlasmaV2 analogue/digital input board (essentially a joystick HID board), a BetaInnovations GammaRayV2 digital input board (256 inputs) and a PhidgetLED64 output board (64 LEDs). Rather than wire my panels directly to the boards which gets very messy after awhile, I breakout the board ports to five D37 sockets on the front panel.

The 4 on the left go to 4 of the 8 GammaRay ports (3 configured as digital input, one as rotary encoders) with 32 inputs on each port, and the one on the right goes to ports 0-15 on the PhidgetLED64. The Plasma is currently not connected.

The PhidgetLED64 is brand new, a thoughtful birthday gift from my dear wife :) First project for that will be the Ka-50 autopilot or the Ka-50 targeting mode control panel. Probably the latter as I use it more often.

yeah baby

Finally – with the aid of the TH2G, a 3.6GHz overclock and x48 mobo goodness, a solid 30FPS on high settings in instant action at 3x1280x768 plus a 1024×768 ABRIS/Shkval.

I retract my previous big fat oprah tits statement. THIS is big fat oprah tits
{{popup th2g_lg.jpg th2g_lg 1158×873}}th2g_sm (46k image)

There’s still a little bit of wierdness as the engine crashes every time I exit the mission (but retains the mission results) and screenshotting using the built-in screenshot key fails, but those things are minor. It works! It works!!!

For posterity, the settings used were {{popup th2g_settings.gif th2g_settings 800×452}}these. The only other mod is the 200 FOV mod to View.lua.

Return top