wiki/ news/ 2005-11-10 - Status report for IBM

IBM gave us a $21,000 grant to develop software utilizing Linux on their Power architecture systems.

We have interpreted this to write a new core avionics package running upon a PowerPC 603e FlightComputer.

Summary

We have selected a PowerPC based FlightComputer for further avionics work (MENS Micro MPC-5200).

We have researched the GNU cross-compiling toolchain and investigated porting our simulation environment using qemu.

We completed our previous generation avionics system and had a completely successful launch, in which we maintained 802.11b communication past Mach 1 and downlinked 98% of the telemetry from the rocket from launch through termination of flight. We confirmed that the avionics software successfully detected apogee and ordered chute deployment at the correct time. Both the timer backup system and ground uplink override were confirmed to work.

The end result of the launch cleared away our legacy avionics system, making way for focused PowerPC development.

We have spent most of the grant money on the purchase of the PowerPC board and peripherals (PCMCIA daughterboard, power supply) and student funding. We intend to spend the remainder of the grant to reconstruct the rest of the avionics hardware.

Objectives

The project objectives are several-fold.

First, a realtime Linux development toolchain for Power based on the GNU compiler tools will be put in place, enhanced, and evaluated. GDB stubs suitable for real-time interaction with the flight computer will be developed.

Second, a realtime software infrastructure for Linux on Power will be put in place. The CAN driver will be ported or replaced as needed for sensory node communication. Low-latency and other Linux scheduling options will be further explored. RT-Linux, an option considered earlier but not chosen, will be reconsidered.

Finally, a report will be written comparing the functional and performance characteristics of the "old" x86-based and "new" Power-based infrastructure, and discussing development issues. This work involves the deployment of open-hardware, open-software systems based on the next generation of high-performance processors suitable for a broad range of applications. This sort of deployment is key to meeting the requirements of a computing infrastructure that is increasingly distributed, mobile, autonomous, and agile.

Timeline

Here is what we have done since we obtained the grant.

Budget

 $4000  Research Asst. for one quarter term
 $1400  PC-104 MensMicro PPC flight computer + dev system
 $ 300  PC-104 power supply
 $ 200  PC-104 PCMCIA carrier board (wireless + flash)
 $ 100  Flash drive
 $  50  Orinoco 802.11b wireless card
 -----
 $6050  TOTAL

Achievements

We made several milestones this year in the development of the rocket avionics.

Simulation environment

In order to do parallel distributed development without access to the avionics hardware, we have developed a sophisticated simulation environment, in which the actual avionics software is hosted on the development PC for testing. The simulator provides a physics model for a typical flight profile and simulated devices (CAN bus and sensor nodes). The simulator is implemented in C++.

We plan to enhance the simulator to provide a simulation environment for the embedded software written for the individual CAN sensory nodes.

Rigorous testing regimen

We developed a rigorous testing regimen to ensure a successful launch attempt in the field. The logistic procedures we developed will ensure successful future PowerPC launches.

CAN bus debugger hardware and software

We developed a small CAN node which links the bus to a serial port, used for debugging the network.

GPL-GPS

Our project leader AndrewGreenberg completed his Master's thesis on an open source GPS system. We intend to use enhanced versions of this system in the rocket to maintain GPS lock at high speeds by using the input from accelerometers.

Future directions

Over the next year, we will reconstruct the rocket airframe and design the next generation avionics network and PPC Flight Computer software. Once the main infrastructure is in place, we can work on the processor intensive algorithms required for active guidance, such as Kalman filters and other adaptive algorithms.

[!] insert milestones for spending remainder of grant money and meeting the Objectives

 $2300   2 backup flight computers & peripherals
 $1200   buy JTAG interface debugger
 -----
 $3500   TOTAL

 $11,000  remainder buying components for new avionics
          - dozens of ARM chips
          - board fab
          - misc. components and connectors