2/22/10

Posted by Florian Wardell | 0 comments

iPhone App: F-Sim Shuttle

iPhone App: F-Sim Shuttle

A flight simulator on a phone. No wait. A Space Shuttle flight simulator on a phone. Just think about it for a minute. Think about the progress since the Wright Brothers made their first flight at Kitty Hawk in 1903. We now have a space station on orbit that’s permanently occupied by humans.
Think about the first cell-phones. We are now able to take videos with average hand held phones that fit in your pocket.
It’s just crazy.

Designing a shuttle simulator for the iPhone is bold for various reasons: the platform may not seem appropriate, mostly because of its small screen. Certified pilots say that even with a simulator like FSX, 30″ screens aren’t enough, and that the limited field of view is the biggest obstacle to realism. Also, the lack of physical controls doesn’t seem to be suitable for flight simulation, which is extremely input-critical. Most simulator enthusiasts will tell you that unless you use a joystick, not to mention a yoke and pedals, flight simulation is just a game.
Then, there’s the craft that’s being simulated: How can a sub-1GHz processor seriously try to simulate the most complex object ever designed by mankind? Read on if you want the answers.

As you may know, F-Sim shuttle isn’t the first attempt at bringing the Space Shuttle to the iPhone. Laminar Research, known for their famous cross platform X-Plane desktop simulators, already released an app called “Space Shuttle”, in which you are able to control the orbiter during docking, reentry, final approach and landing. I was actually on the verge of writing a review for this app because I love the concept, but a few days ago, I stumbled upon F-Sim Shuttle, which really blew my mind.

As soon as you start the app, you’ll notice how polished the user interface is compared to Laminar’s app. It’s glossy, clear, beautiful to look at and well organized. Four options are available: “Quick flight”, “New flight”, “Manuals” and “Credits”. Select “New flight” and the flight planing screen will show up. Here, you can choose where you want to land at: right now we’ve got the choice between Edwards Air Force Base and the Kennedy Space Center, both landing sites that the Shuttle has actually landed at. Edwards is usually used as a backup landing facility in case the weather at KSC isn’t good enough. Anyway, once you’ve selected the facility, you can select the runway. For those who aren’t familiar with aeronautics, the runway number corresponds to its heading. Runway 33 has a heading of roughly 330 degrees for instance. While there is only one physical runway at KSC, you’ll have the choice between two approaches (33 and 15), depending on the direction you’re landing in. The runway is chosen according to weather: always land into the wind.

Once you’ve chosen the runway, you’ll have to decide between flying the full approach or the final approach. Contrary to Laminar’s app, F-Sim Shuttle only simulates the last stages of the orbiter’s flight: final approach will put you fully aligned in front of the runway, on the glide slope, ready to fly the final few miles to the runway, to pre-flare, flare, touch down and de-rotate. The full approach will put you at roughly 40,000 feet. In order to align the shuttle with the runway, you’ll have to fly the Heading Alignment Cone (HAC) first. Both flight phases are beautifully explained in the developer’s manual.

Now that you know what the settings mean, it’s time for your first flight. The first thing you’ll notice is how beautiful the scenery is. I got used to Laminar’s FS95′-like pixelated brownish mesh with a runway in the middle of nowhere, but F-Sim really raised the bar, thanks to satellite imagery. It just looks incredibly realistic. For those of you who watch NASA TV, you may have seen a live landing once. My favorite camera angle is when the Heads Up Display (HUD) is visible, because it gives you an idea of how fast and high the orbiter is flying. Well, F-Sim Shuttle will give you exactly that view, and if you don’t look carefully, you can really mistake it for a real world video of a HUD perspective.
But all the graphical realism in the world doesn’t help if the flight dynamics aren’t accurate, and this is certainly an area where F-Sim’s simulator shines. Not that I have ever been in control of Atlantis, but the orbiter behaves exactly like I imagined it would. The controls are slow yet quite accurate. It’s quite easy to guide the shuttle along a specific path, and flying it is a real pleasure. But beware: try to keep your movements smooth, because otherwise you might trigger “pilot induced oscillations” which will require some time, distance and energy to correct. The Space Shuttle was one of the first “fly-by-wire” aircraft ever built. This basically means that the flight stick isn’t directly linked to the flight surfaces, but that the input commands first go through the computer, which analyzes what the pilot wants to do and calculates the correct movements of the flight controls. This allows the computer to restrict the pilot’s actions in order to protect the flight envelope. The most basic form of flight envelope protection is a protection against stalls: the computer will lower the nose of the aircraft if the airspeed is too low. On the iPhone, the computer also controls the speedbrakes.
The flight envelope protection and fly-by-wire systems are quite hard to test on the iPhone because the the device controls the calibrations of the tilt angle of the device, which in some way is like a trim function. On the X-Plane apps, a menu dialog would allow you to calibrate the tilt of the iPhone so that you could play in virtually every position, but F-Sim seems to have implemented this automatically.
As you can imagine, I have tried to stall the orbiter. The maneuver is quite simple: just hold a positive pitch (10 degrees or so) and observe as the airspeed drops. At about 180 knots, the orbiter’s nose will start to pull down but I can’t tell if this is due to a simulated fly-by-wire (I guess fly-by-wire would have pulled the nose down earlier), or due to to the Space Shuttle’s quite unique aerodynamics.
It is however quite easy to pull excessively negative Gs, and an “excessive load limit” alert will show up. Overspeeds have their own alarm too. There’s also basic simulated damage. Touch down too hard and a tire will blow for instance.

The Heads Up Display is a gem. X-Plane uses the same HUD on a Cessna, 777 and the Space Shuttle, which creates obvious limitations. F-Sim, however, features a beautiful (gorgeous!) instrument, that has almost all the indications of the real thing. As for the flight maneuvers, the developer has compiled a very useful manual on the various de-clutter modes, indicators and guidance systems. It’s a must read before you attempt the landing. The only thing missing here is a runway overlay on the HUD, which can be quite useful if you’re doing the approach with low clouds. It turns out that both the clouds and the runway overlay are planned for an upcoming update (see screenshot), which is great news. Additional airfields, external views, replays, failures and night landings are also planned.

The upcoming update will feature clouds and a runway overlay
The upcoming update will feature clouds and a runway overlay

Even though the the Space Shuttle is a uniquely complex vehicle, it’s basically just a very heavy glider in the final stages of its flight, which is why a device like the iPhone can simulate it surpringly well. Also, keep in mind that the the computer in the Apollo capsules were less powerful than a 10$ solar-powered calculator you can find in any store nowadays.

As for the controls, the iPhone is actually convenient for flight simulation because its physical state (bank and pitch) will reflect the aircraft’s attitude.
F-Sim Space Shuttle may not simulate as many situations as its X-Plane counterpart, but what it does, it does way better. The sounds (altitude and navigation shout outs), the visual aids (PAPI and ball/bar) and landing analysis are some of the many impressive features you’ll find in the app. The combination of photo-realistic graphics, smooth user interface and amazing flight dynamics made this app one of the most spectacular pieces of software I’ve ever come across. If you’re an aeronautics enthusiast it’s must have, and if not, you should buy it anyway just to see what the iPhone can actually do.

F-Sim Shuttle is so amazing that I just had to get in touch with Sascha Ledinsky, the Austrian developper of the App, and ask him a few questions.

TechHaze: Tell us more about yourself. What professional field do you come from?
Sascha Ledinsky:
I’m 35, happily married and we’ve got two lovely kids: A five year old girl and a three year old boy.
After college I started to work as a network engineer. The Internet was still relatively new by that time, so it was quite exciting. Later I focused on software development. I’ve always been interested in mathematics and computer science and did a lot of self-study in these fields. I’m also working on an open source 3D modeling and animation tool called JPatch. It’s idling along these days, but I hope that I’ll find the time to continue development soon.

TH: What compelled you to develop F-Sim Shuttle? Is this you first iPhone project?
SL: I’ve always been interested in space flight, and I remember watching the first shuttle launches live on TV when I was six years old. I’m also a huge fan of X-Plane on the desktop. You can land the shuttle there too, which is pretty cool. But it had no guidance information, no flare indicators, etc. in the HUD (compared to the real orbiter’s HUD, as seen on the landing videos on NASA-TV). So I started writing an “external” Space Shuttle HUD that connected to X-Plane and displayed the missing information – just for fun, I’ve never planned to release it. Later, when I bought an iPod touch and realized its tremendous 3D graphics performance, I had the idea of porting it to iPhoneOS and developing it into a full blown flight simulation.

TH: Why did you choose the iPhone over other platforms for F-Sim Shuttle? Do you plan on releasing an android app?
SL: Short answer: The App Store. I’ve read a lot of different stories about it, some about successful projects, others about projects that failed commercially. I already had a MacBook, so I’ve downloaded the SDK and decided to start a little experiment to find out for myself.
Android is interesting and I’ll definitely keep an eye on it (and other mobile platforms), but right now my focus is on the iPhone and the iPod touch.

TH: Tell us more about your design process. What did you start with?
SL: I had the HUD and a very rudimentary flight dynamics model on the PC when I stared porting it to the iPhone. I had to learn to write for the iPhone first, so I developed the graphics related code on the iPhone (I knew OpenGL quite well from my other project) while improving the flight model on the PC in parallel. I had to write a lot of extra code on the PC as well: Programs that took the ortho-images, pre-filtered them and converted them to textures, programs for visualizing the forces that act on the vehicle (to debug the flight model), even a “virtual wind-tunnel” to get some data I needed for the speedbrake logic.

TH: The Shuttle is one of the most complex objects ever built, yet you managed to design an astonishing simulator that runs…  on a phone. Where did you get your data from? Have you ever ridden in a full flight space shuttle simulator? Did you get feedback from an actual astronaut?
SL: There’s a lot of data available on the Internet, but my primary source was NASASpaceflight.com. There’s an incredible amount of information in their “level 2″ area, including original NASA documents and a lot of videos. I watched all the landing videos and read some chapters of the “Space Shuttle Crew Operations Manual”. There is also a detailed description of the HUD and all its display functions in the “Guidance And Navigation Systems Brief” which provided invaluable information. I’ve watched all of MIT’s iTunes-U lectures about the shuttle and read “From Runway to Orbit”. Last not least there’s a paper about energy management which contains very detailed information about the guidance system: The guidance in F-SIM basically uses the same equations as the real Shuttle computers. The orbiter’s mass, its center of gravity, the surface area and geometry of the wings and control surfaces, even its moments of inertia are all modeled accurately in F-SIM. I could not find any wind-tunnel data of the actual orbiter, so I had to guess there. But I knew a lot of other figures, like its lift over drag, turn rate in the HAC, the deceleration in level flight above the runway, etc. so whenever I had to guess I tried to match those performance numbers. I’ve never got a chance to ride a space shuttle simulator, and so far there’s no feedback from astronauts. But I’ve got very positive feedback from a shuttle engineer working at KSC.

TH: F-Sim Shuttle is a wonderful app, and some already see it as a foundation for a whole family of  new sims. Do you plan on developing a powered aircraft sim for the iPhone?
SL: There’s still a lot of things I’d like to add to F-SIM Space Shuttle first, like an external view and landing replays. But if it sells well (and things are looking quite good) I’d love to develop a sim for powered aircraft.

TH: There has been a lot of buzz about Apple’s new device lately, the iPad. Do you plan on endorsing the device? Also, do you plan on developing a desktop simulator, now that Microsoft Flight Simulator is dead?
SL: The iPad looks promising. All iPhone Apps should run on the iPad out of the box, but with the larger screen and better performance I could use even higher resolution textures and perhaps a full 3D cockpit. So yes, I’m thinking about a special iPad version, but I can’t make any promises yet. Right now I don’t have any plans for a desktop version. What’s interesting is WebGL: A trimmed down version that runs in a web-browser, that could be fun.

TH: Tell us about your experiences with Apple, as a developer. Are you satisfied with the way the App store works?
SL: X-Code is a very nice IDE and the Interface Builder is a powerful tool. I’ve got about 7 years of experience as a Java developer, but switching to C/Objective C and the iPhone platform was easier that I thought. It’s a very interesting platform with a powerful SDK and good documentation, so from a developer’s perspective you can’t ask for more. As for the App Store: Well, everything is automated and works fine. At the beginning I was a bit confused by all the certificates you need to digitally sign your apps, but the documentation is OK and you can also find help on the net. I was positively surprised by the app review process. I’ve read a number of horror stories about Apps being rejected constantly or in-review for several weeks. But with F-SIM I just uploaded it and four days later it was “ready for sale”, so I can’t complain.

TH: Sascha, thank you very much for your time. We can’t wait to see your fantastic project evolve!

F-Sim Space Shuttle is available for 1,99$ at the Apple App store. Go get it.
Update (03/29/2010): Version 1.2 now includes full runway overlays, night landings, a cloud layer and adjustable visibility!

Contact the author via email

VN:F [1.9.5_1105]
Rate this post
Rating: 5.0/5 (7 votes cast)
iPhone App: F-Sim Shuttle, 5.0 out of 5 based on 7 ratings

Related Posts

Leave a Reply

Powered by WP Hashcash