A test flight for an unmanned commercial cargo ship linking up and delivering supplies to the International Space Station was delayed after a software error caused a communication glitch. The Cygnus spacecraft, built by Orbital Sciences, experienced a data compatibility issue with the ISS, and Orbital’s team was tasked with developing and uploading a software patch for the problem.
“Following the discovery of a data format discrepancy between an on-board International Space Station (ISS) navigation system and a similar system on Cygnus at around 1:30 a.m. this morning, today’s rendezvous with the station was postponed,” Orbital wrote in a September 22 blog post.
NASA and Orbital decided to push the date back while an update was prepared. The cylindrical, bus-sized spacecraft is now expected to connect with ISS and deliver its approximately 1,500 pounds of supplies September 29, with the delivery being streamed live at www.nasa.gov/ntv beginning at 4:30 a.m. EDT. Orbital announced in a September 26 blog post that the spacecraft was healthy and in orbit and that all major systems were functioning normally.
“Over the past several days, the Cygnus engineering team has developed, validated and uploaded the one-line software ‘patch’ that resolved the GPS data roll-over discrepancy that was identified during the initial approach to the ISS last Saturday,” the more recent update read.
The Cygnus flight, which launched September 18, is the final step in Orbital’s bid for a $1.9 billion contract to make eight delivery runs for NASA, which could start as soon as December. If everything goes smoothly, Orbital will join SpaceX as the second commercial player in space. Given the lucrative stakes of such an event, avoiding critical software errors has been of utmost importance. While this glitch was relatively minor, it underscored the possibility that software can be at the root of a wide variety of technical problems with substantial financial outcomes.
Using tools such as static analysis software, developers can ensure that they are eliminating the types of simple errors that are easy to overlook but capable of having literally astronomical effects. While developers can generally fix issues with a patch later on, sometimes doing so can throw off timing, making it important to get things right the first time around.
Software news brought to you by Klocwork Inc., dedicated to helping software developers create better code with every keystroke.