Last time, I promised I would prepare you for a short test-flight. We won’t go into a full orbit, but we will turn on the thrusters, launch, and land safely. This is a real mission. We will actually launch the Stellaris into firmware low-orbit.
The Toolchain
We need a tool to transform the flight plans into something the Stellaris can understand. I will call this The Toolchain. Having a good toolchain (compiler and supporting libraries) will save us a lot of trouble. Well, it will save you a lot of trouble; I already have a decent toolchain. At the very least, the toolchain should be aware of the following:
- Hard-float “-mfloat-abi=hard -mfpu=fpv4-sp-d16” compiled libraries
- A minimal C library
- libnosys
I will be using the summon-arm toolchain, but any arm-none-eabi will do. I won’t go over the details of setting up this or that toolchain. The options are plentiful.
The Debugger
We need a tool to monitor the Stellaris in-flight, and solve any potential issues. Let’s call this tool The Debugger. I will be using OpenOCD since it works for me (TM). You will need version 0.7.0 or newer, with ti-icdi support enabled. I will say no more.
HINT: if you need to build it from source, pass “–enable-maintainer-mode –enable-ti-icdi” to the configure script.
The Flight Plans
This is the fun part. I have been working since last year on Flight Plans for the Stellaris Launchpad. Courtesy of flight engineer Peter Stuge, the flight plans are available on the QiProg website (more on that later).
OK, let’s get them:
$ git clone git://git.stuge.se/vultureprog.git $ cd vultureprog
And the flight plans for the subsystems:
$ git submodule init $ git submodule update
Now it’s time to choose our mission:
$ git checkout 841ba3460767eefc2c744ec03c37e7e383cd8485
Now that we have everything we need:
$ make
This should get the Flight Plan primed and ready.
The Launch
Assuming everything went fine so far, we are go for launch. Prepare your Stellaris Launchpad. When you are ready for launch:
$ make flash -C boards/lm4f/stellaris-ek-lm4f120xl/
WARNING! Do not look directly in the thrusters (LEDs) of the Stellaris. Thrusters are operated at full power and may cause temporary loss of vision.
If you see the thrusters (LEDs) alternating, then launch was a success. Congratulations! During the test flight, you can try pressing the buttons on the Stellaris (HINT: they do something).
The Announcements
Peter Stuge has been kind enough to set up a website for QiProg on his own time. It’s http://qiprog.org . Stable code will be pushed to the git repositories at http://git.qiprog.org. Development will be kept on github for the time being, on my vultureprog repository. I will only be pushing stable updates to qiprog.org.
That’s all for now. Mission accomplished.