This morning I discovered a bug in the Raven firmware that causes premature baro-based deployments for flights exceeding 65,600 feet ASL.
After working with Jim Jarvis to understand the root cause of the in-flight separation of his sustainer at BALLS this year (he recoverd only his nosecone, with GPS units inside), I upgraded my vacuum test equipment so that I could find out how the Raven's pressure sensor behaves when the sensor's specified minimum operating pressure of 10 mbar (102,000 feet ASL) is exceeded. Much to my dismay, when examining the recorded data from the test, I found that the Raven's deployment logic thought the altitude immediately dropped as the pressure decreased through 0.054 atm, the equivalent of 65,600 feet. I traced this back to a transcription error in the equation used for that part of the atmosphere. I sincerely apologize to Jim Jarvis for spoiling his otherwise-marvelous flight.
As some background information, the international standard atmosphere model describes how to convert from pressure to altitude throughout the atmosphere. The equations for doing so are different for different layers. The equation for the troposphere is valid up to about 36,089 feet, then there is a different equation for the tropopause, where the temperature stays nearly constant from 36,089 to 65,617 feet, and then another equation for the stratosphere, in which the atmospheric temperature increases with altitude. That third atmospheric layer is valid from 65,617 feet up to 104,987 feet where the equation changes again. If an altimeter just uses the single troposphere version of the equation, it will read out about 80,000 feet when the rocket is actually at 100,000 feet.
https://web.me.com/gyatt/atmosculator/The Standard Atmosphere.html
When I wrote that section of the code, I carefully checked the equations in a spreadsheet, and against online calculators, to make sure that they provided correct results. Apparently I just dropped a minus sign when I typed it into the source code, and my test equipment was not sufficient to reveal this error during pre-production testing. This error only affects flights that exceed 65,600 feet; there is no error when operating below that altitude.
If you have a Raven and you're planning to operate it over 65,600 feet, please return your Raven for a firmware upgrade to:
Featherweight Altimeters
9887 S Isabel Court
Highlands Ranch, CO 80126
The new version of firmware that fixes this error will be 2.4. The firmware version is displayed in the Featherweight Interface Program when the Raven is connected to it, so users can verify that they have the updated firmware before attempting Raven-controlled flights over 65,600 feet. The silver lining to all this is that now I know the baro sensor used in the Raven provides well-behaved readings at very low pressures, so once the firmware is fixed, baro-based apogee detection appears to be valid well in excess of 100,000 feet. I'll do some further testing over the next week or so, with more units, to characterize the limits of this capability.
After working with Jim Jarvis to understand the root cause of the in-flight separation of his sustainer at BALLS this year (he recoverd only his nosecone, with GPS units inside), I upgraded my vacuum test equipment so that I could find out how the Raven's pressure sensor behaves when the sensor's specified minimum operating pressure of 10 mbar (102,000 feet ASL) is exceeded. Much to my dismay, when examining the recorded data from the test, I found that the Raven's deployment logic thought the altitude immediately dropped as the pressure decreased through 0.054 atm, the equivalent of 65,600 feet. I traced this back to a transcription error in the equation used for that part of the atmosphere. I sincerely apologize to Jim Jarvis for spoiling his otherwise-marvelous flight.
As some background information, the international standard atmosphere model describes how to convert from pressure to altitude throughout the atmosphere. The equations for doing so are different for different layers. The equation for the troposphere is valid up to about 36,089 feet, then there is a different equation for the tropopause, where the temperature stays nearly constant from 36,089 to 65,617 feet, and then another equation for the stratosphere, in which the atmospheric temperature increases with altitude. That third atmospheric layer is valid from 65,617 feet up to 104,987 feet where the equation changes again. If an altimeter just uses the single troposphere version of the equation, it will read out about 80,000 feet when the rocket is actually at 100,000 feet.
https://web.me.com/gyatt/atmosculator/The Standard Atmosphere.html
When I wrote that section of the code, I carefully checked the equations in a spreadsheet, and against online calculators, to make sure that they provided correct results. Apparently I just dropped a minus sign when I typed it into the source code, and my test equipment was not sufficient to reveal this error during pre-production testing. This error only affects flights that exceed 65,600 feet; there is no error when operating below that altitude.
If you have a Raven and you're planning to operate it over 65,600 feet, please return your Raven for a firmware upgrade to:
Featherweight Altimeters
9887 S Isabel Court
Highlands Ranch, CO 80126
The new version of firmware that fixes this error will be 2.4. The firmware version is displayed in the Featherweight Interface Program when the Raven is connected to it, so users can verify that they have the updated firmware before attempting Raven-controlled flights over 65,600 feet. The silver lining to all this is that now I know the baro sensor used in the Raven provides well-behaved readings at very low pressures, so once the firmware is fixed, baro-based apogee detection appears to be valid well in excess of 100,000 feet. I'll do some further testing over the next week or so, with more units, to characterize the limits of this capability.