X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=AltOS%2Findex.mdwn;h=156e02be93d50354807238792ee67ea9f6ba5a2f;hb=e31c20bb13f58cc196dfa0e9c34bd37dd409c8ed;hp=92f8a45f66ff1976f48b1bbe227e0d66b2850248;hpb=9ae4bbc2b145353c7961984fa5e2d186ec884443;p=web%2Faltusmetrum diff --git a/AltOS/index.mdwn b/AltOS/index.mdwn index 92f8a45..156e02b 100644 --- a/AltOS/index.mdwn +++ b/AltOS/index.mdwn @@ -1,50 +1,106 @@ # AltOS -This is Keith's "operating system" for [TeleMetrum](../TeleMetrum/). - -## Motivation ## - -[FreeRTOS](http://freertos.org) turned out to be too heavy for our needs, so -Keith started over from scratch and wrote something that does just what we -needed. - -In addition to the firmware for [TeleMetrum](../TeleMetrum) and -[TeleDongle](../TeleDongle) boards, the AltOS source tree also includes a -number of utilities useful for monitoring and logging telemetry during flight, -post-processing flight data for analysis, and utilities for updating firmware, -and developing and debugging new functionality. The first generation of these -utilities were Linux-only, but we are gradually evolving the code to work -across multiple platforms, including Mac and Windows systems. - -## Features ## - -### User View ### - -### Developer View ### - -* Licenses - * The software is licensed [GPL version 2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html) - -## Problems ## - -## Artifacts ## - -The source is available from [git.gag.com](http://git.gag.com) in the project -[fw/altos](http://git.gag.com/?p=fw/altos;a=summary). +AltOS is the name of Keith's firmware "operating system" for +Altus Metrum products. + +In addition to the firmware for hardware products like +[TeleMetrum](../TeleMetrum), [TeleMini](../TeleMini), and +[TeleDongle](../TeleDongle), the AltOS source tree also +includes AltosUI, which provides for flight monitoring, post-flight +analysis, device configuration and firmware updating. AltosUI runs on +Linux, Mac OS X and Windows. It's written in [Java](http://java.com) +and offers the same functionality and interface on all three +platforms. A small platform-specific library communicates with the USB +interface on the Altus Metrum devices. + +There are also Linux-specific tools that provide lower level access to +the devices which are useful for developing firmware for the devices. + +We maintain a list of [launch site GPS coordinates](launch-sites.txt). If +your favorite launch site isn't included, please let us know! + +## Available Versions ## + +There is a single manual for most Altus Metrum products, which is available +in [html](doc/altusmetrum.html) and [pdf](doc/altusmetrum.pdf) formats. + +We also have an AltOS internals document for programmers +in [html](doc/altos.html) and [pdf](doc/altos.pdf) formats, and a +document describing the AltOS over the radio protocol +in [html](doc/telemetry.html) and [pdf](doc/telemetry.pdf) formats. + +If you're running Windows 8, you should take a look at [Installing AltosUI on +Windows 8](Win8) which will help you install the operating system +drivers needed to communicate with the USB hardware. + +[[!inline pages="./releases/* and !*/Discussion and !*.html and !*.bz2 and !*.zip and !*.exe" show="10" rss="no" raw="yes" ]] + +## Source Code ## + +The latest source, which may include unreleased work in progress, is always +available from [git.gag.com](http://git.gag.com) +in the project [fw/altos](http://git.gag.com/?p=fw/altos;a=summary). + +If you need to debug code on an Altus Metrum product, or want to do custom +development, you need a 2.X version of SDCC. Version 3.X adds features that +bloat the code generated on 8051 enough to overflow the available flash memory +size. As a result, we maintain a fork of SDCC we call 'cc1111' that is based +on the last upstream version of SDCC 2.X, plus a highly modified sdcdb with +support for the cc1111 debugging interface. This is avilable as a package in +Debian, or you can find the sources on [git.gag.com](http://git.gag.com) +in the project [debian/cc1111](http://git.gag.com/?p=debian/cc1111;a=summary). + +## Future Plans ## + +Bug reports, feature requests, and planning for AltOS releases happens +on the [Altus Metrum Trac Site](http://trac.gag.com/altusmetrum). + +A number of features are implemented or in process in the sources available +in our publicly visible repository that are not part of the current stable +release. + +* Motor characterization. Because TeleMetrum contains a + high-resolution, high-frequency accelerometer, it is possible to + take the data from that and compute an accurate thrust curve for + the motor. + +* Comprehensive PDF and/or HTML -based flight report. Construct a + complete report of the flight suitable for publication on the web + that includes graphs of the flight and details about motor + performance etc. + +* Publish flight data to the Altus Metrum web site. This will allow + you to share your flight data with others, and let you download + flights published by others. + +There are any number of additions that could be made to this list; feel free +to send along ideas that you’ve got. Of course, all of this software is +licensed under the GNU General Public License, so you can get the source and +hack on it in the comfort of your own home. + +## Platform Specific Notes ## ### Linux ### -If you use [Debian](http://www.debian.org), then a pre-built package for -32-bit x86 is currently available here: +If you use [Debian](http://www.debian.org), you can simply install the 'altos' +package from any Debian mirror, like so: + + apt-get update + apt-get install altos - wget -O - http://altusmetrum.org/apt/altusmetrum.key | apt-key add - - wget -O /etc/apt/sources.list.d/altos.list http://altusmetrum.org/apt/altos.list - apt-get update - apt-get install altos +If you use [Ubuntu](http://ubuntulinux.org), pre-built packages are available +from [this PPA](https://launchpad.net/~sconklin/+archive/altos/) +maintained by Steve Conklin and friends. If you use some other distribution of Linux, then -a [Linux package](Altos-Linux.tgz) of our second-generation Java bits that -should run on any distribution with a modern Java version is also available. +a Linux package of our second-generation Java bits that +should run on any distribution with a modern Java version is also +available. Unlike the Debian pacakge, which depends on various libraries +already part of the Debian distribution, this package includes a "fat" jar +file with all of the Java libraries that aren't part of the basic Java runtime +environment included, so it should "just work" on any system with +Java 6. Development and testing is done with OpenJDK 6, but current +downloads from [java.com](http://java.com) should be fine too. If you'd rather build from source, our source tree includes documentation on how to build packages for various @@ -61,19 +117,46 @@ other machines and which is ideally suited for machines dedicated to AltOS ground station use. It includes a photo of a drag-race between nearly-identical rockets built by Keith and Bdale, that was the first time either of us gave TeleMetrum -complete control of a rocket flight without some other backup! This theme is -available in the same repository, to install it just install either gdm or -slim (both already available in Debian), and then do: - - apt-get install altusmetrum-themes +complete control of a rocket flight without some other backup! See the themes/ +directory in the source tree (the themes are included in the Debian package). ### Mac ### -A [Mac OS X package](Altos-Mac.zip) that is compatible with -versions 10.5 "Leopard" and later (including 10.6 "Snow Leopard") is now -available. +A Mac OS X package that is compatible with versions 10.5 "Leopard" and +later. The Mac operating system includes Java, and all Altus Metrum products +show up as simple USB serial ports, so this should just work with no +additional drivers or other dependency issues. Older versions of the Mac +operating +system, and even newer versions for PowerPC-based machines, come with +Java version 5 or older, which is too old for use with Altus Metrum +software. We know of no way to update the Java version other than +upgrading to a newer operating system (for Intel based macs) or +purchasing new hardware (for PowerPC based macs). + +If you have trouble installing on a Mac, and are getting errors about the +package being corrupt, you may not be configured to allow installation of +software from arbitrary sources. One customer running 10.8.1 reported that +he was able to work around this by going to "System Preferences", "Security +& Privacy", "General", and then clicking the "Anywhere" radio button where +it askes "Allow applications downloaded from:". ### Windows ### -A [Windows package](Altos-Windows.zip) is now available. +Our Windows package is known to work on at least some flavors of XP, Vista, and +Windows 7 Enterprise. If you don't already have Java installed, +download and install a current Java 6 version from [java.com](http://java.com) +first. Then download our installer and run it. Windows already has +the required USB serial device driver, and our package should do the right +things to bind it to our devices, but if you get a complaint about the device +being unrecognized, try pointing to the copy of the telemetrum.inf file +included in the package directory manually. + +Note that on some Windows 7 systems, it may be necessary to install AltOS using +'compatibility mode'. You can set this mode by +[changing the properties](http://www.sevenforums.com/tutorials/316-compatibility-mode.html) +of the installer .exe. + +## License ## +The firmware and associated software are licensed [GPL version +2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)