AltOS 1.1 — Bug fixes and some nice new features

Bdale and I are pleased to announce the release of AltOS version 1.1.

AltOS is the core of the software for all of the Altus Metrum products. It consists of cc1111-based micro-controller firmware and Java-based ground station software.

We've spent the last flying season chatting with people flying TeleMetrum and TeleMini boards and they came up with some great ideas to add to the system.

AltOS Firmware — Features and fixes

There are bug fixes in both ground station and flight software, so you should plan on re-flashing both units at some point. However, there aren't any incompatible changes, so you don't have to do it all at once.

New features:

  • Apogee-lockout timer. For situations where the normal apogee determination algorithm could be fooled, we've added a timeout value to prevent premature firing of the apogee charge. Normal flights won't need this, but a couple of users asked for this feature.

  • RSSI value for Monitor Idle mode. The TeleDongle firmware has been updated to report signal strength information for data received from the altimeter. This allows the user to see how well the radio is working without having to switch to flight mode.

  • Force the radio to 434.550MHz. This is useful with TeleMini devices where the only way to talk to the device is through the radio. If you don't know the frequency, it's really hard to make that work.

Bug fixes:

  • Stale telemetry data reported when switching frequencies. TeleDongle would accidentally re-transmit old telemetry packets when the radio frequency was changed. This would be harmless except that when scanning to find the frequency used by an altimeter, you'd appear to get packets at every frequency.

AltosUI — Easier to use

AltosUI has also seen quite a bit of work for the 1.1 release. There aren't any huge new features, but some activities are restructured to make them easier to navigate. And, of course, we've fixed a bunch of bugs.

New features:

  • Configure Ground Station activity. This provides a way to set the default radio frequency for each TeleDongle. This replicates the frequency menu present in the Monitor Flight activity, but doesn't also bring up that giant window.

  • Support the apogee lockout timer. This just adds another entry in the dialog for configuring the altimeter to configure the new timer. By default, the timer is disabled, allowing the apogee detection code in the flight computer to operate normally.

  • Add imperial units option. When enabled, this uses imperial units (feet and miles) for all values on the screen and in the voice announcements.

User interface changes:

  • Make the look-n-feel configurable. Java offers many different user interface styles on each platform. This exposes the available set and lets the user pick one. By default, we continue to use the native platform appearance.

  • Add an 'Age' element to the Monitor Flight UI. This shows how long it has been since the last valid telemetry packet was received, making it easy to tell when communications are lost.

  • Change flight data downloading. Instead of selecting which to download and which to delete at the same time, the interface now has separate steps for downloading and then deleting files. This makes it easier to verify that the files were downloaded before deleting flights from the on-board memory.

  • Re-compute boost and landing times. Given the whole flight history, it's easy to find the time when the rocket started and stopped flying. Having these get recomputed means the boost time, acceleration values and main descent rates are computed more accurately.

Bug fixes:

  • Wait for 10 valid GPS messages before marking GPS as ready. Before this fix, GPS was marked as ready when 10 valid packets were received from the flight computer after the first valid GPS data arrived. This waits for 10 valid GPS packets instead.

  • Fix Google Earth file export. The format requirements for Google Earth files became more strict in recent releases; this patch changes how the files are formatted to make them work again.

  • Make AltosUI run on Mac OS X “Lion”. Apple changed the default heap size for Java applications with this release, dramatically reducing the memory available to applications. This would cause map tiles to fail to load and other random problems.

  • Improve COM port handling on Windows. This eliminates the need to wait 5 seconds between closing and re-opening devices, and also eliminates other spurious errors when opening devices.