FlightRecord 1.4

Flight Record is an an application that allows you to fly your Parrot AR.Drone and simultaneously record the video. This video can be exported to your iOS Camera Roll for trimming, uploading to YouTube, or editing in iMovie.

Version 1.5 includes the following great features:

  • Support for latest firmware with the ARDrone SDK v1.7 – note that the new video codec (P264) may not yield the best video quality. Try VLIB and other video settings to find the settings that give you the best video and flight responsiveness
  • iPad support for iOS 4.2
  • Video recording to H264 QuickTime format (up to 15fps)
  • Export to camera roll for trimming, posting to YouTube or use in iMovie compositions.
  • Export video files using iTunes File Sharing
  • Standard AR.Drone flight controls and heads up display with enhanced resolution graphics for the Retina display.
  • control modes such as Left Handed and Disabled Accelerometers. “Ace” mode has been recreated for one-handed flight like in early versions of AR.FreeFlight
  • Emergency reset was added back since it was disabled in the 1.5 SDK.
  • A virtual instrument panel, including Directional Gyro, Artificial Horizon, altimeter, and forward speed. These plot the navigational data received from drone.
  • Still image capture
  • Less annoying “preflight briefing” – option to disable after first appearance. (Re-enable in settings app)
  • Overlay of instrument panel on video and still image.
  • Television out with supported device and accessory cable. (iPhone 4 and 4th Gen iPod touch only)
  • Optional video recording modes: hard-coded 15fps or actual timecode.
  • While swipe-to-delete was available in 1.1, added a “Edit” button to the video library since deleting videos with a swipe was non-obvious.
  • “Land on Quit” option will send one final request to the drone to land in the event the app is exited. Note that this is not meant to be used as an emergency stop, as there are instances where it may not work (in the event of communications failure, or application crash, for example)
  • Significant performance enhancements allowing all these great new features.
  • Application will opts-out of iOS multitasking, and will quit completely on exit.
Note: the AR.Drone does not have a magnetometer or compass. Hence the Directional Gyro gives a relative heading relative to the direction that the drone is pointed when power is applied to the drone. If you point the drone north while the battery is connected to the drone, then the Directional Gyro indicator will track the compass direction. Like a real directional gyro, inherent precession will cause the indicator to drift over time.
We’re confident in the performance of Flight Record 1.4, we’re starting to push the limits of what can be accomplished without impacting flight control.
Each user’s device configuration and setup is different, so evaluate the performance and use of the application yourself with your configuration in a controlled situation. A 4th generation device is strongly recommended. Each of the new features (TV-out, instrument overlay, etc) will add additional processing overhead to the iPhone or iPod Touch. Disabling such features can reduce processing overhead. Avoid multitasking with other applications to reduce load and enable Airplane mode to reduce interruptions.
As with any new drone flight control app, please test in a safe and controlled situation until you are confident and aware of the performance characteristics and control nuances.
For support email support (at) allaboutjake (dot) com

Options

All of the standard AR.Done options are available as well as these additional options:
  • Land When Exiting – Will request that the drone land when the app is exited. This is not meant to be used as an emergency stop, as there are several situations where the drone may not receive the signal. For example, if there is an application crash, or if the communication to the drone is interrupted, then this signal may not be received.
  • Instrument Configuration – you can show and hide the Directional Gyro and Artificial horizon, as well as the altimeter and speed overlays. Also, you can select the unit of measure for the altimeter and speed overlays. These settings will affect the video overlay.
  • Instrument overlay – determines if the instruments should be overlaid on to the video and still image capture.
  • Frame Rate – The 15fps mode is akin to the FlightRecord 1.0 encoder where each frame was recorded at a hard coded 15 frames per second. The actual mode records each frame at the time-code it was received. The 15fps mode may result in video that plays back faster than real time, while the Actual mode may result in video with stutters and jumps to keep the video playing back at a more real-time rate.
  • TV out – will mirror the video feed to an attached TV using a supported device and video cable. Your device must support TVOut and the cable must be supported by iOS.

System Requirements

Sadly, the app will not run on just any iOS device.
  • iOS 4.1 is required, due to the fact that many of the APIs needed are not available in previous versions. This means iPad support is currently unavailable. We’ll evaluate iPad support once iOS 4.2 is released.
  • Jailbreaking is not supported. While it might work, it is not a configuration that I test or support.
  • An ARMv7 Processor is required. This means an iPhone 3GS, iPhone 4, or iPod Touch 3rd or 4th Generation is required. Note that the 8GB iPod touch without a front facing camera, which many people bought during the “3rd generation” timeframe is actually a repackaged 2nd Generation iPod Touch, and does not support the app.
  • We strongly recommend a 4th generation (iPhone 4, iPod Touch 4th generation) as performance on older devices may not be acceptable.
  • Also, I’m finding that its possible that some devices may not have the necessary video encoder onboard. If you find that the app is producing ~0 byte videos, you may have a device that doesn’t have the necessary encoder. Sadly, as a one-man operation I don’t have a library of iOS devices to test on, so please let me know if you encounter this problem. As a general rule, if your device runs iMovie for iPhone, you should be alright. Some other devices work too. For example iMovie for iPhone can (nudge nudge, wink wink) be made to run on an iPhone 3GS, so the 3GS has the ability to encode video.

Firmware & SDK

On Feb 14, 2011, Parrot released a new version of FreeFlight (v1.7) with new firmware (v1.5.1). This release broke compatibility with many third party drone apps, including FlightRecord. The new adaptive video option causes the video to appear purple or green. The camera switch button also doesn’t work. Parrot did not release a new SDK to developers for over a week. Once we had SDK 1.6, it took a week or so to update FlightRecord to be compatible. FlightRecord 1.4 has finally been released, updating compatibility.
The 1.5.1 firmware had several new features but also introduced some problems: 

  • A new “adaptive bitrate” mode which allows the video quality to adjust based on available network bandwidth.  This causes apps compiled with the 1.5 SDK (FlightRecord 1.3 and below) to show Green/Purple video.
  • The “switch cameras button” doesn’t work for apps compiled with older SDKs.

On October 7, Parrot released a new version of AR.FreeFlight including a new version of the firmware (v1.1.3). FlightRecord uses the latest 1.5 SDK from Parrot and supports this new version. Ace control mode was removed by Parrot in the 1.5 SDK. I am investigating adding it back in a future version.

The 1.1.3 firmware had several new features:
  • Takeoffs are now smoother, rather than the old “full power” variety.
  • The initialization of the control application will cause an in-flight drone to land.
  • There might be more! These are just what I noticed.
These changes are part of the firmware and are not part of any control application. Be alert for how your drone might behave differently after any software (or firmware update)

Tips for Flight

  • Make sure there are no other AR.Done applications running in the background. (Double tap the home button and tap/hold apps in the multitasking tray to quit them)
  • Always test a new AR.Drone control application (FlightRecord or otherwise) in a controlled situation. A large indoor area is recommended to start out. Start with a short flight. Learn the nuances and control performance of each application
  • Practice with the app to make sure the button layout, controls, and UI flow are well understood.
  • Practice relaunching the app and getting to flight controls in case a problem, application crash, phone call, or other event causes you to leave the app and you need to quickly return to the flight controls screen.
  • Before flight, make sure all controls are operational. The flight stick and buttons should all respond to your touch even when the drone is not in flight.
  • Avoid hitting the “back” button while in flight. (Version 1.1 of FlightRecord will hide the button while in flight)

File Sharing and Exporting Videos

See the image below for instructions on using iTunes File Sharing to export the items in your media library to your desktop computer.

Frequently Asked Questions

That Briefing Window is Annoying!
Is that a question? Yes, I know, its kind of meant to be annoying. People need to be reminded that every flight has the potential to end badly and that we’re not responsible here at All About Jake, LLC even if we know about a bug that could cause your problem. However, in version 1.1 I’ve added the option to disable the preflight briefing after the first time. This doesn’t release you from the responsibility, so keep in mind you use the app at your own risk.
What about an iPad version?
FlightRecord is a universal application that runs on both the iPad and on the iPhone/iPod Touch.  Please see the specific hardware requirements as not all iPods and iPhones are supported.
What format is the recorded video?
This has been changing as we develop the application and improve things. It will be an QuickTime (MOV) file encoded in h264 320×240. Originally hardcoded to 15fps (the same rate programed into the drone) the 1.1 update has an option to use a hardcoded 15fps or a more variable frame rate to handle the fact that the frames are sometimes delayed and don’t always come in at exactly the right time. The hardcoded rate resulted in the video to “speed up” at times. With actual time-coding, things should be at the right speed, but you will notice the same stutters and jumps that you see from the camera that you’re used to in the normal FreeFlight app.
Can I be a beta tester?
We’re not currently looking for beta testers, but if we are, we’ll let you know!
How much will it cost?
$4.99 regular price.
What? Not FREE!?
No, not free. I know, everyone likes a free app. This app, however, took some significant work even in its current (and simple) state. We hope (no promises) to add new features as well, to give the app even more value for your dollar. We’re not expecting to make a killing on this app.

Known Issues

  • TV-Out is only available on the iPhone 4 or iPod Touch 4th generation due to an iOS/hardware limitation on older devices such as the iPhone 3GS.
  • With SDK 1.6, the adaptive bitrate toggle seems a bit flakey– it doesn’t always save the setting.  This seems to occur even in AR.FreeFlight so I’m just chalking it up to quirks with the current Drone Firmware and SDK 1.6
All Parrot trademarks are the sole and exclusive property of Parrot S.A. This application is not endorsed by Parrot.

Navigation