releasing 1.8 1.8
authorBdale Garbee <bdale@gag.com>
Sat, 12 Aug 2017 04:23:27 +0000 (00:23 -0400)
committerBdale Garbee <bdale@gag.com>
Sat, 12 Aug 2017 04:23:27 +0000 (00:23 -0400)
ChangeLog

index e8d5347..c76ca12 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+commit dbcb68f684a96d13efeb9993685f61b27b45e7dc
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Aug 12 00:21:43 2017 -0400
+
+    update docinfo file for 1.8 release
+
+commit dfb9568866ba250a02039cc3429d5ca0603a60d9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Aug 12 00:10:23 2017 -0400
+
+    Note that telebt 4.0 files need to go to altusmetrumllc dir
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6b083e90d5b8de215f2f303f18b5c4ac9185622d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Aug 12 00:06:48 2017 -0400
+
+    Bump version to 1.8
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 243c1e519d41b45765d4edf5f608655d6ab01eff
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Aug 12 00:06:26 2017 -0400
+
+    doc: Add 1.8 release notes
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7b67dcdd90317845261e51a1adb2404dcb0f2507
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Aug 12 00:05:50 2017 -0400
+
+    altosui, telegps: Add TeleBT v4.0 firmware to app packages
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5fdce5b4a70ae59f8ac1ca10d9fadbbbd62412f3
+Merge: f1bbf1bd 2a3db289
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Aug 11 23:45:25 2017 -0400
+
+    Merge remote-tracking branch 'origin/master'
+
+commit f1bbf1bd18d52a084af714a022b12bfc3c76374c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Aug 11 23:40:41 2017 -0400
+
+    ao-bringup: Allow dfu_util to "fail" while flashing chaoskey
+    
+    Sometimes it isn't happy about the exit status, but if the device
+    comes up and works OK, we don't care.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fbe87bd18308cab62eda6d5e956a8618095ed33b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Aug 11 23:39:13 2017 -0400
+
+    altoslib: Set time in state for KML output correctly
+    
+    Use new computed state_time value.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c7b34e6691b632199bc7802c2e4dea4de992578e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jul 23 16:49:26 2017 -0700
+
+    libaltos: Test both bluetooth and USB APIs with cjnitest
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 52bbfa9cd46ca27a4de937e89d48246a4e94c8a6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jul 23 16:47:40 2017 -0700
+
+    altos/test: Fix AES key format in test code
+    
+    Use temp variable instead of stepping on the AES name.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9eaf917707287af57c2dadfc82d6d415b0964329
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jul 23 16:46:24 2017 -0700
+
+    altos/test: Fix printf format for int64 arithmetic test
+    
+    Use 'long long' and %lld for 64-bit values when printing.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 198a3d4d5f51de5c0f0413299582479cde4e177f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jul 23 16:37:27 2017 -0700
+
+    altosui: Rename AltosConfig -> AltosConfigFC
+    
+    Now the class name says that this configures the flight computer.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c7c2fc2d85414fefda0a7948a6c4e38f65140861
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jul 23 16:38:09 2017 -0700
+
+    altosui: Adapt to flight stats time value changes
+    
+    There aren't state time values anymore as those don't work when you
+    have multiple motors. Instead, 'boost_time' is when the rocket left
+    the pad and 'landed_time' is when it touched down. Use these new
+    values in the --summary output.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2a3db28953f5cd981c519a917cdcd9f48dcb08e9
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Fri Jul 21 17:49:21 2017 -0600
+
+    add TeleBT v4.0 to the list of stuff we build
+
+commit 04560a7cd6a64e742954a2d0fbd7563e2c310402
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Fri Jul 21 17:46:55 2017 -0600
+
+    ignore more build products in telebt-v4.0 tree
+
+commit c8dbcaf69cd538a31ab6e2b568237ae7c8656a9a
+Merge: 0cbfa444 ea3b5815
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Fri Jul 21 17:44:03 2017 -0600
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 0cbfa444a9f9159cb509bb47ca5590fc1d709f64
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Fri Jul 21 17:43:38 2017 -0600
+
+    clean up telefireone name references
+
+commit 3a1512b605a81ebee23cc6b7980b709a54cb43c9
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Fri Jul 21 17:42:54 2017 -0600
+
+    rename existing turnon_telebt script, create a new one for v4.0
+
+commit ea3b5815b27005b2f4c3034715f656d28ea8534e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jul 21 16:16:55 2017 -0700
+
+    libaltos: Add btle test program
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 545bdc1f8046b08e237307d97d0044ddae9095b8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jul 21 16:14:31 2017 -0700
+
+    altos/test: Add EasyMini test mode
+    
+    Use baro-only mode, parse easymini logs.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2969f0af52dfbdea7593b208e510c7b17227064c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jul 21 16:09:55 2017 -0700
+
+    altoslib: fix adjustment of landed time
+    
+    Push landed time out if we computed silliness.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 30b308ad0189b4aa9dd5cc7ee876b55fee355a56
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jul 21 16:05:45 2017 -0700
+
+    Set version to 1.7.1 for TeleBT firmware build
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b923e25a8a49dda40e62070dd2df6ff9130d4b38
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 27 23:39:16 2017 -0700
+
+    altos/telebt-v4.0: Use HW flow control to BT module
+    
+    Now that the stmf0 HW flow control works...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e64438271e481ca9f9eeb0ce2b1f9eca071b7ad4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 27 23:37:49 2017 -0700
+
+    altos/stmf0: Initialize UART RTS/CTS before turning it on
+    
+    If you try this after the UART is running, it won't work.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 46ff12a88136d3c274610255a918870aff9328cd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 27 23:36:05 2017 -0700
+
+    altoslib: Deal with multiple motors in flight stats
+    
+    Combine boost/fast/coast sections when computing ascent stats.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 13abb6739ae9be5a8733724c5d9b3f714f32bea4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 27 21:37:50 2017 -0700
+
+    altoslib: Fix comments in AltosQuaternion and AltosRotation
+    
+    Especially the nested comment which borked the compile
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5a174f4a2caae97b5038eb92ab85303e736b7c2e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 27 21:33:36 2017 -0700
+
+    altosdroid: cal_data is no longer public from AltosState
+    
+    Use cal_data() method instead.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6dbb362b2d1df4d8c2d301e90624aceef8051ef5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 22 10:10:06 2017 -0700
+
+    altoslib: Clean up quaternion and rotation interfaces
+    
+    Export euler to quaternion (instead of half_euler).
+    Provide angles to rotate rather than rates and time.
+    Add comments to quaternion and rotation code.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ea7e236e75452e27f3af6730a0542850851eb23d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 20 11:19:40 2017 -0700
+
+    altos/rn4678: Add BLE support
+    
+    This just means ignoring the BLE connect status message.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0da4e201041a4420f273c2e0cda77eea78099518
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 20 11:18:41 2017 -0700
+
+    altoslib: Make cal_data private in AltosDataListener
+    
+    This way we can create it as needed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a61217f0a6d0ef48b6471f632c4600255867e831
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 13 10:58:57 2017 -0700
+
+    altoslib,altosuilib: Bump library version numbers
+    
+    The API and ABI have changed a bit since 1.7
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e2fe220efe2ba375ddd925747a630c30c17d3bef
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 13 10:50:37 2017 -0700
+
+    altosuilib: Rename AltosGraphNew to AltosGraph
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3f9b6d23e4e33a58c179f45ffd42211ab327d8c6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 13 10:47:54 2017 -0700
+
+    altosuilib: Rename AltosUIGraphNew to AltosUIGraph
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e4f1fa544f1cb21070c9d79c81ebae0fb71d77db
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 13 10:46:03 2017 -0700
+
+    altoslib: Rename AltosEepromNew to AltosEeprom
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0e586ab3604bb695c36ae86c95f533197522fc65
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 13 10:38:13 2017 -0700
+
+    altoslib: Remove old AltosEeprom.java code
+    
+    No longer in use
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 672889659fb2c1a63f5ef199173719a606a9f343
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 13 10:35:39 2017 -0700
+
+    altos/telebt-4.0: Add dependency on RN4678 header
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cd8b22bef0a88ed6881036b4c6718a4e33c55d41
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 13 10:34:03 2017 -0700
+
+    altos: Add timeout to RN4678 status message code
+    
+    If we see the start of an RN4678 status message, but then output
+    pauses, assume that this isn't the start of a status message and flush
+    the pending data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 172d6cec981b50d4d5ff0f3d3bbd4377d55f57c8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 12 21:47:05 2017 -0700
+
+    altosuilib: Don't display pad, last location in flight stats without gps
+    
+    Check stats.have_gps before displaying pad and last known location values.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5eb91267348b0992414521520eda5c3a65e23ea7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 12 21:46:11 2017 -0700
+
+    altoslib: Set time for TeleMini v1.0 eeprom analysing
+    
+    Need to take the computed tick time and tell the listener what time
+    that cooresponds to.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ee221ddf00f631a5f9d5d93468bfc697a26e4cfe
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 23:13:07 2017 -0700
+
+    altosui, telegps, altosdroid: say ground distance, not total range
+    
+    Ground distance is more useful in predicting recovery than total range.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cb1e757d4d486d04af0219b3f36ad17ee8095110
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 23:10:49 2017 -0700
+
+    altoslib: Initialize new imu/mag values. Remove stale imu/mag objects.
+    
+    AltosState no longer has imu and mag objects, instead it just holds
+    the values now.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 247fa1c669f987830540e618bf263b08284118df
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:52:56 2017 -0700
+
+    altosui: Display current altitude in monitor idle Pad tab
+    
+    This was attempting to use 'pad' values even though monitor idle
+    doesn't have them.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 03ec3e4c2247b6520c728b34805ad500be547a25
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:50:57 2017 -0700
+
+    altoslib: Remove unused 'ground_rotation' from AltosState
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 97b42b7cd676232f13354798726f3087fa7177d5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:50:28 2017 -0700
+
+    altoslib: Flush igniter fire command
+    
+    This makes the igniter fire without a multi-second delay.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5c4e473ef5d13da9c2f356702cb8767b55aa2137
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:49:46 2017 -0700
+
+    altoslib: Hook up idle monitoring data again
+    
+    The API for idle monitoring changed, but these modules hadn't been
+    fixed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 27131ec7abda875595c61be0b151b73eb28afab9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:47:53 2017 -0700
+
+    altoslib: Fix labels in AltosIMU to match source data
+    
+    IMU bits arrive with X/Y/Z labels and are converted to the correct
+    axes as they leave this object.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 43f8470dc66392dae4770882bfc6ad25b1d75436
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:47:02 2017 -0700
+
+    altoslib: Keep time series in AltosFlightSeries array sorted
+    
+    This makes using the graph way easier.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3fa1eadb91eea001342d2d357d7aaf661e8a2a5d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:46:01 2017 -0700
+
+    altoslib: Handle EasyMini v2.0 ADC values
+    
+    Different from EasyMini v1.0
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9454756f54312381927cb9faf1c4a6f5d8271034
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:43:57 2017 -0700
+
+    altos: Create separate log format for EasyMini v2.0
+    
+    The ADC in the STM32F0 is different than the LPC, with a range of
+    0-4095 instead of 0-32767.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ffbacb4ba9fc52de18bc54eb0d4b9e4f015ad1a4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:42:25 2017 -0700
+
+    altoslib: Missing config values now AltosLib.MISSING, not zero or negative
+    
+    Also fix AltosConfigData.java
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8da38e5217f366a7da24a8af4a5ca620fad35df3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:39:53 2017 -0700
+
+    altoslib: Adapt to Mag sensor value ordering changes
+    
+    The HMC5883 sensor data is ordered x, z, y. Relabel everything to
+    match that to preserve compatibility with existing firmware. With the
+    data correctly ordered, fix the labling of the axes along, across and
+    through.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2a05849c3bf8c1617409237be48802dd6fc6255b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:34:11 2017 -0700
+
+    altos: HMC5883 output order is X Z Y
+    
+    Re-label everything to have the correct names. This doesn't actually
+    change the code at all, so the eeprom and telemetry is all compatible.
+    
+    Matching changes on the host side will be required to actually process
+    the data correctly, of course.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fed48732828c85ae56106cd72c5aeaaad47c552f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 22:31:17 2017 -0700
+
+    altos: Update sensor data atomically
+    
+    Read data into a temp variable, block interrupts, then update the
+    published value.
+    
+    The bug is easy to see with the HMC5883 which has to byte-swap the
+    output of the chip, and hence can occasionally get caught with the
+    wrong byte order data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 171adbe7db8520f5ff52a5fe2c54fe165c6f91f8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 11 16:11:09 2017 -0700
+
+    altoslib, altosuilib, altosui, telegps: Missing config values now MISSING
+    
+    Config values that didn't apply to the current product used to get set
+    to -1, but now they're set to AltosLib.MISSING to be consistent with
+    the rest of the code. Deal with this in the UI bits.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit af6ce9a142d001f3b9b83cf6527f4dc848e94d48
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 8 20:39:06 2017 -0700
+
+    altoslib: Compute 'vertical acceleration' for eeprom files
+    
+    This uses the computed orientation to find the portion of the measured
+    acceleration which is vertical and then shows that in the post-flight
+    analysis graph.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 32de85691f2e4ed1430a259e05a514ad820b32d9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 8 20:37:58 2017 -0700
+
+    altoslib: Compute orientation from eeprom data files
+    
+    This was lost in the AltosFlightSeries transformation.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4c5acb57d7ac1abec7bb4cda9dc88c2a19767a2d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 16:53:43 2017 -0700
+
+    altoslib,altosuilib: Remove stale source files
+    
+    These aren't built any longer
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b3cd7590f35babc346ba245d32d6290f22b2a13f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 16:53:03 2017 -0700
+
+    altoslib: Check for valid pad alt before computing GPS height series
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 93ec97cbae5a16d971b9e757c167bef9a5a80629
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 16:52:28 2017 -0700
+
+    altoslib: Add status back to AltosFlightSeries for CSV export
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8ec59ee5a6dda114ff55a4af4669842eed5ef79a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 16:15:17 2017 -0700
+
+    altoslib: Don't record radio status values in flight series
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4b07adb395f2949dc76275d87b8af10430badb4b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 16:14:53 2017 -0700
+
+    altoslib: When no boost tick is found, just use first tick in file
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 78b4bf77fca96bef2cce443ad4c9544ae83f0acc
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 15:52:17 2017 -0700
+
+    altoslib: Reset transient AltosCalData values before processing data
+    
+    Values in cal_data which are used to hold intermediate results need to
+    get reset back to their initial values before processing a series of
+    flight data again.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit dcf533d5befffa4c9c872f3c3d21d11ffeb61307
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 15:51:56 2017 -0700
+
+    altoslib: Don't record 'pad' state in FlightSeries
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9748d267b80e42ca52f9221900bb58602759a8d2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 15:28:29 2017 -0700
+
+    altosuilib: Set graph title to include product/serial/flight info
+    
+    Better than "Flight"
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9a92ccbd3e5ce640875b614ff14d549cccc2036c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 15:27:45 2017 -0700
+
+    altoslib: Only compute state stats for recorded states
+    
+    Missing states shouldn't get stats; they 'didn't happen'.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4161d9e9e5b4cbd71ec6d982d26ea566a69726c3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 15:26:51 2017 -0700
+
+    altoslib: Clean up gps series logging
+    
+    Create each gps series only when data are avaiable.
+    Compute gps height series shen series is finished.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8d6376c673af4648d494c1be71ad40380667bd25
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 15:26:11 2017 -0700
+
+    altoslib: AltosFlightSeries ignore missing accel/pressure
+    
+    missing accel often comes from invalid cal data; easier to check here.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 15e3f2dae15e41a8501e3e1d221536751af15f94
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 15:25:35 2017 -0700
+
+    altoslib: Remove debug printfs
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 355bb4669da05d202054b8265695e9878fd612c2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 15:21:53 2017 -0700
+
+    altoslib: Ignore invalid accel cal values
+    
+    When both are the same, something is wrong.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bd7dd6f5adbe25708ba0276444196964f66b3c4a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 14:42:30 2017 -0700
+
+    altoslib: Check for empty gps height series
+    
+    When the gps height series is present but empty, there won't be a max value.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1b91ba98395a431385c9af5de77b2892fd6ccc43
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 14:41:42 2017 -0700
+
+    altoslib: Use first pressure value if no ground pressure available
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e0f25bcb8c036330e80c1254ab67f0bf323a4a98
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 14:33:28 2017 -0700
+
+    altoslib: Handle eeprom tick wrapping
+    
+    Need to deal with eeprom files with tick values that cross the 16-bit
+    barrier.
+    Use 'wide_tick' to order eeprom record.
+    Remeber 'prev_tick' to order cal data time sequence.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c075227c3a3c7714fe6f9d48c14dafaf4fed8e5e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 14:03:51 2017 -0700
+
+    altosuilib: Display product/firmware version in stats table
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 18f1dd64fe4ad94cbe292fffdc25167ae68c6611
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 14:02:51 2017 -0700
+
+    altoslib: Adjust boost/landed time in flight series for display
+    
+    Makes the presented values match those used in the stats computation.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2c2eb1a15e745bb67721a1e3d84fb2fc0ce64eb1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 14:02:11 2017 -0700
+
+    altoslib: Add constants for speed/accel filtering
+    
+    With an eye towards letting the user pick.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit da914cd72411af8c36af05b13c11b9093c8a378c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 14:00:15 2017 -0700
+
+    altoslib: Create data file open helper in AltosLib
+    
+    Use InputStream everywhere, instead of Reader.
+    Create private string input stream as java one is deprecated.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9e1295ff74d03f940fc68e6795bf30687162a440
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 28 13:58:05 2017 -0700
+
+    altoslib: Extract a few more values from config to cal_data
+    
+    Make it possible to display model/version data in the flight stats table.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e4407afb514437ccd8db79ae29c6fa203140fa07
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 27 23:42:52 2017 -0700
+
+    altoslib: Recover from a couple of API changes
+    
+    Nothing serious.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c0af53c03d7945f7400496216ee259d73fb04843
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 27 23:35:02 2017 -0700
+
+    micropeak: Use altoslib/altosuilib flight analysis bits
+    
+    Remove custom graph and stats bits and share bits with altosui.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9e17d3be199d14473d8a7f9b899c290518b879a6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 27 23:34:18 2017 -0700
+
+    altosuilib: Remove 'cal_data' param from AltosGraphNew constructor
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a1d76d5568f8386c52704d69507132de23ea591f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 27 23:33:37 2017 -0700
+
+    altosuilib: Make AltosFlightStatsTable neater
+    
+    Elide missing data, change titles when data are simpler
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c87ba4b243a9fd838a3c97cc6a95cceb450a6ba5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 27 23:33:07 2017 -0700
+
+    altoslib: Provide consistent cal_data from idle and replay readers
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c9e82a5929a836bc61b464507badef2df5e9d4d0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 27 23:32:29 2017 -0700
+
+    altoslib: Return AltosTimeValue from min/max funcs
+    
+    Allowing the user to have both value and time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7ce82ea72009f7c9ac09be08aec154aec606d3c9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 27 23:31:48 2017 -0700
+
+    altoslib: Publish boost_time and landed_time from AltosFlightStats
+    
+    Nice to be able to use these when displaying data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3516eeb77048736470de2cc2ca03985efd228d29
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 27 23:30:54 2017 -0700
+
+    altoslib: Allow for other tick sizes
+    
+    Use 1/100 sec by default, but provide for MicroPeak which uses a
+    different step.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9329cb607e36843385e92b677f095c451d50297c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 27 23:30:13 2017 -0700
+
+    altoslib: Change how speed/accel are computed from pressure
+    
+    Filter *then* differentiate. This works way better that doing things
+    in the other order.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 855a7d243a5a85728a7b23fdfe9485d4ecaf71cf
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 27 16:12:31 2017 -0700
+
+    telegps: Get telegps application working again
+    
+    Many minor API tweaks
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b6b5c64f93fa56bcb22ea1c4279e4f754e6e6f1c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 27 00:27:04 2017 -0700
+
+    altosdroid: Deal with AltosState changes
+    
+    cal data split out from altos state.
+    altos state needed to have no-arguments constructor for JSON code.
+    Also messed with voice to make it stay quiet during app startup.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8b4dcca73c65e87462d5f8d08dbc025aa8cf08a6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 26 19:05:51 2017 -0700
+
+    altoslib: Use cal data temp gps for telemetry data too
+    
+    This avoids bouncing the location data during flight
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 612756291c7fb68d337c3be2e8197d39e31f3b5c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 26 18:47:18 2017 -0700
+
+    altosui: Remove debug printf.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0f32d1a2e2fb5989d124189a7eb1156a00b0ad8f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 26 18:46:46 2017 -0700
+
+    altoslib: Trim stale bits of AltosState
+    
+    Much of this is now in AltosCalData.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 21d864206043d2a6048cd859295623bad4d99365
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 26 18:46:00 2017 -0700
+
+    altoslib: Preserve old GPS data during operation
+    
+    This avoids having the lat/lon values blank out when the GPS receiver
+    looses lock.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3d29882f5c70e627b0bbfe42c0a31d6cb5f6b6bf
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 26 18:22:02 2017 -0700
+
+    altoslib: Get KML export working again
+    
+    Even annotate the states with avg speed/accel for fun.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fd738d47bbc46d36698350d5450abe1125d990a3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 26 17:14:29 2017 -0700
+
+    altoslib: Make sure AltosFlightSeries is filled in before use
+    
+    After all of the raw data is captured, the derived data needs to be
+    computed by calling the 'finish' function.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit af3c7938f24dcf5ffbce024ed596655b26282cf1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 26 17:13:43 2017 -0700
+
+    altosui: Remove --cat mode
+    
+    Wasn't documented, didn't do much useful.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit aa0300f11fe5b7f1d3e548e29dc809b803aa1f7a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 26 00:51:37 2017 -0700
+
+    altoslib: Make AltosReplayReader start synchronously enough to track states
+    
+    The Altos UI needs to see 'pad' state and then 'boost' state so that
+    it will automatically switch tabs during the flight. When reading from
+    eeprom files, the only way that is going to happen is if the reader
+    thread waits until the UI has definitely seen 'pad' state, which we do
+    by simply delaying the reader thread until after that has happened.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2e82051a6aaaccf1e8a242f9c8141e4167e652d2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 26 00:20:17 2017 -0700
+
+    altoslib,altosuilib,altosui: Get stats and replay working again.
+    
+    Stats are really easy with all of the data in memory.
+    Replay takes a special thread to run the data and dump it into a
+    single state.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 222158581887b5f9e8b9843d14321c313fa023fa
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 25 22:36:05 2017 -0700
+
+    altoslib/altosuilib/altosui: More work towards using AltosFlightSeries for analysis
+    
+    Graphing and CSV seem complete now; stats still missing lots of stuff.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4d497c1be534e2b206edec3c096198c8ea64cebe
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 25 17:29:31 2017 -0700
+
+    altosui: Adapt to AltosFlightSeries for data analysis
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e6eb659b0e984515a33b3ddabfe8325742a952da
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 25 17:26:49 2017 -0700
+
+    altosuilib: Adapt to AltosFlightSeries data processing plan
+    
+    Replace use of list of AltosState with AltosFlightSeries to improve
+    data analysis.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f26cfe417c6977cf1e7e75a4f050e25f64d41859
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 25 17:24:14 2017 -0700
+
+    altoslib: Do data analysis on raw values rather than AltosState
+    
+    Use AltosFlightSeries instead of a sequence of AltosState records when
+    processing saved data. This provides a better way of doing filtering
+    and plotting.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7600116a191b3ac252a0f716d200d0e0b3500987
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 23 14:53:55 2017 -0700
+
+    altoslib: Don't store computed telemetry fields
+    
+    These values are only needed once, so there's no reason to save them.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit abcedc4b49ce77607ef95abf69479dc1d2c1b76d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 22 14:36:46 2017 -0700
+
+    doc: Add telegps outline
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e8794ab1d512418e312a1a779777119e20dc8c38
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Fri May 12 12:58:18 2017 -0600
+
+    add thrust as a graphable time series type
+
+commit bbe0c2e0a3216f40f49af34b756330ba28d7c7e1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 12 00:01:14 2017 -0700
+
+    altosui: Hacks to plug into the new graph stuff
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 96de483d745ea0ef95326de2847a2534f7057846
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 11 17:16:56 2017 -0700
+
+    altosuilib: Start creating new graph interface that takes time series data
+    
+    Replace the AltosState interface so the graph can get better data, and
+    can be used for more stuff.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 258808d296aeadaf150fa9b07e9c99a6bf1ca7c8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 11 17:14:51 2017 -0700
+
+    altoslib: Create new abstraction underneath AltosState for recording values
+    
+    Provides a way for the graph API to see raw data values, instead of
+    those cooked by AltosState.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a9aa2d3558c77eb444223eaa747c75916bc7bac1
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Thu May 11 12:14:41 2017 -0600
+
+    altoslib: include TimeSeries code in build
+
+commit 81eaca2eac0b51a0017379187e042729b87e5f4d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 10 15:18:13 2017 -0700
+
+    altosuilib: Add time series subclass with data for generating a plot
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a50c8b40319c5d176d40a816111edd9a8dd48bc9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 10 15:16:34 2017 -0700
+
+    altoslib: Add initial time series functions
+    
+    Provides the basis for offering a sequence of time/value datasets for
+    graphing instead of using AltosState.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e37f9719745b7fba5bfb1b1517ce7b70efa7a3a2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 19 21:36:01 2017 -0700
+
+    altos/telebt-v3.0: Add send_packet command
+    
+    Useful for doing host-based RF protocols.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6e3b7206f9ab2f76089553d7c881a96e0204a4a3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 19 21:35:05 2017 -0700
+
+    altos/telebt-v4.0: Remove HAS_POLLCHAR
+    
+    This isn't being used anymore.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cbec54fc682774f096dc2e43ef9a4796be123341
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 19 21:31:52 2017 -0700
+
+    ao-bringup: turnon_chaoskey: search for ao-usbload in PATH
+    
+    Don't assume it's in /usr/bin
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2cf4d76745713051c6ee9cf8d4b386c25f822433
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 19 21:30:29 2017 -0700
+
+    altos/telefireone-v1.0: Fix confusing defines about config storage
+    
+    USE_INTERNAL_FLASH is about storing config data in internal flash, and
+    should be on for telefireone.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 65fd7b23b1a8861afd74e4e42ce1918c059fbff1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 15 12:13:35 2017 -0700
+
+    altoslib: Set default accel cal for old TeleMetrum v1 files
+    
+    Before we stashed the config data in the log file, altoslib had to
+    "known" what the accelerometer calibration values should be set
+    to.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2fd949bb29d94b1a762ff707c98a8498ea508bb2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 15 12:12:57 2017 -0700
+
+    altoslib: Set default log format to FULL until we learn different
+    
+    Ancient log files don't even have a product name in them, so we'll
+    guess TeleMetrum v1.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 404ee357d59ef4732068ec0e56a9c93ac885ea0f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 15 12:11:31 2017 -0700
+
+    altoslib: Mark AltosConfigData fields as MISSING until set
+    
+    Instead of using -1 or 0 randomly, use MISSING consistently.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d0053c5e2cc7b75b642ff4727a1ef874d323db9d
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Mon May 15 10:16:33 2017 -0600
+
+    re-brand current telefiretwo product as telefireone
+
+commit ab50a1467bac0234062bc8c0a17783f1730aa981
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 15 08:59:52 2017 -0700
+
+    altos/ao_rn4678: Send '$$$' for new devices. Fix name setting code.
+    
+    New devices won't respond to the cmd pin we have configured, so get
+    them to command mode by sending the $$$ string. Somehow I'd botched
+    the name setting code and hadn't caught it as I hadn't tried a new
+    device...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f132a22995235f3002e4a2bb8771c9b5738efb30
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 15 08:58:21 2017 -0700
+
+    altos/stmf: Fix up serial port flow control configuration bits
+    
+    Compute whether any sw/hw flow control is in use.
+    Compute whether hw flow control is in use as a separate value.
+    
+    These make the code a bit easier to follow.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2536640b852feff41975d2da50befdda91ee6303
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 13 15:24:20 2017 -0700
+
+    libaltos: Add support for TeleBT-v4.0 bluetooth channel change
+    
+    The RN4678 in TeleBT v4.0 uses channel 6 instead of channel 1.
+    There is code in the linux bits which discovers this value, but that
+    crashes when run under java for unknown reasons.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 91c2af9ac1387842a5fdc61dbc9e26e04de2cdd0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 13 15:21:40 2017 -0700
+
+    altoslib: Handle TeleBT v4.0 battery voltage
+    
+    The device reports raw ADC values, which mean AltosLib needs to
+    translate them.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7e0857120b8633c22603a9f59c5519e5a92759e9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 13 15:19:25 2017 -0700
+
+    altos/telebt-v4.0: Hook up RN4678 module
+    
+    We've switched from the BM70 to this module which offers a virtual
+    serial channel over both BT and BTLE.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6442e2ad6af4b337348aa2ce25abc91c05765826
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat May 13 15:17:41 2017 -0700
+
+    altos: Add RN4678 Bluetooth module driver
+    
+    This works much like the old BTM module, but supports both bluetooth
+    and bluetooth LE. I've poked at it briefly over BTLE to see that it
+    appears to have the right name, but haven't attempted to communicate
+    over BTLE yet.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9c6727d39cc1feae3bd0504bcbc910ae832e3651
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 12 01:35:52 2017 -0700
+
+    Use SDP to locate the service channel on Linux
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5ad767dd6b6c8d99bbe4b688e8cdbc230e01a7dc
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 10 14:47:15 2017 -0700
+
+    altoslib: Another bit of altoslib for the old eeprom stuff
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0080e61e5f2e20ce45041e29dc039d042aa7f76e
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Thu May 11 11:27:30 2017 -0600
+
+    have AltosGraph use new AltosPressure to get imperial_units working
+
+commit 9d05af2147c0eb6dc63c4d4dc1d9a3c31f480aef
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Thu Apr 27 15:27:49 2017 -0600
+
+    initial tests made using Terry's stand with a 2500psi sensor
+
+commit f753ad3b9d0f3dc9794e5dd097063aab6cf9bdc4
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Thu Apr 27 12:57:49 2017 -0600
+
+    telefiretwo: don't try to record pre-burn sensor values in FLIGHT record
+
+commit 7e2b92ccb56b713fd18af5769156331ead8dc7ed
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Thu Apr 27 15:21:53 2017 -0600
+
+    have git ignore ao-bringup/cal_values
+
+commit 238e56e0f6ab2f623e0faf25298b38dc3a4aff74
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Wed May 10 22:19:38 2017 -0600
+
+    telegps: use new eeprom reading code
+
+commit 0641326842bffbf4b3ae69459ca540131cb64e59
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 9 02:31:04 2017 -0700
+
+    altoslib: Remove older eeprom handling code
+    
+    The new code appears to work in minor testing; time to try it all the time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 17e20a6d2dab1f4bd1375bfd9e1c5230ee2c1119
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 9 02:11:25 2017 -0700
+
+    altoslib: Save eeprom data in new .eeprom format
+    
+    A chunk of json for the config values followed by hex numbers for the data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e311cefae19d7dc71fb10e9a943daa8e2313c8f8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 9 00:22:35 2017 -0700
+
+    altosui: Use new eeprom reading code
+    
+    This just means using different file opening functions, which then
+    get matched by AltosEepromFile and sent off to the new eeprom code.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c00a80f040de85be18c9d5150cb0661e08158c3d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 9 00:20:23 2017 -0700
+
+    altoslib: Hack up AltosEepromFile to support new eeprom code
+    
+    Redirect when asked to read an eeprom file using the "Reader" type.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e14b0ea82420e769cdf9ffd621b7f8d4944ef44d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 9 00:19:51 2017 -0700
+
+    altoslib: Compile AltosForce and AltosPressure
+    
+    Useful if you want to actually use these.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e67a5c6ffa7174d66e985483fab4bf52ccaea5ca
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 9 00:19:05 2017 -0700
+
+    altoslib: Add new eeprom management code
+    
+    Generic .eeprom file parsing, simpler per-type eeprom data extraction.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 44c0cecabb3a815dbf7f52e6b2dad364cc72b60c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 9 00:17:40 2017 -0700
+
+    altoslib: Add set_config_data to AltosState
+    
+    Initialize all config-data related state values.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d3c1ce741c54c5640b7e1b07d86be1ce0951944b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 9 00:17:11 2017 -0700
+
+    altoslib: Add empty constructor for AltosPyro for JSON
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c17b78e60c340c8a3e3d6f9b875667c66216647a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 9 00:16:36 2017 -0700
+
+    altoslib: Add Ms5607 constructor that just takes config_data
+    
+    Use for making Ms5607 from eeprom files.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d97c4d2f6de2981c2efd7bfbc9f5f9649987b854
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 9 00:14:33 2017 -0700
+
+    altoslib: Add AltosForce and AltosPressure units
+    
+    Useful for TeleFireTwo.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 975751b604784e86b2ddb944a72b55ca3f14cf63
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 9 00:13:16 2017 -0700
+
+    altoslib: Hide members from json by prefixing with __
+    
+    This lets some structures which would otherwise recurse (and crash)
+    get converted to json, assuming the hidden members aren't relevant.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 08da6f2100c0241c70554427e53b7e237dfda16c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 4 22:09:31 2017 -0700
+
+    altos/telemini-v3.0: Use dbg connector pin 5 for force bootloader
+    
+    This works way better than attempting to use the beeper pin.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 178d7c0aa32267ea71be2ccff146ea6ff990d7dc
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 4 22:07:51 2017 -0700
+
+    altos/telemini-v3.0: Add 'recovery mode' on PA14 (pin 6 on dbg header)
+    
+    Connect this pin to GND (pin 3) and TeleMini will come up with N0CALL
+    at 434.550MHz using the original frequency calibration. Helps recover
+    from accidental mis-configuration.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3b4e3189211801c6f8f41c5d08c5a8551f28976c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 4 22:06:16 2017 -0700
+
+    altos: Move 'ao_force_freq' to ao_config.c
+    
+    Instead of having to add it to each product using this variable.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e76d543a203f210683cb77df2b9bbff1a9f4b381
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 4 22:04:57 2017 -0700
+
+    altos: Make CDC ACM 'line coding' public
+    
+    This allows other systems to see what baud rate the host has requested.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a84bc1bd8dd19d47709614b0c2639958d09fbf7e
+Author: Miguel Benavidez <miguelbenavidez1145@gmail.com>
+Date:   Thu May 4 11:29:33 2017 -0700
+
+    altoslib: Fix MS5607 raw data to pressure conversion function
+    
+    The MS5607 sensor provides raw 24-bit ADC outputs to the host along
+    with calibration constants necessary to convert those into temperature
+    and pressure values. The datasheet has a flow chart indicating how to
+    perform this computation. There are two parts of the algorithm which
+    adjust the result based on the ambient temperature, temperatures below
+    20°C get one compensation factor and temperatures below -15°C get an
+    additional factor.
+    
+    The ground station version of this function mistakenly applied the
+    second compensation factor for all temperatures below +15°C. The
+    result was that the pressure computed on the ground when the measured
+    temperature was between -15°C and +15°C was incorrect, resulting in
+    altitudes which were several hundred meters off in some situations.
+    
+    This can be seen when displaying any .eeprom (or .mpd) data
+    files for flights with temperatures in that range. The datafiles
+    themselves are not corrupted, only the display operation.
+    
+    This is not seen for telemetry data, where the pressure and associated
+    altitude is computed in the airframe using the correct algorithm.
+    
+    Thanks much to Miguel and the rest of the Vanguard School TARC team
+    for identifying the problem and providing this fix.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 643f7508233f492a86f541b4f4fb20531b306ae0
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Wed May 3 11:47:33 2017 -0600
+
+    altos/telebt-v4.0 Set CPU clock to 48Mhz instead of 96Mhz
+
+commit a6e1010f7519c5d1243e8950df6f022576152a87
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 2 11:49:21 2017 -0700
+
+    altos/telegps-v2.0: Disable external serial port to save ROM
+    
+    We'll have to rewrite some of the serial code to avoid sucking memory here.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 475940cb8032c76622c64dd0bd30f31c0b0f6cf4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 2 11:35:18 2017 -0700
+
+    altos/stmf0: Add code to use SoC flash as storage
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit de36a1e1a2e568dd606000f169fef111e8c08b15
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 30 17:42:23 2017 -0700
+
+    altos/telegps-v2.0: Reorder initialization sequence
+    
+    This tries to be a bit more logical about the board initialization
+    sequence, starting with the OS, then the support hardware, internal
+    drivers, external drivers and finally services.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9a10a209749d1f375d02ce9af68ccbb0b3a91ba2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 30 17:41:21 2017 -0700
+
+    altos/telegps-v2.0: CC1200 CS is PA1, not PA5.
+    
+    Also remove some unneeded config of an additional pin for MCU wakeup,
+    which the CC1120 needs but the CC1200 does not.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 99c5c47d9288721a1fe009698393c67dd36a16fb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 30 17:40:26 2017 -0700
+
+    altos/telegps-v2.0: GPS chip is connected to serial 2, not serial 1
+    
+    Turn on serial 2 and use it for GPS.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7ace97885c4924de049ff20a40fd9ec234b6577b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 30 17:39:54 2017 -0700
+
+    altos/telegps-v2.0: Remove some unneeded defines
+    
+    HAS_MS5607 and HAS_RADIO_RECV aren't useful.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0f883aa1b1a1db61113489c260f44c09d5216bc7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 30 17:39:03 2017 -0700
+
+    altos/telegps-v2.0: Battery ADC input is on PB1, not PA0
+    
+    Rewire as needed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 979a1b8d80189e56745316da3de9288ee32e102c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 30 17:38:21 2017 -0700
+
+    altos/telegps-v2.0: Set CPU clock to 48MHz instread of 96MHz
+    
+    Turns out the CPU doesn't run well at that speed. Who would have guessed?
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 671e00f9fa75d75b5f15d8cc558a46a9651690fa
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 30 17:37:45 2017 -0700
+
+    altos/telegps-v2.0: Adjust LED config
+    
+    The LED is green, not red. Use it for panic and GPS lock.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ec963d358895ae46af63d2a6e9a32bdfb4d631c0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 30 17:35:28 2017 -0700
+
+    altos/kernel: Allow TeleGPS v2 to scale battery in telem
+    
+    TeleGPS v2 uses the STMF0 processor instead of the LPC11, which means
+    the ADC range is different. As the raw ADC value was getting sent to
+    represent battery voltage in the config packet, we need to scale that
+    for the different processor. This patch allows that to happen.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 34fda7bff76d59bcfbcec6a44275829c45e42189
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 30 17:34:08 2017 -0700
+
+    src/kernel: Add GPS lock blink LED to tracker code
+    
+    Blinks an LED briefly once every three seconds when GPS is locked.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c02adbdd8f41c1aa1fdf4748c910d23e5485108f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 28 00:08:51 2017 -0700
+
+    altos: Build MicroPeak-v2.0 by default
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 217d77dadbef4192d2f32e290a5c5f50159f2e0d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 28 00:07:03 2017 -0700
+
+    altos/micropeak-v2.0: Add initial MicroPeak v2 support
+    
+    stm32f042 processor replaces the attiny85 and adds USB support along
+    with more storage.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 65bb93f69b2f420281b67d62a9ee3cf30874fb7c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 28 00:05:01 2017 -0700
+
+    altos/stmf0: Add support for HSI clocked applications
+    
+    And allow application space to be limited to less than available flash.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d197adf353ec5503c72a4554aca2a463bb685932
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 28 00:04:33 2017 -0700
+
+    altos/stmf0: Fix HSI clock rate.
+    
+    It's 8MHz, not 16MHz
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2b3c79e9d88c9bb0b5aca4bc20fa942ebcfe40fc
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 28 00:04:14 2017 -0700
+
+    altos/stmf0: Make sure systick is off before programming
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ac3fc7da669f58c7abd25b0ca8cc425238b84217
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 28 00:02:54 2017 -0700
+
+    altos/stmf0: Compute serial baud rate registers at runtime
+    
+    This allows the system clock to vary at runtime, instead of requiring
+    a fixed value.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7d4f7880b0934c208df65cea8b0f549f32f1c7d2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 28 00:02:02 2017 -0700
+
+    altos/micropeak: Update ao_micropeak.h for MicroPeak v2
+    
+    Allow different sample times, add constant for MicroPeak v2 log files.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4896582922ba5227da031c762221c8c7eafc2415
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 28 00:01:18 2017 -0700
+
+    altos/micropeak: Use existing ao_ms5607_current variable
+    
+    Instead of defining another.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4d4675cbadcb0ab9df8f6d5155797dca400315c0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 28 00:00:11 2017 -0700
+
+    altos: Add header file for ao_report_micro.c
+    
+    Defines the functions in this file.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 75c26a26e905e3d4f141badfcb6ec6995ed58213
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 27 23:59:27 2017 -0700
+
+    altos: Add 100ms constants for baro Kalman filter
+    
+    MicroPeak v2 uses this rate.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8c755f52db40bb845ab236ff400f35888053e616
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 27 23:52:29 2017 -0700
+
+    altos: Adapt micro log to MicroPeak V3
+    
+    Allow use of regular serial API for sending data.
+    Allow application to specify different storage size.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2245d9e3178404a49a6787656319fa13f0cc1a51
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 27 23:51:21 2017 -0700
+
+    altos/ms5607: Allow applications to not use the normal data ring and thread
+    
+    MicroPeak V2 has tasks, but doesn't want to use another thread just
+    for the MS5607.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6813f48fe02ecc5902f386234535ea76af71a764
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 27 23:50:12 2017 -0700
+
+    micropeak: Add MicroPeak V2 to the download code
+    
+    Add the MicroPeak V2 sample rate so the timing values are correct.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a59c3afa23e876362dc8c80559015ce361627f05
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 25 23:56:41 2017 -0700
+
+    Fake thrust data as accel for now
+
+commit 07956b102bd4b7e4dd0ec20e0a4fbe3779acfdd9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 25 21:27:40 2017 -0700
+
+    ao-bringup: make turnon_telemini search for ao_usbload on $PATH
+    
+    I've uninstalled the altos package as it has a version of ao-usbload
+    which is too old for telemini.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2b014fe9fa64e7aead586bc682251346d000c8cc
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 25 23:06:34 2017 -0600
+
+    telemini-v3.0: make git ignore build products
+
+commit b662ca4edd67a2e1e5712f97fb1ce909f19af625
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 25 23:01:53 2017 -0600
+
+    ao-tools/ao-makebin: have git ignore built object
+
+commit bd489b96b060c8276bd7709ac55c306aad02374c
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 25 23:00:34 2017 -0600
+
+    telebt-v4.0: make git ignore products of build
+
+commit 6ed63dfbf0a0205df17afb2ea54afad441a69604
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 25 22:58:00 2017 -0600
+
+    telegps-v2.0: slow down radio chip spi speed
+
+commit 08d73614c0c0859bc097c1d7d423bac4cf313512
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 25 22:28:28 2017 -0600
+
+    telebt-v4.0: slow down SPI speed to radio chip
+
+commit 16f171350619b9d3da614625e27c092b144c3097
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 25 22:26:12 2017 -0600
+
+    telebt-v4.0: turn off pin remapping in the flash loader, too
+
+commit 514c05c287f0be390cfdf3491169c830cad8bfe7
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 25 22:12:42 2017 -0600
+
+    telebt-v4.0: don't need the USB pin remapping flag
+
+commit 1f723d31312be6dea3ef46e265c17c4d361d7099
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 25 22:10:41 2017 -0600
+
+    telebt-v4.0: add ao_send_packet
+
+commit 30e6e087b639c6d7ec75f21ba8c6fcf6ad50fffe
+Merge: b2a5118d 75881968
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 25 22:04:22 2017 -0600
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit b2a5118dededd1ed6b1326e82168214cb0b24821
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 25 22:03:56 2017 -0600
+
+    telebt-v4.0: initial creation of firmware for new product, no BT yet
+
+commit 75881968ffb6bfd4e920cac4aa15d8d188eda119
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 17:06:01 2017 -0700
+
+    altos/nucleo-32: Add lisp save/restore
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 97cf9df882291b9e494b2f64f84eb37357a6ab31
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 17:01:43 2017 -0700
+
+    altos/telegps-v2.0: git ignore make results
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a324ce39bb7abadc70785a6fdce449c9441f87b2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 17:00:10 2017 -0700
+
+    Ignore ao_lisp_test
+
+commit 7064aa67189108c4ade3d2e7eac9a704b7849626
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 22:26:31 2017 -0700
+
+    Update releasing to add more firmware bits
+    
+    Also, document what is needed to get a new product into the build
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f0f69ab309869e914536d674d49d68a8dd31b080
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 22:25:57 2017 -0700
+
+    altosui: Add TeleMini v3.0 and EasyMini v2.0 firmware to windows package
+    
+    Sigh. This can't easily be done from Makefile.am
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8b9557f7946703888be97633cf3e54216c652f30
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 22:25:14 2017 -0700
+
+    altos/ao-bringup: Switch turnon_easymini to v2.0
+    
+    Not planning on buildin more v1.0 boards
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0d685ac0916229c23a299b11dad48af749eb27ea
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 22:01:04 2017 -0700
+
+    altosui: Ship telemini v3.0 firmware
+    
+    Even though we don't provide a cable for reflashing yet
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d7d1452d03bcfb14990546d57d9d858ae3135008
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 21:59:16 2017 -0700
+
+    altos: Add telemini-v3.0 and easymini-v2.0 to default altos build
+    
+    Make sure they get built for releases
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 41d5bb89973c7a358d08c538f1b52c45b0bbec30
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 21:56:14 2017 -0700
+
+    altos/easymini-v2.0: Add EasyMini v2.0
+    
+    Like EasyMini v1.0, but with the STM32F0 processor instead of LPC
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 43cf1991f042e50fb6ec0b037f6d212436e3d31b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 21:54:25 2017 -0700
+
+    altos/telemini-v3.0: Fix license
+    
+    Was GPL2, switch to GPL2+
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e0be779ac401f063b968aaac9460c972a728d309
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 21:32:02 2017 -0700
+
+    altos/stmf0: Not all timer configurations use AF2
+    
+    Allow applications to select other configurations.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 202d556241d56ec4a27f202575d6945dc09f9e03
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Mon Apr 24 20:04:37 2017 -0600
+
+    add telemini-v3.0 to list of binaries we stach in LLC repo for production use
+
+commit ef7fbbfa308918ebae5d2499aabccc6562a80dfa
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Mon Apr 24 19:46:05 2017 -0600
+
+    two more places where telemini-outline.pdf filename needs to be updated
+
+commit 9c95bed92a45741e6c1ad0ab4941f13370b77648
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 15:47:08 2017 -0700
+
+    Bump to version 1.7
+    
+    TeleMini v3.0 support
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3544c33c2f386fb292de9e74982717a002f37440
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 17:11:03 2017 -0700
+
+    altoslib: renamed AltosSensorTMini2, but didn't update AltosIdleFetch
+    
+    Because Java found the old installed version of this library. Thanks!
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5914231bfe8220a92dde17901b952e919a40d568
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Mon Apr 24 17:18:10 2017 -0600
+
+    update copyright year in docs
+
+commit 8e5b4359050701513a807131564ae54f2e6b919b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 16:40:46 2017 -0700
+
+    altos/ao_pad.c: Use #if HAS_LOG instead of #ifdef HAS_LOG
+    
+    TeleFire v0.1 defines HAS_LOG to 0.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c57a5c018e4bd0a0033c8759132a648977bf45f7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 24 15:59:23 2017 -0700
+
+    doc: Errors in the TeleMini v3.0 updates found by Bdale
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b6b58aa2fbae1e7782b5a0b700544efe319fe34e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 22 22:04:31 2017 -0700
+
+    altos: Move old AO_LAUNCH defines to cc1111/ao_launch.h
+    
+    These were getting accidentally used by ao_pad.c
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cd291d38b92b31c3612e6de6cdf4e5988fc01c12
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Apr 23 00:02:47 2017 -0600
+
+    allow multiple tests to be logged on telefiretwo without rebooting
+
+commit d75351c5a07241bcbb951758796b4f639ace6b1f
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Apr 22 23:42:23 2017 -0600
+
+    implement static test start and stop protocol for telefiretwo+telebt
+
+commit 6cfd9411026d536b5b75098b8c9ec3ceb3d945aa
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Apr 22 23:02:53 2017 -0600
+
+    eliminate spurious close braces
+
+commit e3b30d4bd6faf68c885791fb87229558cc1157a6
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Apr 22 23:01:44 2017 -0600
+
+    add static test start and stop commands to radio protocol for telefiretwo
+
+commit e5e0ce18b2ae684896a6d7d0a4c10269199d95b5
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Apr 22 23:01:26 2017 -0600
+
+    enable logging support in telefiretwo
+
+commit e05b281e6d1a7a4fa92d52f2491f27266045df96
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Apr 22 17:20:41 2017 -0600
+
+    cobble up a command to toggle logging on/off on TeleFireTwo
+
+commit db12c17e9538bd82f2c2bf21357887ee7d894a1c
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Apr 22 16:59:03 2017 -0600
+
+    a stab at turning on rudimentary logging for telefiretwo
+
+commit 6804ead7f7e54ff34b257e10e381dc52d5a61b06
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 22 15:55:48 2017 -0700
+
+    altoslib: Add TeleFireTwo eeprom support
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 359e2d6eca5258f4fabc59772f1320e195a7397c
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Apr 22 16:36:18 2017 -0600
+
+    fleshing out logging for telefiretwo
+
+commit 439a51ed503b74c1739cf150cdc91685653deed0
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Apr 22 15:45:52 2017 -0600
+
+    enable spi flash on telefiretwo
+
+commit ffc90fa3f932aef4dd85147817949aa9474b6d26
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Apr 22 11:38:08 2017 -0600
+
+    fix TeleFireTwo product name in ao-list output
+
+commit 4682323a4bf147b9a908f5f9104bf01ab2cf0533
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 21 23:02:57 2017 -0700
+
+    altos/stmf0: Pull beeper pin low when beeper is off
+    
+    This avoids having the pin float and pick up noise from any adjacent
+    signals, like TeleMini's radio.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit eb1c2bf5244840049c0a58e0ceecfcd9f5c290dd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 21 22:24:00 2017 -0700
+
+    doc: Finish updates for v1.7
+    
+    Scrub all TeleMini references and make sure they're fixed for v3.  No
+    'emergency' mode yet.  No reflashing yet.
+    
+    Add v1.7 release notes.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5849ee6c09669e6d2e6940a76bcb5cc23178fc68
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 21 21:32:26 2017 -0700
+
+    altos/lpc: Really fix aes entry in lpc vpath
+    
+    I added another entry instead of fixing the existing one. Not ideal.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c833c93e812936125cfe9532523ea36b5046e58d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 21 18:16:45 2017 -0700
+
+    Replace turnon_telemini with v3 version. Add test-teleminiv3
+    
+    Prepare for TeleMini v3.0 release.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8978687dc2ae90e4005a8f7d598940b7df6a4359
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 21 18:08:25 2017 -0700
+
+    doc: Update TeleMini v3 photos to production unit
+    
+    Replace prototype photos
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 86a54146b58be86c58fb45386c7abcfa0bb11677
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 21 17:15:05 2017 -0700
+
+    alots/stmf0: Fix vpath entry for AES directory
+    
+    Mis-placed )
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 64ac93f5495db7a8b06f1eb4fe4eb2418125d792
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 21 17:06:23 2017 -0700
+
+    altos/lpc,altos/stmf0: Use -n flag to work around link editor issue
+    
+    Something changed in the link editor which makes it complain about 'no
+    space for program headers' on LPC and STMF0 builds. Somehow, adding
+    the '-n' flag to the linking step fixes it. It doesn't appear to break
+    the build, so I guess it's ok?
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 77c76e429074a53c1c5230a7b5e665d1715b296f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 21 17:04:28 2017 -0700
+
+    altos/telemini-v3.0: Remove vestiges of the pre-USB code
+    
+    Pre-USB telemini v3 designs had a separate firmware load for radio
+    calibration. Now that we've got enough USB to perform flash/cal/test,
+    we don't need that other firmware load, so we can remove the remaining
+    Makefile remnants of the calibration load.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit adb842b64b04a7d70e543bad7ae59807d549e85a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 21 16:40:58 2017 -0700
+
+    altos/lpc: Add (void *) cast to fix alignment warning
+    
+    The -Wcast-align warning is generated when this cast is not present.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 51ce352d179835ca08e4cf9326e9e77d6b972fb7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 21 09:18:48 2017 -0700
+
+    altos/lpc: Fix up Makefile definitions
+    
+    vpath reference to aes was busted.
+    WARN_CFLAGS needs -Wcast-align.
+    Wrap AO_CFLAGS.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ec319edd2cda321d7542784b997acd0da040fa3d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 21 09:17:18 2017 -0700
+
+    ao-test-baro: Be more lax about altitude checks
+    
+    High pressure here today and the altimeter is reading -69m. Allow down
+    to -100m when testing baro values.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7db49a2052ec905cdc02f626c0933ca6889d64a4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Apr 19 23:08:56 2017 -0700
+
+    altos/telemini-v3.0: Add flash loader
+    
+    Now that telemini has USB, use the boot loader to make it easy to
+    update firmware.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d1ba276c6e54564f82920f65bf4c19df85c9ea56
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Apr 19 23:08:06 2017 -0700
+
+    altos/telemini-v3.0: Update to production hardware
+    
+    Removed LEDs. Added USB. Flipped lots of pins around.
+    
+    This appears to make telemini work.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 93983730a6628a2a85b6fc543df236b35d501ee9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Apr 19 16:00:24 2017 -0700
+
+    altos/telebt-v3.0: Add LCO bits for testing
+    
+    Add the USB commands for LCO testing to TeleBT v3.0
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 944d8466a31842c34304b77364d632e259238018
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Apr 19 14:19:28 2017 -0700
+
+    altos/telefiretwo-v0.2: Add AO_CC1200_SPI_SPEED
+    
+    Needed for products with different SPI speed options.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1e7143e5d448cd05c355f4a323ae4892b02022ac
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Wed Apr 19 15:08:15 2017 -0600
+
+    add new ADC channels for telefiretwo
+
+commit 6e699fa4971668bbe569d2a0e2ed9f891877d140
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 18 16:47:43 2017 -0600
+
+    need top level Makefile too
+
+commit 9fa46346d576081f99860cad96c91bcf63233649
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 18 16:47:05 2017 -0600
+
+    builds, loads, runs, not very useful yet
+
+commit 207403e53cc80b0649ce3c004f97d8e1dad824c8
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Apr 18 16:33:27 2017 -0600
+
+    copy telefiretwo-v0.2 to start firmware for v1.0
+
+commit f69d85e2b32370ab68e2725e739417cad6d7a590
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 13 21:48:46 2017 -0600
+
+    telegps-v2.0: Remove fec_tx code and ADC logging.
+    
+    This gets telegps-v2.0 to link.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4e561ae43a734d870470e36c41232482bd5f398f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 13 21:47:14 2017 -0600
+
+    altos/stmf0: Split up rom load in altos.ld to make linker happy
+    
+    The linker isn't happy when the .ld file tries to add text, the .exidx
+    and .rodata segments in the same block. Split them up for success.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a5c8b8c59f99108233d99ceceb6f85315694e4b1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 13 21:18:58 2017 -0600
+
+    cortexelf-v1: Fetch data at TPB rising when MWR or MRD are low
+    
+    This should get the right value at least.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3390c62b6d0761764ec5249d72bda33b984a8f90
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 13 21:16:52 2017 -0600
+
+    altos/telegps: Inherit LDFLAGS from lpc make specification
+    
+    Somethings messed up with cortex-M0 linking, and this isn't helping as
+    it overrides the LDFLAGS coming from the architecture.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f18793efb1fbfd17963b9146fae084f2b843d7a3
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Thu Apr 13 19:36:49 2017 -0600
+
+    initial cut at telegps-v2.0 firmware
+
+commit eb0b2b4e9f56d1d6fc2b06e39c8372dfcdf3b1f5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 9 13:03:50 2017 -0700
+
+    cortexelf-v1: Initialize key matrix code
+    
+    This gets the hex keypad working.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6efa53bafda18313742849a6c4992f09c3e403c3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 9 12:59:07 2017 -0700
+
+    cortexelf-v1: Bump SPI pin speed to 40MHz to for sdcard. Fix VGA DMA.
+    
+    Tell the DMA code to leave the DMA engine enabled so the VGA output
+    can use it.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c97b4c65d66078a4e187b782669e6b36ee92d30c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 9 12:56:59 2017 -0700
+
+    altos: Use MP switch in cortexelf boot loader for force loader mode
+    
+    Provide a way to get to the boot loader on the cortexelf board by
+    turning the MP switch on.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9e80b8bd10433ecc6ebe7c295e16b62b3883987d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 9 12:55:34 2017 -0700
+
+    altos: Escape lisp REP loop with () input
+    
+    Provide a way to get out of a lisp read-eval-print loop that can be
+    easily input from the keyboard.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 83c1e4e8ca684f555cba252efd3882f811d8e154
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 9 12:54:57 2017 -0700
+
+    altos: Document a few more SPI mode bits in VGA driver
+    
+    Just comment changes
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 24cd5dd33ccf65c1b277911c460a89ec2b52e421
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 9 12:53:34 2017 -0700
+
+    altos: Drive row low instead of high in matrix driver
+    
+    Driving it high won't work all that well as we're looking for zero bits.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a68fb412589819980759d49565a084b23eee8b8f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 9 12:51:49 2017 -0700
+
+    altos: Place AS1107 in 'normal' mode at end of init sequence
+    
+    This makes sure the device is out of reset mode while initializing,
+    and then placed in normal mode to turn on the display.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 04d4b17635fc9395c70aa0840971c00082f509ba
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 9 12:48:54 2017 -0700
+
+    ao-elftohex: Add conditions for skipping ELF sections
+    
+    Skip sections with size 0, or which are of type SHT_NOBITS or which
+    don't have the SHF_ALLOC flag set.
+    
+    This avoids crashing on sections which don't have any data to copy.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 86d5119f19b5f3131d224982e011fd233b48aa22
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 4 16:05:15 2017 -0700
+
+    cortexelf-v1: More 1802 noodling
+    
+    Add code to track the address and data displays, change how 1802 pin
+    tracking works
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 301b724d2169f4ac46d921f518455c783e1dd894
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 4 16:04:25 2017 -0700
+
+    stm: Add more mask-based GPIO controls
+    
+    Lets cortexelf do more things with groups of pins, rather than one pin
+    at a time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 71e430bb39fc97e543778f7bc1f1bef554ba8b75
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 4 16:03:36 2017 -0700
+
+    altos: Allow programs to enable SDCARD debugging if desired
+    
+    Provides for per-application control over SDCARD debugging
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4eced9224f40e48d7057352b3424c18025f43f25
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 4 16:02:46 2017 -0700
+
+    altos: Disable FAT commands unless requested
+    
+    This are debugging commands; don't provide them unless requested
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d4ff161e89d852c07934704ea2cbea20a48259a7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 4 16:00:56 2017 -0700
+
+    telegps-v0.1: Hack up for SDCARD debugging
+    
+    Disable everything not SDCARD related for debugging.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 920b70fd5f6b78461c7ebae6b1e6490a0e050bc2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 4 15:59:56 2017 -0700
+
+    altos: Define CC115L spi speed in each product
+    
+    Different SoCs have different SPI speeds available; have each product
+    specify the speed to use instead of trying to use 4Mhz everywhere.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 280eefc8f86e90e742c536a074d7284cce03af15
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 3 11:41:51 2017 -0700
+
+    cortexelf-v1: Add pin definitions for 1802 connections
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0197157a295d848bac65cf7f4457dd5a99af24e3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 3 11:37:21 2017 -0700
+
+    stm: Add a few more GPIO functions to make dealing with the 1802 easier
+    
+    ao_gpio_set_mask and ao_gpio_get_all
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 89c8e0299504e66fc416a778055958cff467e008
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 3 11:36:52 2017 -0700
+
+    cortexelf-v1: Make bit flipping array constant
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 47004dfe8ee8c8b31085b066d3d0fd5142fd49da
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 3 09:36:00 2017 -0700
+
+    cortexelf-v1: doodling with 1802 bits
+    
+    Just some random ideas about how to manage the 1802
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5bb9cf38c84663713c178f54b684d40b6c00b11d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 20:33:49 2017 -0700
+
+    cortexelf-v1: Add bit flipping array generator
+    
+    Someone hooked up the data lines between the systems backwards, so we
+    get to swizzle the bits in software.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8c1478b55f5dbe9711b31a34d4f5e3563f1f42d2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 19:32:17 2017 -0700
+
+    cortexelf-v1: Hook up hex keypad using matrix input driver
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 79215de60d3e11b4abd1ecd2fa9575a323b76754
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 19:31:45 2017 -0700
+
+    altos: Allow buttons to be high when pressed rather than low
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 09f8710eb320f37f20dda8c635497c2b505d25e2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 19:30:57 2017 -0700
+
+    altos: add button matrix driver
+    
+    Scans the matrix once per clock tick queuing events for changed keys.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 17ec1c510ccc42bbc387940b5805f452697f78d6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 17:39:26 2017 -0700
+
+    cortexelf-v1: Hook up AS1107 in test mode
+    
+    Provide a 'L' command to display values
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cc1b56faa88c75c9c86af89c77d7f1349573b7b0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 17:39:05 2017 -0700
+
+    altos: Add AS1107 LED display driver
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1bc48b075f76bfef258f516549573429b24f284c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 16:37:42 2017 -0700
+
+    cortexelf-v1: Add buttons
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8284d3639cd24e2fa0faf1e35e7276ba35a24f8f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 16:22:28 2017 -0700
+
+    cortexelf-v1: Add serialblather command.
+    
+    This reads from stdin and dumps it to both serial ports until you type ~
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6fb817f218a69b28973b0d059d71809717b1e2d1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 16:17:33 2017 -0700
+
+    lisp: Fix up lisp build so projects can get ao_lisp_const.h built as needed
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3ce663875d69739cc2d43fcd88b22820cd9d6500
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 15:56:17 2017 -0700
+
+    stm: Use common flash wait loop instead of inlining
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1f5f0638f283fbb784021873c649109d4ed0257c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 15:53:17 2017 -0700
+
+    cortexelf: Add lisp interpreter
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 54c76d48924fecc2aeabbc352c553822a87f9d19
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 15:40:03 2017 -0700
+
+    cortexelf-v1: Use new memory map to access all flash and ram. Add fat.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7b031d5a86213364196b67f7e3f92865da8adbf9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 15:28:45 2017 -0700
+
+    cortexelf-v1: Hook up serial consoles for debugging
+    
+    This will make playing with serial ports easier for now.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 62b0228aed5191c8d769f9f34143a13036e210a7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 15:18:34 2017 -0700
+
+    cortexelf-v1: Fix clock to drive VGA at 640/480. Add sdcard, remove others
+    
+    VGA requires the CPU to run at 24MHz.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 637d522c6a15b47051103ccc3626be3206a7a2df
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Apr 2 15:04:09 2017 -0700
+
+    cortexelf-v1: Add ps/2 and vga with graphics
+    
+    Start hooking up devices with known drivers.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9f451db9889cd578c3032356fd2aa4b5ed45878d
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Apr 2 15:47:31 2017 -0600
+
+    capture pnpservo makefiles too
+
+commit bc150497de8539827177805c7f4430c67ca6762f
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Apr 2 15:47:14 2017 -0600
+
+    makefiles too
+
+commit 66b06332dadd83c309bbfe02240b7a071fd57ff2
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Apr 2 15:41:56 2017 -0600
+
+    initial skeleton of CortexELF support
+
+commit d318b5cfc1a0312697739576d35cc1a190d88849
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Apr 1 12:23:24 2017 -0600
+
+    first rough cut at skeleton of code for pnpservo .. altos boots and runs
+
+commit 190cdaa5cb18e78caeeaaaaed6a9d304e939eb6b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Mar 5 22:42:37 2017 -0800
+
+    doc: Rename telemini doc file from telemini-v1.0.inc to telemini.inc
+    
+    This file now contains information on both TeleMini versions.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7bb4dbab45f98dd5fd85d9daf12d27b153c0ef3a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Mar 5 22:33:36 2017 -0800
+
+    ao-tools/ao-flash-stm: Use openocd instead of st-utils
+    
+    openocd upstream and debian package can both flash stm32l processors,
+    so use that in preference to st-flash.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f004eaa2c26b4c61a8c3de2c0667a4e9865e704d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Mar 2 13:37:12 2017 -0800
+
+    ao-tools/ao-flash-lpc: Adapt to current openocd LPC support
+    
+    Openocd 0.9.0 has generalized the lpc11xx support for all lpc11xx
+    processors, not just the lpc11u14. This replaces the specific
+    lpc11u14.cfg with the general lpc11xx.cfg file.
+    
+    Unlike the build we were using, this doesn't adjust the
+    'verify' command to adapt for the checksum which gets added during the
+    flashing process. Hence, we disable verification and trust that if the
+    flash loader works to load the OS, it's fine.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 59aaac44e3e164b326518b324b52d115fbb76fca
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Mar 1 14:01:59 2017 -0800
+
+    telemini outline svg had wrong version number
+
+commit b5a42665d7811707b6bd4a67d7d8e6532daa29e4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Mar 1 13:53:36 2017 -0800
+
+    Add initial TeleMini v3 docs
+    
+    Uses pictures of the prototype.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d1c2a5729da00be9d393015bbaa2d2f58e936d84
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 17:34:43 2017 -0800
+
+    altos/nucleo-32: Update lisp files, add beeper support
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d1956000ba2e6260977aa669475d3ff725578b55
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 17:32:09 2017 -0800
+
+    altos/lisp: Not quite ready to start making it look like scheme yet
+    
+    Lots more code to write before these symbols can be exposed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9603d737e9ea58217ff2c2dd7c350c7a29fba980
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 17:29:15 2017 -0800
+
+    altos/stmf0: Support timer 2/3 for the beeper
+    
+    Tested on timer 2, all four channels.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 003e9479ad4364d9f7acf189b35f32ccdfd43be0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 16:51:09 2017 -0800
+
+    altos/stmf0: Support tim1 beeper channel other than 3
+    
+    ch1 was broken and ch2 didn't have any code at all.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3c3f5e316c0c2464568db883d50881f5b898abac
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 17:33:37 2017 -0800
+
+    altos/telemini-v3.0: Add beeper defines needed for more general beeper code
+    
+    The beeper code now wants to know which timer, port and pin are in use.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit dc4bee9600be22531fd3c5bec15f712eb2e7ed2d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 12:18:58 2017 -0800
+
+    altos: Add stm-vga demo project
+    
+    Uses the VGA and PS/2 drivers to provide an interactive console.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0eadc2d50417408beebd50e4a0e7e12430ed67ef
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 12:16:27 2017 -0800
+
+    altos/stm: Add draw and lisp to make search paths.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c296acd643698d0128e2f58f91a9cfeea63f580a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 12:21:39 2017 -0800
+
+    altos: Add console driver using VGA and PS/2
+    
+    Provides an interactive text console.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c1d52178ce63ebdc44c83d1bca5027942e2d778c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 12:19:42 2017 -0800
+
+    altos: Add PS/2 keyboard driver
+    
+    Interrupt driven, includes standard US keymap.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6b39d3093c3b87689717bb03988d160473c53c64
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 20 00:04:27 2016 -0800
+
+    altos: Add VGA driver for STM32L processors
+    
+    Generates vsync/hsync using timers and pixel data using the SPI port.
+    320x240 video using 640x480 mode and a 24MHz "pixel" clock.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1301d576d9bface4cc625e4a4187401f93f54444
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 12:17:42 2017 -0800
+
+    altos: Add bitmap drawing code
+    
+    Includes solid fills, text and lines.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a487d2fcba57141f6b083d5612c76bac5ad1ac7c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 12:15:45 2017 -0800
+
+    altos/stm: Add nvic priority register fields. Add more TIM234 defines.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 80fd7f7bef5320ce86048d74dc4a72e1ec361120
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 12:14:10 2017 -0800
+
+    altos/stm: Make i2c code handle PCLK1 of 24MHz
+    
+    Just adds the necessary defines to the code.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 72ea90d28817549c4343d2fea03a4c951f849cbe
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 20 12:12:43 2017 -0800
+
+    altos/stm: Allow DMA channels to be hijacked by other code
+    
+    This lets code which needs finer control over DMA to use the channel
+    without interference, and leaves the DMA engine running so that it can.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5dc5e2e238f8c1a8ca35d85ec046124afa9385ad
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 10 14:45:25 2017 -0800
+
+    altos: Allow for console to be used for stdio
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e6fb0f13ba230ad9ce86cfa7f56491a0a3bd4b3d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 10 14:43:07 2017 -0800
+
+    altos/avr: Avoid warning about unused args in stdio_put and stdio_get
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 839eadbc8e5694842eb498c6e47cfbf08ba8fbf4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 20 02:59:40 2016 -0800
+
+    altos/stm: Allow use basepri instead of primask for masking interrupts
+    
+    This allows for high priority interrupts (priority 0) to run, even
+    when other interrupts are blocked. Code executing in such interrupt
+    handlers must not attempt to control task execution as that will race
+    with the scheduler.
+    
+    Select this by defining AO_NONMASK_INTERRUPT in ao_pins.h.
+    non-maskable interrupt priority is AO_STM_NVIC_NONMASK_PRIORITY
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 088ddbb177efc8be2fc467524dc1668553080d3b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 20 20:54:10 2016 -0800
+
+    altos/stm: Interrupt priority is in the upper bits of the priority mask
+    
+    Because the STM32L only offers 16 priority levels, the bottom four
+    bits of each priority mask are not used. All of the interrupt priority
+    settings in the system were using values < 16, making them all
+    effectively the same. Fix that by moving them into the upper 4 bits
+    and using symbolic constants everywhere.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 992eee8e0b4c6c774f3355af107fb422019ff4e5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 20 20:56:01 2016 -0800
+
+    altos: Don't wait while idle if trying to minimize interrupt latency
+    
+    Keeping the scanout running reasonably means keeping interrupt latency
+    constant, and that requires leaving the CPU running. Don't wait for
+    interrupts when the system is running in this mode.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f0c187dd6479996b83f85b6decf303ec0fc70fe5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jan 6 09:10:23 2017 -0800
+
+    ao-tools/ao-usbload: Pad image with 0xff instead of random bits
+    
+    Clear the temporary block to 0xff before copying in the target data so
+    that any unused bytes end up being left at 0xff instead of inheriting
+    whatever data was in the block before.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 61f729567ff6355ab52c3e83399761103022a41a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Dec 17 20:57:38 2016 -0800
+
+    altos/cc1111: Remove unneeded initialization in ao_timer.c
+    
+    The timers are all stopped when the chip boots, so no need to stop
+    them. This saves some text space, allowing the current code to (just
+    barely) fit.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1029a6e4a61b20698e00e29fc0c8c3877f1e7b0f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 19 17:36:04 2017 -0800
+
+    altoslib: Add TeleMini v3 support
+    
+    eeprom, telemetry and monitor idle. This is just like TeleMini v2,
+    except the ADC ranges are all difference as the voltage dividers are
+    different and the ADC itself has a different range.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5c272d8e50d0b23f31a6a9ebdad81fc514936222
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 19 17:40:28 2017 -0800
+
+    altos/telemini-v3.0: Swap main and apogee sense pins.
+    
+    These were just hooked up wrong in the software.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 59ac667c4ae14e0fa699fb0f398d31763a237646
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 19 17:39:21 2017 -0800
+
+    altos: Split out TeleMini v3 log/telem labeling
+    
+    Allow the ground software to know which TeleMini version is in use,
+    even though they are very similar with only ADC values differing.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c75736c9cd8f869c257a3024efda843cf0edf2a3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 18 22:56:49 2017 -0800
+
+    altos/telemini-v3.0: Finish initial turn-on
+    
+    TeleMini v3.0 is nearly working; there are some ADC issues still, and
+    lots of altosui work left to decode the new telemetry packet.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit efdeb402d04e7f04ad4bd2764f8f1ca7270b3dff
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 3 06:52:57 2017 +0100
+
+    altos/telemini-v3.0: Update to second prototype version
+    
+    Separate radio xtal means we run the processor at 48MHz.
+    Fix the battery monitoring voltage divider resistor values.
+    Disable most of the code until we've got the radio working.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 97c814bc12893bee40f9dc38fabbaa69e0dc6aed
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jan 28 15:35:48 2017 -0800
+
+    altos: Initial TeleMini v3.0 code
+    
+    For first prototype, which attempted to use the SoC clock for the radio.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b94fe9915b33283df6b86bcdc96ceada1fc71ce6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 19 17:42:05 2017 -0800
+
+    altos/stmf0: Add adc and beep support for TeleMini v3.0
+    
+    Note that the ADC code is running very slowly as required by the high
+    impedance dividers on the TeleMini v3.0 pyro circuits.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1dc31a46f1d1adfdeab444664e581a780d995bf7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 18 22:49:34 2017 -0800
+
+    altos: Require SPI speed to be declared for cc1200
+    
+    The cc1200 can't run SPI faster than 10MHz, so make sure every device
+    picks a SPI clock slower than that.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0bf267a6e2d401c8bd6a06d995e3d000777d622a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 18 22:55:41 2017 -0800
+
+    altos: Allow applications to define LEDs for ao_report.c
+    
+    In case they don't have both a red and green LED.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cf10239e5485a101fcd7a12b28be927af94d577a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 18 22:54:35 2017 -0800
+
+    altos/stmf0: Allow projects to not use the USB boot loader
+    
+    Let applications define HAS_BOOT_LOADER on their own if desired.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3770a5f527cb6d519ce22fe91e0cc4078bf72661
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 18 22:53:03 2017 -0800
+
+    altos/stmf0: Complain if the SPI configuration isn't complete
+    
+    If the pin usage values SPI_1_PA5_PA6_PA7 or SPI_1_PB3_PB4_PB5 aren't
+    defined, then the speed values for the pins aren't going to get set
+    correctly, which results in erratic SPI behaviour.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f85997eb53779e637dca697d0d96da7d1235fa80
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 3 06:51:11 2017 +0100
+
+    altos/stmf0: Allow apps to leave interrupt vectors at 0
+    
+    TeleMini v3.0 doesn't need a boot loader, so we'll have the app run
+    its interrupt vector right at the bottom of the address space instead
+    of copying it to the bottom of ram and reconfiguring the chip to use that.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f43c3ad0c643f714c523e513bdc8585c6d5a4050
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 18 22:46:29 2017 -0800
+
+    ao-bringup: test-chaoskey needs to use the SerialNumber dmesg line
+    
+    I had a locally hacked kernel which was reporting the serial number
+    along with the device name. Instead of depending on that, just look
+    for the regular SerialNumber report which is in all kernel versions
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a21c7b5156e428a4f8e029fdb652c8ca1c63823b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 3 06:47:32 2017 +0100
+
+    ao-bringup: Allow serial number on turnon_easymega cmdline
+    
+    This makes it a bit quicker to do a batch of them.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 51edc29f5ba758ef8ba4fdd5f53fdabc6a31c98a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jan 28 15:33:53 2017 -0800
+
+    altos: Eliminate printf format warning with long vs int
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d96224c2fdc535d08de23aec30d62d4ada9fb8d3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 22 15:29:13 2017 -0800
+
+    altos/chaoskey: use both halves of the CRC
+    
+    When pulling 16 bits from the 32-bit crc, instead of just using the
+    low bits, xor the two halves together. This appears to even out the
+    number of zero and one bits.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bc076747f6cc00508aef909a3a5bd3edf8c9bd66
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 18 12:14:59 2017 -0800
+
+    altos/lisp: Start adding scheme symbols
+    
+    Migrating to something more like scheme
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9c85c9d60334edc2af65a47124873e94e0ff1e9c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 10 14:47:03 2017 -0800
+
+    altos/lisp: Add casts to keep the latest GCC from whinging
+    
+    Something about alignment issues.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 399ba0a62422f71ff9669ba03b6a058bb2981c27
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 10 14:45:59 2017 -0800
+
+    altos/lisp: Tell compiler that the two lisp memory pools are aligned
+    
+    Otherwise, it will generate unaligned accesses to things fetched from
+    them. Sigh.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 30d6b241447cb922b9316e86817f6e31eb973eed
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 20 01:41:59 2016 -0800
+
+    altos/lisp: Clean up hanoi.lisp demo a bit
+    
+    No serious changes.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 329f76d5e2732ab1c1b10223842d7816275c7e8b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 23:37:44 2016 -0800
+
+    altos/lisp: Move stack recursion check after null check
+    
+    Don't crash when printing null stack this way.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1999b2c915bd5b7df70cffa7777e411d3032d2d5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 22:57:22 2016 -0800
+
+    altos/lisp: Include memory stats for test program
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 129e07ccc9b8a33491a905a91ca6c5b0509aba9c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 22:53:36 2016 -0800
+
+    altos/lisp: Cleanup some DBG defines
+    
+    Get rid of the remaining duplicate defines.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2c80fea1936ff956df127b43e65139afec3929a0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 22:52:53 2016 -0800
+
+    altos/lisp: Share binary search for memory chunk between mark and move
+    
+    Save some text space.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1b1bc92e6781c563e3d3b117b9cda2dddccc44de
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 22:52:10 2016 -0800
+
+    altos/lisp: Add builtin 'collect'
+    
+    Collect memory, return amount free.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c3a4d7721f0f5d082336b8cc9c9d765ad2f7d17e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 22:41:46 2016 -0800
+
+    altos/lisp: Sort frames by atom
+    
+    Fortunately, the collector always retains the relative order between
+    addresses, so we can sort based on the atom address itself. This
+    reduces the time spent looking for names in larger (e.g. global)
+    frames.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8f833f31f625526a5f1e9a1bd561733b5bb2bcaa
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 21:17:54 2016 -0800
+
+    altos/lisp: Build new ao_lisp_stack.c into test and lambdakey
+    
+    Helpful to include the new source file.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 35424031747b41b1125e715a975f1679b89fc27a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 21:16:11 2016 -0800
+
+    altos/lisp: bounds check in move_map plus binary search
+    
+    This makes move_map faster by skipping all addresses which aren't
+    changing.
+    
+    Also changed the interface from address to offset to avoid computing
+    the offset multiple times.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 85db6d68a273859482e036b60fec7e2b84e9c262
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 21:15:33 2016 -0800
+
+    altos/lisp: Empty lambda body is not an error
+    
+    It's not very exciting, but it's still legal
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ecef616599d5ec4fd5d42e67d0dc779a0630079b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 21:14:47 2016 -0800
+
+    altos/lisp: Use poly stashes for stacks
+    
+    Saves some memory.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4c812b8c903bd7e689572f8800ecc092af9cfe18
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 21:12:50 2016 -0800
+
+    altos/lisp: Make DBG settings global
+    
+    This avoids having different values in different files, which wasn't useful.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e600fc409c577eec02af612a36431c477a9c875e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 18 19:04:05 2016 -0800
+
+    altos/lisp: Add continuations
+    
+    This provides call/cc and makes 'stacks' visible to the application.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2cc8ca2b781be0a6e7ce14405eb4611bc00a3a3e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 17 18:45:31 2016 -0800
+
+    altos/lisp: Take advantage of implicit progns in hanoi demo
+    
+    Remove extra progn wrappers now that cond, lambda and while all
+    support implicit ones.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 11c79167cdd56015bbd1645db2d4394dcb4f0fbb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 17 16:52:30 2016 -0800
+
+    altos/lisp: have 'while' return the last body value
+    
+    Instead of always returning 'nil', let while return the last body
+    value.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9126ae10b3c5acf0055caa31b1f08215675af784
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 17 16:51:34 2016 -0800
+
+    altos/lisp: Take advantage of implicit progn in ROM code
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit eaa528e4e62ba1d9765888760d387303487b2e01
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 17 16:08:15 2016 -0800
+
+    altos/lisp: Make lambda, cond and while all have implicit progns
+    
+    This lets all of these execute more than one sexpr, returning the
+    value of the last.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ffaf73407bcdf6bc4120c90212de4a2f52cf7991
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 17 16:07:42 2016 -0800
+
+    altos/lisp: Compile ao_lisp_make_const -no-pie
+    
+    Makes debugging easier
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 51bdee662fdfad1937c576daadd2e5eacac17905
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 17 16:06:55 2016 -0800
+
+    altos/lisp: Fix uninitialized values in ao_lisp_make_const
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 84732aebd10c293101727ba567bfc733dc30efca
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 17 16:06:05 2016 -0800
+
+    altos/lisp: Dump globals on error
+    
+    Useful for debugging
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 05ac336ea954c0f5eefabdefb0c8c5747be3fd32
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 17 16:05:29 2016 -0800
+
+    altos/lisp: Fix error atom name in ao_lisp_length
+    
+    Cut&paste error.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2ce7ab37df07b3c1ea1ca9befc06477e3b6cdeac
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 17 16:04:38 2016 -0800
+
+    altos/lisp: Remove some stale frame debugging checks
+    
+    No-one sets frame->_num to 0xff to hit these
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d37945f1404043e6bd287ce7ad7a57bc3289609b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 16 14:59:08 2016 -0800
+
+    altos/lisp: Clean up hanoi.lisp comments.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bcf5eb5825b1217d74f117b02d09b4ce4b007beb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 16 14:12:59 2016 -0800
+
+    altos/lisp: Eliminate compiler warning about array bounds at -O3
+    
+    Using ao_lisp_pool - 4 caused the compiler to whinge about computing
+    an address outside the bounds of the array. Sigh. Restructure the code
+    to do the adjustment-by-4 in the integer computations instead of the
+    pointer ones.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a5ef084659205700aab33e81d20fb89833c03249
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 16 14:00:38 2016 -0800
+
+    altos/lisp: binary search for chunk in collect
+    
+    Speeds up collect a bit
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9f19cb10cd12f86b12d0599bab5c2ee351d814ae
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 16 13:59:54 2016 -0800
+
+    altos/test: Disable position independent executables
+    
+    This makes debugging programs so much harder
+
+commit a7fcf80e22e70516d0b2da314fb17ced20a3f775
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 16 13:47:49 2016 -0800
+
+    altos/lisp: Allow empty defun bodies
+    
+    This allows for (defun foo())
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit daa06c8dedc6dc1cf21936ee2769d9d25f0567bd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 16 13:19:20 2016 -0800
+
+    altos/lisp: Optimize chunk searching in collect
+    
+    Note range of existing chunks to exclude objects outside.
+    Only look at chunks which have been set to reduce loop cost.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c8f9db184cc929ebde845730a6d4b7864e423a84
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 16 12:34:14 2016 -0800
+
+    altos/lisp: Add incremental collection
+    
+    Realizing that long-lived objects will eventually float to the bottom
+    of the heap, I added a simple hack to the collector that 'remembers'
+    the top of the heap the last time a full collect was run and then runs
+    incremental collects looking to shift only objects above that
+    boundary. That doesn't perfectly capture the bounds of transient
+    objects, but does manage to reduce the amount of time spent not moving
+    persistent objects each time through the collector.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8406ddf8f0bd5453d6213973daed35991f80972a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 15 20:37:59 2016 -0800
+
+    altos/lisp: Make hanoi example output a bit prettier
+    
+    Make the towers symmetrical instead of lopsided. Much nicer looking.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 472ecec64213e6c37b588d69ca2e8efd5e9abe36
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 15 20:25:03 2016 -0800
+
+    altos/lisp: remove nth from hanoi.lisp
+    
+    It's now in ROM.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5161f6d78647591cc7ab8774a04edbc68a09f689
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 15 20:24:33 2016 -0800
+
+    altos/lambdakey: Strip out unused code
+    
+    Make space for more lisp bits!
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ac0f7768659e288338bf452b4248ae3572ea2f7d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 15 20:22:54 2016 -0800
+
+    altos/lisp: Take advantage of multi-arg macros. Add more ROM funcs
+    
+    Added nth, or and and.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1a00bf4ac12a6505d4b23d94e99b4b46bf679020
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 15 20:21:47 2016 -0800
+
+    altos/lisp: Allow macro/nlambda/lexpr to have multiple args
+    
+    Entries from the params are bound to the formals with whatever
+    remaining formals there are bound to the last argument as a list.
+    This makes writing functions a bit easier.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5c1fa73f159de9d9839e8619494c26931521d2d4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 15 20:20:14 2016 -0800
+
+    altos/lisp: Do better checking for un-evaluated macros in ROM
+    
+    Need to look at immediate lambdas as well, and also deal with
+    recursive functions by checking for recursion at each atom
+    dereference.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 881161fe1c5fb0e2b1220c30572eb2c45bedbafe
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 15 20:18:59 2016 -0800
+
+    altos/lisp: re-use small frames
+    
+    This saves a pile more use of the allocator by noting when frames have
+    not been referenced from another frame and freeing them when they go
+    out of scope. Frames with references are left to the allocator to deal
+    with.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 994adc7a47cbf3cbf6041eca7430273f8018de08
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 15 10:32:36 2016 -0800
+
+    altos/lisp: remove duplicate 'length' lambda from hanoi example
+    
+    This function is now a builtin.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 41175ff82bc0e35c99c60b49aa62944a12917157
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 15 10:18:12 2016 -0800
+
+    altos/lisp: Get lambdakey and nucleo-32 building again
+    
+    Remove exti from the build list to make things fit.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 974717eb9dad105c9897ee24f953d98d57eaec77
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 15 09:55:22 2016 -0800
+
+    altos/lisp: Evaluate macros once, then smash them into place
+    
+    This assumes that macros are all pure functions, which should be true
+    for syntactic macros.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b3b5bd2c14cfcde6c551a87ee6da08a53f1e4bc6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Nov 14 23:04:05 2016 -0800
+
+    altos/lisp: Add license to hanoi demo
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 13a4d451b903d08e52005bcf531efa8de351bf2b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Nov 14 21:27:41 2016 -0800
+
+    altos/lisp: Improve hanoi demo
+    
+    Repaint in place, without first clearing. This makes the updates a lot
+    clealyer looking.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 74ff0c6fd6c41cdaa054dcdb3d05c7d333bc24ff
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Nov 14 21:27:03 2016 -0800
+
+    altos/lisp: Show number of collect calls in ao_lisp_test
+    
+    This helps tune the allocator
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5557f6b87a9b8bc9716de8191f2062a772a6ae6c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Nov 14 21:25:38 2016 -0800
+
+    altos/lisp: Cache freed cons and stack items
+    
+    Track freed cons cells and stack items from the eval process where
+    possible so that they can be re-used without needing to collect.
+    
+    This dramatically reduces the number of collect calls.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ce549b2c11e6b2571590021e1c0503d8a6e7a702
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Nov 14 19:55:36 2016 -0800
+
+    altos/lisp: Simplify GC a bit by only marking the head of each object
+    
+    We don't need to mark the whole object now as we're getting
+    information about where objects are by walking the tree each time
+    around the loop; ao_lisp_busy is only useful for terminating the walk
+    now.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ddb4b8d90478ae324aa207a7541352c1ac9451ee
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Nov 14 18:45:12 2016 -0800
+
+    altos/lisp: Change GC to do moves in batches of 32
+    
+    This should make it quite a bit faster than doing one at a time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit affcf6ffc08313151541993ee543bfe390165e81
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 11 23:38:03 2016 -0800
+
+    altos/stmf0: Add a comment about the requirements for using ao_flash_stm
+    
+    Need HSI clock and the flashing functions loaded in ram.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 30db58ade19ec69272a8c39c2f13d7919ca491a9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 11 23:36:22 2016 -0800
+
+    altos/lambdakey: Get save/restore working
+    
+    Need the HSI clock running for the flash hardware to work.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 33aeffc123af1f9063969acf585f1caac885ced4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 11 23:34:54 2016 -0800
+
+    altos/lisp: Append a CRC to the saved image to validate on restore
+    
+    The CRC is actually of the ROM bits, so we can tell if the restored
+    image relates to the currently running code.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8f2d60b4c029bffaa559bd1f31f5b15230dfa674
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 11 21:18:50 2016 -0800
+
+    altos/lisp: Add save/restore to ao_lisp_test
+    
+    Allow testing of the save/restore code under Linux.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit dba374516ed396633659dec571b6a44b03da8ad1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 11 21:16:09 2016 -0800
+
+    altos/lisp: Add save/restore infrastructure. Needs OS support to work.
+    
+    This sticks a few globals past the end of the heap and then asks the
+    OS to save the heap. On restore, the heap is re-populated by the OS
+    and then various global variables reset.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 29c890b4599b3bbdbd09a5915ea68a63f4e0a9ac
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 11 21:11:13 2016 -0800
+
+    altos/lisp: Make sure memmove only happens once per object. Other GC fixes
+    
+    The memmove may be overlapping, so make sure it happens only once by
+    just checking whether move_size has been set, rather than looking at
+    ao_lisp_moving; that doesn't get set when moving a noted cons as that
+    still needs to be walked at a later time.
+    
+    Fix up the various looping move functions to all use the same
+    pattern. Atom was busted.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d46ca67f93e9ecbc4d8c051c3fbdead85490b690
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 11 21:07:09 2016 -0800
+
+    altos/lisp: Make ao_lisp_ref and ao_lisp_poly non-inline
+    
+    These functions are pretty large and end up consuming quite a bit of
+    space if inlined everywhere they are used.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 00827a0ffe30938c26be216369fd2d8f8946d2c4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 11 00:28:57 2016 -0800
+
+    altos/lisp: Share mark function for mark and move
+    
+    These two operations both wanted to walk the referenced objects;
+    sharing is caring.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7f7e2431f5d1f7c1782ed6e774ccfc70fb4c87cf
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 11 00:28:31 2016 -0800
+
+    altos/lisp: add length, pack, unpack and flush
+    
+    lots more builtins
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f5a36c15f894803f8804bbc3daf105eed53d5ff6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 10 23:31:10 2016 -0800
+
+    altos/lisp: Add towers of hanoi example
+    
+    Uses vt100 escape sequences to animate the display even.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7da6bfc195fad97e3afc576c609897c131fd4d8c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 10 23:29:21 2016 -0800
+
+    altos/lisp: Deal with memory compation in the middle of operations
+    
+    Handle memory compaction in places where we've got pointers into the
+    heap across an allocation operation. Either re-compute the values from
+    managed global references or add new roots across the allocation.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 137898e3431d887e75b09d8c1ce57297a1558e43
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 10 23:28:26 2016 -0800
+
+    altos/lisp: Improve lisp test program UI
+    
+    Add a prompt for stdin, read from other files on command line before
+    stdin.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 92cdc0cf0e80c1ff3f31cce20fc2b9bda86e3638
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 10 23:25:56 2016 -0800
+
+    altos/lisp: Make read() return eof atom on end of file
+    
+    Also make it an exception to hit eof in the middle of an sexpr.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fb710f7f4f24f74ac3d45fcc423803384d986bb2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 10 23:24:11 2016 -0800
+
+    altos/lisp: use regular read-eval-print loop for make const
+    
+    No need to open code this sequence of operations.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c7d7cdc2318a97534c4c1f9c6fd2b51644be729d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 10 11:30:55 2016 -0800
+
+    altos/lisp: add progn, while, read and eval
+    
+    Progn as a builtin will help with tail-recursion.
+    while provides for loops until tail-recursion works :-)
+    read and eval are kinda useful.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 417161dbb36323b5a6572859dedad02ca92fc65c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 9 16:22:43 2016 -0800
+
+    altos/lisp: Clean up OS integration bits, add defun
+    
+    Provide an abstraction for the OS interface so that it
+    can build more cleanly on Linux and AltOS. Add defun macro.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0ee44c8e4bf5dabe6a97bf76b366c8b767c387f8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 9 11:13:58 2016 -0800
+
+    altos/lisp: macros appear to work now
+    
+    Needed an extra stack frame to stash the pre-macro state. This
+    simplified macro processing quite a bit; a macro now just evaluates
+    the function and then sends that result to be evaluated again.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 794718abc62f4610495fe2bd535a2b67bc46573c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 9 09:14:50 2016 -0800
+
+    altos/lisp: working on lexical scoping
+    
+    Not working yet
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cb4cdb115ad83ae0d75eb58e68f561d20279f027
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 6 21:47:31 2016 -0800
+
+    altos/lambdakey-v1.0: Tweak memory allocations
+    
+    With non-recursive GC, more memory is available for the heap
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6e5c1308ce33a864095eae02e7db18b0e043ab6e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 6 10:53:46 2016 -0800
+
+    altos/lisp: convert GC to non-recursive
+    
+    Use a boolean array to note cons cells which would otherwise recurse,
+    then loop until that array is empty.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d8cf97fe22acefab40d7bb321138e46d4483fef7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Nov 5 17:53:15 2016 -0700
+
+    altos/lisp: more GC issues. add patom
+    
+    Use global ao_lisp_stack instead of local stack so that gc
+    moves of that item work.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 286d07d83bd7ff361e5a904c151a75e5a9c8b071
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Nov 5 15:12:05 2016 -0700
+
+    altos/lisp: make sure stack->formals_last gets moved during GC
+    
+    Failing this leads to broken formals chains
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3366efb139653939f053c1fe4aba352ba3b66c94
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Nov 5 14:51:58 2016 -0700
+
+    altos/lisp: Change GC move API
+    
+    Pass reference to move API so it can change the values in-place, then
+    let it return '1' when the underlying object has already been moved to
+    shorten GC times.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6fc1ee0f7adc6fcb3e850bcbaabc1db705314234
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 4 16:51:12 2016 -0700
+
+    altos/lisp: get builtin macros working again
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c9456362c8bad8cd9be717f591f2d0841f88eb50
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 4 16:31:34 2016 -0700
+
+    altos/lisp: Start rewriting eval as state machine
+    
+    Ad-hoc code was incomprehensible and I couldn't make 'cond' work, so
+    I'm starting over.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c48bda3625fc507134da7b4af87a634e8eb3715b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 3 21:51:26 2016 -0700
+
+    altos: Add lambdakey
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 77db0e8162cd01c2b42737b3d71b38cea942484f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 3 21:49:50 2016 -0700
+
+    altos: Add lambda support to lisp
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 11cb03b1d336ee90c422be27588f57be573a9546
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 2 22:56:01 2016 -0700
+
+    altos/lisp: Separate out values from atoms
+    
+    This enables changing values of atoms declared as constants, should
+    enable lets, and with some work, even lexical scoping.
+    
+    this required changing the constant computation to run
+    ao_lisp_collect() before dumping the block of constant data, and that
+    uncovered some minor memory manager bugs.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9e1a787f8828fb7b750ad3310c89a89536ea5286
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 2 14:18:54 2016 -0700
+
+    altos/lisp: add set/setq and ' in reader
+    
+    Along with other small fixes
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8362393a621ea78a96e7f65f602f4bfc7bbd1158
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 2 14:18:31 2016 -0700
+
+    altos/stmf0: Add lisp to include directories
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit caba623cb013b73e1f0ca369edf98e0376bec41a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 2 14:14:23 2016 -0700
+
+    altos/kernel: Make ao_cmd_readline public. Return char from ao_cmd_lex.
+    
+    With these two changes, the readline function can be used by other
+    code.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d2408e72d1e0d3459918601712b09860ab17e200
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Nov 1 21:14:45 2016 -0700
+
+    altos/lisp: Change lisp objects to use ao_poly everywhere. Add const
+    
+    This makes all lisp objects use 16-bit ints for references so we can
+    hold more stuff in small amounts of memory. Also adds a separate
+    constant pool of lisp objects for builtins, initial atoms and constant
+    lisp code.
+    
+    Now builds (and runs!) on the nucleo-32 boards.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e2f4d25cd6f6f3787d4ee99264732d5b2ce23d4c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Oct 31 18:53:09 2016 -0700
+
+    altos: Add lisp reader
+
+commit 56d46ceaa1413415f25e47e81036426132f99924
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Oct 31 16:43:44 2016 -0700
+
+    Add first lisp bits
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2cfcc622c94d87cdbee099f457b7d63cb2fcbc71
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Wed Jan 25 12:21:29 2017 -0700
+
+    use elf, not ihx
+
+commit 4ae8eeb426ef60105ec8e53e289739e5a8ae5dae
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Wed Jan 25 12:00:20 2017 -0700
+
+    stop using /usr/share for binaries in remaining turnon scripts
+
+commit f2c7bb5879ba22df05fd1e39f01ea692313306fd
+Author: Richard Hughes <richard@hughsie.com>
+Date:   Tue Jan 10 17:15:24 2017 +0000
+
+    altos/chaoskey: Add a metainfo for the ChaosKey
+    
+    This provides the information necessary to reflash chaoskey using
+    standard Linux device firmware tooling.
+
+commit 89ecc32b90565ace078c4a84d4406a4d1f86821a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Dec 17 20:58:36 2016 -0800
+
+    altos/arm: Align data so that gcc 5.4 doesn't do byte-accesses. Add -Wcast-align
+    
+    Gcc 5.4.1 tracks alignment of data through assignments, so that a
+    uint32_t pointer which comes from byte-aligned uint8_t data:
+    
+    extern uint8_t foo[];
+    
+            uint32_t        *q = (void *) foo;
+    
+    Fetches and stores through this pointer are done bytewise. This is
+    slow (meh), but if q references a device register, things to bad very
+    quickly.
+    
+    This patch works around this bug in the compiler by adding
+    __attribute__((aligned(4))) tags to some variables, or changing them
+    from uint8_t to uint32_t. Places doing this will now be caught as I've
+    added -Wcast-align to the compiler flags. That required adding (void
+    *) casts, after the relevant code was checked to make sure the
+    compiler could tell that the addresses were aligned.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f650211f9e99e1d3d0ae13ae559dd1c082f71545
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Dec 12 16:44:47 2016 -0800
+
+    altos/stm: Make ao_usb_set_address static. Saves a bunch of text space
+    
+    I'm sure this makes the function end up in-lined, which saves enough
+    text space to fit the flash loader in ROM again.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d46698a01ed4903d36635b34867bfc4bb8fbafc6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 17 22:17:20 2016 -0800
+
+    ao-bringup: Improve EasyMini turnon and test scripts
+    
+    Wait less time before trying the test script.
+    Have the test script wait for the device to appear. And then use
+    colors to help make the results clear.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5e24d637a8af09bf64beb7fcf7be4c13eee76a43
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Oct 9 19:42:42 2016 -0700
+
+    altos/test: Fix tests
+    
+    A couple of fixups for ao_flight_test to dump pyro info only when
+    running in debug mode, and to change the aprs testing
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e3d8ad6de7d2dfabe45a285b27f465ba68844f05
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Oct 30 19:08:14 2016 -0700
+
+    altos/nucleo-32: Add basic support for STM32F042 Nucleo-32 board
+    
+    This hooks up the LED, USB and the USART.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 148f6e0a107d9e88509958700351794f2f971312
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Oct 30 19:06:20 2016 -0700
+
+    altos/stmf0: Add USART support
+    
+    The STM32F0 usart can be operated much like the STM32L usart, but the
+    registers are all moved around.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 26f2727eac0cca8930dde9d757bc094f73801859
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Oct 2 17:19:14 2016 -0600
+
+    augment TeleDongle turn on script to support serial number on command line
+
+commit 66d4b5ea4031193e3c79ebdabeb381aae46fe93b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Sep 22 03:23:34 2016 +0300
+
+    Update pdclib to version using arm-specific 'ar' program
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2c1ab416728c942ddf176f881f025840ada6bf93
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 5 22:25:07 2016 -0600
+
+    Fix release note html to remove xml bits
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4fdf8ca9ca1cd5a84b03bd7a03c5806af64b413d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 5 20:55:17 2016 -0600
+
+    Remove pyro wizard file from master
+    
+    This isn't done yet.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 89b8b2ee98e8d329559f54058c574ba9122ced8e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 5 20:46:05 2016 -0600
+
+    Bump version to 1.6.8
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a37b687670dd1ccb0274e5fe6bf6145c4fc5acc8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 5 20:45:12 2016 -0600
+
+    altosui: Don't ship TeleMetrum v3.0 firmware (yet)
+    
+    We haven't finished this yet, so don't deliver firmware for it.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 45084fd04326b979f349870f09ff9af1b3155cbe
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 3 21:02:35 2016 -0500
+
+    Add 1.6.8 release notes
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9279b0cd52333a846b57af890f708ebb364b62b7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 3 01:21:34 2016 -0500
+
+    altos/stm: Set SPI slave DMA priority to HIGH/VERY_HIGH
+    
+    Set spi slave DMA priority MOSI to HIGH and MISO to VERY_HIGH. Slave
+    SPI doesn't have the luxury of slowing down when the system is busy,
+    so provide it maximum memory bandwidth to try and keep up with the
+    master.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d80995c4535a3655ca1b9ca674d6839cfef84c4e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 3 01:20:20 2016 -0500
+
+    altos/stm: Set i2c recv DMA to HIGH
+    
+    Make sure receive DMA is higher than any TX dma so that
+    it always runs in preference.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit af2eefbed43e56885a7321319d69b7be17354cdd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 3 00:55:19 2016 -0500
+
+    altos/stm: Set MISO DMA priority to HIGH to avoid OVR
+    
+    When the MISO DMA priority is too low, and the processor gets busy,
+    it's possible for SPI input to overrun the processor, which causes the
+    MISO DMA to get out of sync and never finish. Set the MISO DMA
+    priority to HIGH to avoid this.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4fc5cfa2c63c43ab0a9ef7e0cc6832fb1c163bd6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 3 00:53:44 2016 -0500
+
+    altos/stm: Create funcs to set SPI DMA parameters
+    
+    Instead of having nearly duplicate versions of the SPI DMA
+    configuration calls, create helper funcs that do most of the work so
+    that the SPI API funcs are shorter and clearer.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1710a4921d4f408300c7d5adf0e83d08cc86be20
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 3 00:52:12 2016 -0500
+
+    altos/stm: Make ao_spi_duplex out pointer const
+    
+    Provides a bit better typechecking opportunities for this function.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5d913dde1fa58cbcb5edbc88405180e37ba0dbcd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 2 23:40:03 2016 -0500
+
+    Bump version to 1.6.7.1
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 30e8f003381c30434058905f53f5a219ac5feb4f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 2 23:36:36 2016 -0500
+
+    ao-tools/ao-cal-freq: Re-open usb device each try
+    
+    Instead of trying to re-use the same file descriptor, close and
+    re-open the device each time around the loop to avoid getting stuck
+    when calibrating TeleMega boards.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3ea30c1909b3ae23918ea6d0a53d2c4065b08763
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 2 23:34:47 2016 -0500
+
+    ao-tools/ao-usbload: Fix -f flag, remove debug hacks
+    
+    The code to validate the usb id and product name had some debug hacks
+    left enabled, which caused it to fail. The short -f version of the
+    force flag was also not getting parsed correctly.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit dfaabc1ca3aaad0d249283308b06d3e0567f0c59
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 2 23:33:27 2016 -0500
+
+    ao-bringup/turnon_telemetrum: serial on cmd line. Loop on accel fail
+    
+    These make the script easier to use
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8bbef0c7039f4a0c6ac368fd994c2e52d84d293c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 2 16:13:25 2016 -0500
+
+    altosui: Deal with connect failure in AltosConfigTD
+    
+    When the USB connection times out, abort any pending operations and
+    clean up the thread correctly. Also, deal with the serial line being
+    closed by checking for null.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b2d013aef5b76ff527e8174dff7f6ffe0dfaefae
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Aug 31 21:27:10 2016 -0600
+
+    ao-tools/ao-cal-freq: --verbose option has no parameter
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 08923aa0cf31ae7bd73b66b4d1cd81fae4241ff0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Aug 31 21:25:59 2016 -0600
+
+    ao-bringup: telemega allow serial on command line, loop on accel fail
+    
+    Allow the serial number on the turnon_telemega command line, instead
+    of reading it.
+    
+    When accel cal fails, loop waiting for it to succeed instead of
+    continuing blindly.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ab75ab10564c4d5d05719c382a3b71585cd70710
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Aug 29 09:27:53 2016 -0700
+
+    altos/cc1120: remove unused status from ao_radio_fifo_write_stop
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 462039c769f2db9328b04759807c30691f2b96c2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Aug 14 15:57:39 2016 -0700
+
+    ao-usbload: Check target device name to avoid mis-flashing
+    
+    Instead of blindly loading firmware, go get the old device's name and
+    make sure it matches the new firmware.
+    
+    Add --force option to allow this to be overridden.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c62816a00b9aa40879a2ea98da2d10667e09b704
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Aug 14 15:55:13 2016 -0700
+
+    ao-chaosread: Parse -i and -b options
+    
+    Need to pass the single-byte verisons to getopt_long
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit af1d41e32fc04d5897fd2dc736391d263af48727
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Aug 8 22:40:41 2016 -0700
+
+    Bump verison to 1.6.7
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 46b1234140c04dbfac22be0fdf80be96506b6948
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Aug 8 22:39:16 2016 -0700
+
+    altos/stmf0: Switch ADC fast to ADC clock
+    
+    Using this slower clock eliminates sampling problems with the ADC and
+    cleans up the chaoskey raw data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 48088d1d6a66c5d5271b52191367f07b09626b29
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Aug 4 09:54:16 2016 -0700
+
+    altos: Flash all LEDS during power on
+    
+    This tests the LEDS to make sure they all work on the following devices:
+    
+    easymega-v1.0
+    telebt-v3.0
+    teledongle-v3.0
+    telemega-v1.0
+    telemega-v2.0
+    telemetrum-v2.0
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 71e3a59e42c284fde8ac2767abd029230ed86e07
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Aug 4 09:52:05 2016 -0700
+
+    ao-bringup: Add colors to chaoskey test result reporting
+    
+    This makes them show up nice and bright in the terminal window.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bc920c80ef447a5bcdf8165b69fb28b8f63609df
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Aug 2 16:35:36 2016 -0700
+
+    Bump to version 1.6.6
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 165868999f45f4572ff2585fcb3986974a5bbd5c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Aug 2 16:52:39 2016 -0700
+
+    ao-bringup: Use released files for chaoskey turnon
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c4926a69d6e72a035197b3d617c62893a7ea1861
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Aug 2 16:30:15 2016 -0700
+
+    ao-bringup: Test chaoskey using dieharder
+    
+    This uses a subset of the dieharder tests which run in reasonable time
+    and don't appear to emit false negatives on a regular basis.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d52cb9dac725206ba7b2d26818c84f134d5bf183
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Aug 2 16:53:17 2016 -0700
+
+    ao-chaosread: Eliminate double-free when serial match fails
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3bdc9028502c766d1c8ddb4f0dedba4bbc22384e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Aug 2 16:28:17 2016 -0700
+
+    ao-chaosread: Add --infinite and --bytes options
+    
+    The --infinite option keeps writing data.
+    The --bytes options pulls out bits 1-8 which should provide 8 true
+    bits of entropy.
+    
+    This combination allows ao-chaosread to be fed directly into dieharder
+    to validate the hardware.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 826ad792389150ea8d80e341cb8ea023db83c9a2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Aug 2 16:26:49 2016 -0700
+
+    altos: Use standard FIPS testing for chaoskey
+    
+    Check to make sure we aren't repeating a block coming from the
+    unwhitened source, which is the standard online FIPS test for RNGs.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1934468e96ea9d179abf6e3e728b6b14ce793f46
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Aug 2 16:53:50 2016 -0700
+
+    altos/stmf0: Clean .bin files from flash-loader dirs
+    
+    The .bin files are what the DFU utility uses to flash the boot loader
+    using USB.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 782013d0ff2c9f076952c0e172bfcb7016699d5f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Aug 2 16:32:43 2016 -0700
+
+    altos/stmf0: Hook up clock output support
+    
+    This was used to try and not have two xtals on telemini, but failed
+    because the provided clock has too much noise.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 99753673a4a97423300427e276bf550ae5353842
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Aug 2 16:31:41 2016 -0700
+
+    altos: Make telelcotwo control two boxes instead of two pads
+    
+    telefiretwo is now a single pad box, so telelcotwo needs to switch
+    between boxes instead of pads on the same box. Do this by re-purposing
+    the pad arming switches into a box selector and arming switch.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit be84201495fa3cabd699012e57e797355e2bd792
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jul 27 21:28:34 2016 -0700
+
+    altos: Add 'ao_button_get' to button driver
+    
+    This returns the current state of the button; useful to check what the
+    value is at startup.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a6701283af7ed2b3016a910d6edbe4a5e8304581
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Aug 2 16:33:52 2016 -0700
+
+    altoslib: Add a 'seconds' method to AltosGPS
+    
+    This computes the time in seconds since the epoch from GPS time
+    information.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 647690dbe084d188ba3973da631871a65f2dc50d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jul 27 13:29:20 2016 -0700
+
+    altos: Stop building cc1111-based telemini v2.0 firmware
+    
+    This product never worked, so stop insisting that it actually build.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fe13426daff08f2beface2c1906f9a6184f6b987
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jul 27 13:26:22 2016 -0700
+
+    altos: Don't switch to flight 0 when log fills in flight
+    
+    If the log is full at startup, we want to transmit flight 0 to let the
+    ground station know. However, we don't want to switch to flight 0 in
+    flight, so save the initial telemetry flight number (0 or the real
+    flight number) at startup and use that throughout the flight.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 71ddb973ff75680e78fbbef7978ab3893c367629
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jul 27 13:24:57 2016 -0700
+
+    altos: Expose cc1200 radio test functions for telemini bringup
+    
+    This exposes the cc1200 radio test function so we can load special
+    test firmware in telemini to do the radio cal as it has no USB to
+    perform that interactively.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 59874a062543c61d164089e8b31f55a9b860c0b1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jul 27 13:23:06 2016 -0700
+
+    fixup for interleave
+
+commit 2507b9f29d25f77de249103805087a704069c625
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jul 27 13:17:51 2016 -0700
+
+    altos: Don't access cc1120 SPI bus during recv after abort has started
+    
+    When the receive timeout happens, the radio may still interrupt while
+    the SPI bus is getting shut down. If this happens, the interrupt
+    handler shouldn't touch the SPI bus at all as it may well be turned
+    off, which would cause the receive function to wedge waiting for a spi
+    byte transfer to happen.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 17adfd7939ff697afa96f7207a3fe17b6af789bd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jul 27 12:24:27 2016 -0700
+
+    altos: Keep telemetry and command output from interleaving
+    
+    When monitoring telemetry, the frame needs to be sent together on one
+    line, not split with the output of a command (like 'a') mixed in.
+    
+    Use a mutex for products with monitoring to keep command output and
+    telemetry output each on separate lines.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1667cb8e8b702b05fc3ec39ee49029885df64a4a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 2 20:00:01 2016 +0200
+
+    altos: Add STM32F0 beep and SPI byte API.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f39bee8875a0595b3d7ec7f5575d1e5eeb7544ec
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jul 12 21:06:23 2016 -0700
+
+    altosuilib: Show indicator when they switch from invalid back to valid
+    
+    The 'hide' value wasn't getting reset to 'false' each time the state
+    of the indicators was checked, so indicators would get hidden and then
+    never shown again.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit efd91febfa9bebd2f03508b2240916551450f831
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jul 12 21:06:05 2016 -0700
+
+    Bump version to 1.6.5.1 after 1.6.5 release
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 639d8b3c4353ee25a0536e01653f3a86feb90ad5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jul 12 15:53:47 2016 -0700
+
+    altos: Add telemetrum v3.0
+    
+    Like Telemetrum v2.0, but with cc1200 instead of cc1120
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1085ec5d57e0ed5d132f2bbdac1a0b6a32c0ab4a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jul 5 18:03:49 2016 +0200
+
+    Switch from GPLv2 to GPLv2+
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cd97128e30c47edfcc71f7d872cbdad14867934c
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Jul 5 10:21:29 2016 +0200
+
+    remove debian/ from master branch, it should live only on the debian branch
+
+commit a439ee4ac0398f70209292d015c5b82cd58d1d9f
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Jul 5 00:48:07 2016 +0200
+
+    updates made during 1.6.5 release process
+
+commit 65ed2f588ca596fe9aa559bebd590a2a11b9859b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jul 3 12:00:10 2016 +0200
+
+    doc: Build 1.6.5 release notes
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d60133c65b4592f0f8c832135664a8e0c922b4f0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 2 22:52:38 2016 +0200
+
+    Credit Chuck Haskin for helping fix the SPI bug.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 14e73d89d7dbb44e9ffab2820aefb693b6e8ef24
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 2 22:08:58 2016 +0200
+
+    Bump to 1.6.5. Add preliminary release notes
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8a6a95bb24517af00717fd377bad82ddb2289cf0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 30 20:43:03 2016 -0700
+
+    altos/cc1111: Remove 'show tasks' command
+    
+    This saves space on cc1111 parts.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d2e286f66d2b15df128ffe9b40a201242fc4a10a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 29 14:22:32 2016 -0700
+
+    Bump to testing version 1.6.4.2
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a04830a636a71808ea8ef5ac5dfa59d6978d9f3b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 29 18:41:24 2016 -0700
+
+    altos: Use FIFO_THR pin for cc1120 transmit buffering
+    
+    Instead of reading NUM_TXBYTES, set the FIFO_THR pin to indicate when
+    64 bytes are available in the buffer.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit caf3fc2628c13ff38ffbaabda8aa8d146cda748e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 29 18:33:56 2016 -0700
+
+    altos: Leave USB enabled in flight with -DDEBUG=1
+    
+    This leaves the command line available for diagnostics when debugging.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c6c250711355ae8060e956e786702be250ef4527
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 29 12:55:30 2016 -0700
+
+    altos/stm: clean up ao_exti_enable
+    
+    Was computing (1 << pin) twice for no good reason.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a35424cd48205af89ba023db979959dc75b06706
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 29 12:54:31 2016 -0700
+
+    altos: Make task list output more useful
+    
+    Add the timeout value and task id
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6c022e094f6f3c551355742a6f9c3deb6e554fe1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 29 16:07:22 2016 -0700
+
+    altos/telemini-v2.0: Remove show tasks command
+    
+    There's not enough memory for this command, and it isn't necessary.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 349a63aeed6cdeb89bf18c7b2e2c40782c79cc00
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 29 12:52:37 2016 -0700
+
+    altos: Make ao_delay(0) not wait forever
+    
+    ao_delay() is implemented on top of ao_sleep_for, and ao_sleep_for
+    uses the timeout value of 0 to indicate an infinite timeout. Calls to
+    ao_delay for 0 ticks would unintentionally hit this case and end up
+    waiting forever.x
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3b3a24f5f39a1b72cc8947c33b609f454b46aff8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 29 12:49:16 2016 -0700
+
+    altos: cc1200: use FIFO threshold pin output for APRS buffering
+    
+    Instead of polling the device for fifo space, just use the available
+    pin configuration to figure out if there is enough space for a single
+    APRS buffer. Then set the APRS buffer size to match the fifo threshold
+    setting in the chip so that we know we can write the whole APRS buffer
+    once the pin says there's space.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 658d8be170f9aea683fe62b68368736a177411a5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 28 17:03:34 2016 -0700
+
+    altos: Add debug check for irq block when editing task queues
+    
+    List manipulation operations are not atomic, so interrupts need to be
+    blocked while changing them.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 30eb5d2fa77e036690170e7057fa9df669375ae5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 28 18:40:46 2016 -0700
+
+    altos/drivers: Use more reliable byte interface for CC1120 reception
+    
+    This replaces direct register access with function calls to allow that
+    code to respect the hardware requirements.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 61ad8e5bf428246ac89cad7cb9a1edf2ef735fd5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 28 18:39:31 2016 -0700
+
+    altos/stm: Add better byte-level SPI api
+    
+    This provides inline functions for sending and receiving individual
+    bytes, and setup/finish functions to wrap them in. This make the byte
+    sending respect the SPI hardware interface requirements.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5866d191cee56949ccab4c154a14604e83163d42
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 28 18:37:49 2016 -0700
+
+    altos/stm: Clean up spi_enable/disable_index functions
+    
+    These had an extra level of switch nesting for no good reason.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5ab4a8b911e254dc829b61cb0abc9fd0b46b84b3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 27 23:25:01 2016 -0700
+
+    altos/stm: move spi execution to common ao_spi_run
+    
+    This regularizes SPI hardware use and ensures that the device is
+    turned off after it has been used and that the status register is back
+    to 'normal' the next time through.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 69791ef235161fef404f682fd6955e7eed8dc125
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 27 23:26:20 2016 -0700
+
+    altos: Add STM SPI debugging
+    
+    This dumps out the SPI hardware state and history of SPI operations
+    when compiled with -DDEBUG=1. Without that, this patch does nothing.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f418584d4d225827e08f56de86055eb3f074f8d1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 27 17:26:19 2016 -0700
+
+    altos: Add STM DMA debugging
+    
+    This provides a command that shows current DMA operations when
+    compiled with -DDEBUG=1. Without that, this patch has no effect.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2e60cd22f6789c94343e6432822cedab028dc1ba
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 28 18:25:44 2016 -0700
+
+    altos/stm: Change ao_spi_send_sync definition to take const source
+    
+    Provides for a bit better error checking.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 21a29c7452398e0cca0fb90f99fa42a2a0684668
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 28 17:15:27 2016 -0700
+
+    altos/stm: Add more SPI status register bits
+    
+    These weren't the original version of the docs that we had.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 785d2697376ebd20531d22441a60c41bd927b42a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 28 17:12:48 2016 -0700
+
+    altos/stm: use 0xff for dma mutex value for allocated mutexes
+    
+    DMA channels which are 'allocated' can't be shared. Instead of using
+    the value '1' in the related 'mutex', use 0xff which won't match any task.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0dec7d0885970a7d73468dd77220bae78e161b40
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 28 17:11:38 2016 -0700
+
+    altos/stm: remove ao_dma_abort
+    
+    This function isn't used anywhere.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 974aaf73cbb720f1b1183cc239001528b6c7a5b9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 28 17:09:00 2016 -0700
+
+    altos: Move comment in ao_sleep_for next to related code
+    
+    The comment got moved to the wrong place
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a7e0bb5eb661cfde31c383d605cb9cb8ca568bc7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 28 17:04:59 2016 -0700
+
+    altos: Block interrupts while waking tasks sleeping on timers.
+    
+    Interrupts may not be blocked in the timer ISR, but they need to be
+    while walking the pending timer list and moving tasks back to the run
+    queue.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 40abb0d1e2f43a60ffa34b055ebb913ee3e20faf
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 28 00:07:23 2016 -0700
+
+    altosui: Deliver firmware for Tmega 2.0 and TBT 3.0 for Windows too
+    
+    1.6.4 added Tmega 2.0 and TBT 3.0 firmware to linux and mac, but
+    neglected windows.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5b7e81628437389014fdd39e323a6f0176e02ba6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 27 23:28:28 2016 -0700
+
+    Mark testing version 1.6.4.1
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6d15cf1580563aea90e9c47f5b268c9c7bb9ba26
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 24 12:07:36 2016 -0700
+
+    altosdroid: Deal with multiple installed android SDKs
+    
+    Use the latest SDK's zipalign
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3374a9069618658a33af54472d8670e3086af1e0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 24 12:06:32 2016 -0700
+
+    ao-tools/ao-chaosread: Document length (-l) option
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ca59786b5022f592f6516a3ac54708789db14c94
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 20 10:19:32 2016 -0700
+
+    Bump android version to 13
+    
+    Need to update the maps API key in the package
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 10fa950cb9fee0ba28adfc5ead108657655bb289
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Wed Jun 22 15:01:09 2016 -0600
+
+    switch libgtk-3-bin build-dep to gtk-update-icon-cache, closes: #825455
+
+commit ed6eb010614b5b27757619fc629d7330fc8c4122
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 17 10:18:20 2016 -0700
+
+    doc: Add install-html script
+    
+    This script strips the XML-ish bits from html files so that ikiwiki
+    can parse them correctly
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit afe74c067a31ce420d0d4cdac2069c1d258a5114
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 17 08:58:06 2016 -0700
+
+    Bump version to 1.6.4
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0c5a1bea3ffa7c4b6b1503733e33911cbfcb3e80
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 17 08:54:19 2016 -0700
+
+    altoslib: Stop reflective JSON class walk at Object instead of null
+    
+    Android has classes above Object which are all tied together which
+    cause the object walking to fail in pretty spectacular ways. As Object
+    has no interesting fields, that serves as a fine barrier to the super
+    class walk and works on both android and real java.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 383dec4449f8160c06804fba06290e7a07335934
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 17 08:27:12 2016 -0700
+
+    altosui: Print filename before attempting to parse in --summary mode
+    
+    Any problems handling the file are easier to debug if the filename is
+    visible above the error message.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e8250fcb267a34fbbd8b88c6dcc8eec419bbcc68
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 17 08:26:31 2016 -0700
+
+    altoslib: Add back some JSON exception debugging printfs
+    
+    These make it possible to figure out where the JSON code went wrong.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a46df4f69984e3ef0064c2b211438c8d8ffaab68
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 17 08:17:57 2016 -0700
+
+    altoslib: Add construction for remaining primitive array types to JSON
+    
+    AltosCompanion has an array of ints, which was missed until I tried a
+    telemetry file with companion data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1ed6a3fb6356415c0d57ce2ce556435c6ff06e73
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 17 08:17:15 2016 -0700
+
+    altoslib: Add null constructor for AltosCompanion
+    
+    This lets it be used by the JSON code.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1dce20f7eee56166ac61798ca26eeb323dc8f012
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 17 00:52:38 2016 -0700
+
+    altoslib: Get rid of manual JSON encoding stuff
+    
+    Now that the reflective JSON stuff is working, we can delete all of
+    the manual code.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7175774c4f60ed3efd54417f2035b50ea0108c7b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 17 00:02:05 2016 -0700
+
+    altoslib: Improve AltosState save/restore debugging
+    
+    When save/restore generate different values, write out the two
+    versions to one.json and two.json for easy comparison.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8df6afe843e184e98e5d965cee3af562dfa30a3b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 17 00:01:15 2016 -0700
+
+    altoslib: Use reflection JSON code for frequency preferences
+    
+    This replaces the non-reflective JSON code with reflective code, which
+    is much shorter.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 93de1d7ec841c55f5a1a63d34b422780a6fbe3c3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 17 00:00:09 2016 -0700
+
+    altoslib: Add JSON-based object saving/restoring code
+    
+    This uses Java reflection to construct JSON strings for
+    most Java objects.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2a1b7c6c509d4d19de21abf02b63aeacba269d13
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 16 23:59:06 2016 -0700
+
+    altoslib: Add null constructors to AltosQuaternion and AltosRotation
+    
+    These will be used in the reflection-based JSON code
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f7e2f7f430e612c682bf55478860054ce94b995f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 15 22:52:08 2016 -0700
+
+    altoslib: Remove AltosHashSet code
+    
+    Everything has switched to JSON now.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1b5ea911049a8afae6af475a4a2bf62a6e3aa57b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 15 22:40:27 2016 -0700
+
+    altoslib: Switch preserved state format to JSON
+    
+    This is much easier to debug than the icky strings with backslashes everywhere.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1de8b6c340cec0b5a327392686c5a4e00f201e98
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 15 22:39:31 2016 -0700
+
+    doc: Updates to 1.6.4 release notes.
+    
+    Note USB fixes for host reboot and other changes.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f28db1102685c87b9f4278268f7e91f5df18374a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 15 22:38:32 2016 -0700
+
+    altosui: Don't open command window when --graph is provided
+    
+    When the user explicitly asks to open a graph, don't bring up the
+    command button window too.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2a4d741872449b5332f28e018fa3acc53ed7d891
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 15 22:37:39 2016 -0700
+
+    altosuilib: Track open frames, exit when none remain
+    
+    This will let us not have the altosui window open by causing the
+    application to shut down when the last frame closes.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 04c6f4c54ac10f6464ffb8cab2186ac2b2eafb00
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 15 22:36:35 2016 -0700
+
+    altosui: Remove missing items from --summary output
+    
+    Check all values for MISSING before printing them.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7fd28830b6f7a20b35d85a92047ccb94c965fe29
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 15 22:33:55 2016 -0700
+
+    altosdroid: Auto save freq changes on 'ok'
+    
+    Add any pending changes in the edit entries to the frequency set when
+    the user selects 'ok'.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 96eb350d3dfc83f6dfb31bbab1427f9206acde79
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Jun 12 09:23:36 2016 -0600
+
+    extend "ok" temp range to 40C, since battery charger on bench can drive temp above
+    35C at times in Bdale and Robert's production testing
+
+commit eee7fa303fb0d80ac5d7b9c5a86af60333f61951
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 11 22:17:01 2016 -0700
+
+    altos/stmf0: Remove ao_usb_free
+    
+    This can't work without a lot more effort.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1704d27248f1845c545ec61cf1bad58bf41189af
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 11 22:16:12 2016 -0700
+
+    altos/stmf0: Rework the sram allocation to save a few text bytes
+    
+    Boot loaders were going over 4096 bytes of ROM. I suspect we'll need
+    more serious work soon.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 36a08dc89ece6e2a2f0f69e3b31da17d66ceb2e2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 10 14:40:26 2016 -0700
+
+    altos/cc1115l: Reduce trace buffer size
+    
+    A 32-element trace buffer is all the larger we can fit in teledongle.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7d21ff641a7bc35318f0f637589eabb5bb6c5152
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 10 14:39:25 2016 -0700
+
+    altos/stm: Handle USB reset in STM32L usb driver
+    
+    Just like lpc and stmf0, deal with the host resetting the bus while
+    rebooting by restoring all usb-related data to the initial values.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 54f8d53584d0a902676b441cd122c01cd54f2283
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 10 14:33:50 2016 -0700
+
+    altos/lpc: Handle USB reset by resetting internal state
+    
+    Just like stmf0, this clears internal state at USB reset time so the
+    driver can survive host OS reboots.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 36ba97fabbed2f2a4a89da5be221c630ea3ff66f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 9 22:06:30 2016 -0700
+
+    stmf0: Do not send more data than requested for GET_DESCRIPTOR
+    
+    When Linux boots, it asks for only the first 8 bytes of the device
+    descriptor; we must limit the amount of data sent back to that amount
+    or USB will get wedged.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2970de9f92243b11d3beef56f3b1df3ef3579b95
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 9 22:05:24 2016 -0700
+
+    stmf0: Clear all USB state when resetting chip. Wakeup all sleepers
+    
+    When USB is reset, but the board is not power cycled, all of the
+    internal USB state needs to be reset, and any tasks blocked on sending
+    or receiving packets need to be awoken so they can go wait for USB to
+    start running again.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 55c8e5aff2cc7b941503a04970f7d368261af52a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 9 22:03:45 2016 -0700
+
+    telegps-v1.0: Document how SN 1959 was fixed
+    
+    SN1959 was fixed by jumpering pin 8 to pin 10 so that the DONE_INT_PIN
+    could be switched from PIO 2 to PIO 4 as pin 8 appeared to have failed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4d57c8b87f29f23beb0d88f1cef179209b1c5992
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 5 09:17:12 2016 -0700
+
+    altosuilib: Only display map debugging when serial_debug is enabled
+    
+    This keeps the application quiet for most users.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f982248573c1b646ac53fde980a60ada5404f6aa
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 27 20:30:18 2016 -0700
+
+    altosuilib: Fill preload map on site or lat/lon change
+    
+    This loads the map view with the selected area when the site entry is
+    changed or the user hits return in the lat/lon fields. This lets you
+    see the target launch site without having to load the whole preload set.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f5944ba4eb3f419f8cad461872d048b5adf7b566
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 26 14:33:44 2016 -0700
+
+    doc: pad/idle indicator table was busted
+    
+    I stuck a pile of extra '|' characters in the table by mistake.
+    
+    Reported-by: Stan <stanleyosmith@gmail.com>
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0d966b74f756e88e5dffa92400b105f540429262
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 24 23:44:50 2016 -0700
+
+    altosuilib: Rename AltosUIMap*New.java to AltosUIMap*.java
+    
+    This code isn't really new anymore...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 59a9bdd73b580a9c934a574be7bf45c5033e14b5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 24 23:40:47 2016 -0700
+
+    altosuilib: Have map preload respond to units and font size changes
+    
+    Just add suitable listeners so that the display updates when
+    preferences change.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7b5521966119fcc290591bf1b397506ef44cedea
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 24 23:40:03 2016 -0700
+
+    altoslib: use miles for distances > 1000ft.
+    
+    This makes both the map line and the other distance displays use miles
+    for distances greater than 1000 feet.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1ea855f95772a8a394407e0070be1ed9cc0f6650
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 15 13:59:12 2016 -0700
+
+    telegps: Add monitor idle mode
+    
+    This monitors directly connected devices. No support for doing monitor
+    idle using packet mode, as TeleGPS doesn't support that.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit df276262900551a5eecd94903eefe9a264b161ec
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 15 13:58:41 2016 -0700
+
+    telegps: Use log_space when flight_log_max is missing
+    
+    TeleGPS has this, but not flight_log_max
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9287122edc0e2dec6b2542f4cc8cb9cf2900bb33
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 15 13:57:28 2016 -0700
+
+    altoslib: Add AltosIdleReader
+    
+    This provides an AltosFlightReader interface for monitor idle mode,
+    making that easier to provide in TeleGPS
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3c4278a29082a2af5911e22e59f8f52549f549e3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 15 13:56:21 2016 -0700
+
+    altoslib: Add log_space to AltosState
+    
+    TeleGPS doesn't have flight_log_max value, but does have log_space
+    which we can use for the same thing in monitor idle mode.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f484216e72f81decb2aaa7289d6f69678990b7af
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 15 13:55:12 2016 -0700
+
+    altoslib: Set version and log space from AltosIdleFetch
+    
+    Just more data for monitor idle mode
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 29123a60272777916e5aae08369d0f03c2f135b6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 15 13:53:38 2016 -0700
+
+    altoslib: Allow empty values in AltosHashSet representation
+    
+    Check for value termination before appending the first character.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b1a90adac9f6e2a609ce1ccd6749462bb5c9adbe
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 12 23:33:53 2016 -0700
+
+    altoslib: Store saved state in version-independent format
+    
+    Use AltosHashSet for AltosState so that AltosDroid doesn't lose
+    tracker information when the application is upgraded.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b13037fad0905c5933d1ff579122ba1357b02eea
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 12 19:13:05 2016 -0700
+
+    altoslib: Store common frequencies in library version-independent form
+    
+    Serializable Objects in java are very specific to the class being
+    serialized. As we bump the name of the library on a regular basis to
+    note API/ABI issues, this mean a saved a Serializable object in
+    the preferences database will fail to load across library version
+    upgrades.
+    
+    The saved tracker state and saved common frequencies were the only
+    objects saved in this form; this patch adds infrastructure for writing
+    objects in a version-independent form, and then adds support for
+    saving frequencies in that form.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2f4903f903223312d0a3a03dfd413059f24a07f5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 12 19:10:19 2016 -0700
+
+    altosui/telegps/micropeak: Handle both MULTI_LIB and non-MULTI_LIB builds
+    
+    On x86 systems with -m32 and -m64 compilers, both libaltos32.so and
+    libaltos64.so are built. Otherwise, we should use libaltos.so
+    
+    altosui only dealt with libaltos32.so and libaltos64.so, so it only
+    worked on MULTI_LIB systems. telegps and micropeak only used
+    libaltos.so, so they wouldn't work correctly on multi-lib systems.
+    
+    Fix all of them to work either way.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 64ed56fe3132faa8585c9cd7b0261ac85f70a7bd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 12 18:05:14 2016 -0700
+
+    Automatically run 'git submodule update' if necessary
+    
+    This makes sure pdclib exists by updating for the all and
+    all-recursive targets
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 97adfff4cfb67c17a96f3ff46606b4e439422b01
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 12 12:14:03 2016 -0700
+
+    Bump java library versions
+    
+    Prepare for 1.6.4 release
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3450efdf8bd736a33900493eeda348ec2dacf7e8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 12 12:13:45 2016 -0700
+
+    Bump android app version
+    
+    Prepare for 1.6.4 release
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ba84b9c908d5909ea5a148c249709b21640f1eac
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 11 23:31:53 2016 -0700
+
+    telegps: Adapt to distance units switching changes
+    
+    'show_units' is no longer available; use 'parse_units' instead
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2ec7e14f0104e3a227ff566fa2fc1f6286ddd9d0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 11 12:48:10 2016 -0700
+
+    altoslib: Get rid of AltosMap from AltosMapLoader
+    
+    Cleans up the loader API and eliminates a AltosMapTile for every chunk
+    of map data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ab905d2f7d8929080042cfd16cc418ea5792c3cb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 11 12:43:51 2016 -0700
+
+    altosdroid: make disconnect stick past pause/restart
+    
+    Clear the active_device preference on disconnect so we don't reconnect
+    anytime the service gets activated.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0a50669b1fde3e3c1cbc08c4836613b58ead219b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 11 10:47:31 2016 -0700
+
+    altoslib: Clean up map file and url handling
+    
+    move it all to AltosMapStore.java
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 471091d0fddf09ed69df75e4f2fdd92e5f57b9c5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 10 23:13:14 2016 -0700
+
+    doc: Start update for 1.6.4
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b2710128a715a109745ec40553a3d4149a7f49ab
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 10 23:04:23 2016 -0700
+
+    altosuilib: Don't flicker missing voltages when changing units
+    
+    For some reason, a value of MISSING -1 was getting used, which caused
+    displays to light up briefly with a weird value when switching between
+    metric and imperial units.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 895cb58a6cd7424ee63c24d791b5988f41f85d31
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 10 23:03:45 2016 -0700
+
+    altosdroid: Rate limit map loading pacifier
+    
+    Just like in altosui.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c5f49d0ac254047f13c6c1ecfb5520eff72109ac
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 10 23:02:09 2016 -0700
+
+    altoslib: Allow map preloading to be aborted
+    
+    Close the map preload dialog and it would be nice to stop loading map
+    bits.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2e551e7c5f82a7e35d39e8f73e8e526e5484cd5d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 10 22:50:23 2016 -0700
+
+    altosuilib: Rate limit map loading pacifier updates
+    
+    Just updating the pacifier was consuming a huge amount of CPU. Update
+    no more than once every 100ms.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 42021d9fdc6f7a74cc9b20ebf3cf60b4c5f4ea82
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 10 22:49:04 2016 -0700
+
+    altoslib: Remove some debug printf calls
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 60f4d69592c440ab7bb67a04f4c07fc7279d2c20
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 10 22:46:58 2016 -0700
+
+    altoslib: Switch distance from m/ft to km/miles for large values
+    
+    This adds lots of infrastructure to deal with making the unit used
+    depend on the value itself, and then uses it only for distances.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6a6da23335e6e5864387c7a22946f80f51056a4f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 10 12:29:14 2016 -0700
+
+    Add TeleMega to spec list. Add TeleGPS RF output.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d92ca1cd4dfbacebd7aa1bbcfc671daee35dc808
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 10 12:28:51 2016 -0700
+
+    Publish firmware with keithp-fat
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a371253bb5fc25e34d87507dc9b814530f4e28f6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 9 17:57:12 2016 -0700
+
+    altosdroid: Check for closed before writing/reading bluetooth
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c57d86f6c9b56e90c986f460f93663a3e16cdf7a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 9 17:56:28 2016 -0700
+
+    altosui/telegps: Ship firmware for new hardware
+    
+    TBT v3.0 and Tmega v2.0
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f078235803a80403014b3e54039fd2d0e0704367
+Merge: 04759ddd c457c827
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Mon May 9 15:52:38 2016 -0600
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 04759dddeb29e4de9f7e6b3673dc06c633fa2369
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Mon May 9 15:52:21 2016 -0600
+
+    process updates made during 1.6.3 release cycle
+
+commit c457c827a7445098ba5effd410de754ff5c65843
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 9 11:48:42 2016 -0700
+
+    Bump version to 1.6.3.1
+    
+    Post 1.6.3 release
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b25785ee0afebaf516b8a1b8d08d36fbdadd74ca
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 9 11:33:48 2016 -0700
+
+    altos/cc1111: Use SW to drive UART RTS pin
+    
+    Can't get the hw to work.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1216c0ccece4ca1492967a341c5d01e9e5068ed8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 6 17:10:14 2016 -0700
+
+    Ignore some built files for 1.6.3
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ce4c8a8ad57515e851207b0a82f3af791bb30d3e
+Merge: aa9630c3 320e312d
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Fri May 6 17:49:30 2016 -0600
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit aa9630c30ee09bf358e77bf47ed0815a19237fca
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Fri May 6 17:49:09 2016 -0600
+
+    add beep to TeleMega turnon script
+
+commit 320e312db36fb6519a0bb1530d79595af18cdc86
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 6 16:46:57 2016 -0700
+
+    windows: Change install to look for browser in a different place
+    
+    The windows registry is a mystery.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e0081f7ba6fc9f1e4484d3e291fd30065ad5b620
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 5 02:25:52 2016 -0700
+
+    altoslib: Fix map preloading callbacks, run in separate thread
+    
+    The map storage and tile callbacks were muddled together. Create
+    clearly separate states for map data and have status updates be
+    delivered when registering for new status events so that registration
+    is sufficient to track the state without an explicit call to get the
+    current state.
+    
+    Run the map tile creation in a separate thread so that even checking
+    status of files on disk runs out of the UI thread.
+    
+    These fixes serve to make the pacifier update more smoothly, and also
+    not over/under count tile loading so that the loading actually
+    completes when all of the tiles are loaded.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 13179f614a99cad3016832ac1b365eaa4208c10f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 4 23:56:44 2016 -0700
+
+    micropeak: Change order of windows install so that java detect works
+    
+    I have no idea why this matters, but if you run the FTDI script before
+    trying to detect java, then the javaw.exe program isn't found and java
+    detection fails.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 85191fe911a5ea4af384bff9b2ed9986679cd9fd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 4 21:13:31 2016 -0700
+
+    doc: 1.6.3 release notes note TeleBT rts/cts and TM 2.0 monitor idle fixes
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 541996f95f9e26299618dbb79e723b82a52afd31
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 4 21:12:46 2016 -0700
+
+    doc: Update AltosDroid chapter for 1.6.3
+    
+    New menu structure, idle mode and frequency configuration
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b540f6f5b034f33b8e1d1c3b91e2403a56479caa
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 2 16:19:39 2016 -0700
+
+    altos: Make sure AO_MMA655X_INVERT is declared where needed
+    
+    Add #define AO_MMA655X_INVERT 0 to existing products which didn't
+    declare it at all. This will make sure the value is set correctly for
+    each new board.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0b0b359cbce6b818257b44b2a6aee0edcbaee40d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 2 16:13:53 2016 -0700
+
+    altoslib: Deal with TeleMetrum v2.0 MMA6555 being inverted
+    
+    Dumping the MMA655X data with the 'A' command provides the raw sensor
+    value. On TM v2.0 boards, the sensor is inverted, and all of the
+    firmware uses the inverted value except for the 'dump the raw data'
+    command. As a result, MonitorIdle was using the un-inverted value and
+    displaying mystic values.
+    
+    I've fixed this in the ground station code by checking the product
+    name and conditionally inverting the value (4095 - value) for
+    TeleMetrum v2.0 products. Unknown products will generate a warning
+    dialog on AltosUI so we'll catch places where we've failed to add a
+    new product name.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1a797f5fd5d25ba635fd79ad7604763253caabf2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 30 18:38:42 2016 -0700
+
+    publish AltosDroid in keithp-fat target
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 59466c1c2dbf95c427c2bb52304049eaac4d124f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 30 18:37:05 2016 -0700
+
+    altoslib: Flush during set_state. Don't store listener state.
+    
+    The listener state wasn't used anyways, so don't bother storing
+    it. Also, flush the state during set_state, which actually causes the
+    state to be written out.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4219fd7720caeec196bf6cb1b4cf78c8fadaf3cd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 30 18:33:25 2016 -0700
+
+    altoslib: Correct stats for flights without a real landing
+    
+    The landing time was miscomputed when the flight ended without
+    entering the landed state, as when the recording terminates at
+    apogee.
+    
+    This led to an uncomputed average boost accel, so that is now checked
+    separately from max accel (which is done over the whole flight, not
+    just boost).
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9734f1198429dc8939eebf48b6e6acc1cef96485
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 30 18:30:16 2016 -0700
+
+    altosdroid: max height is a height, not a speed
+    
+    Was using the wrong units in the flight tab
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7695da327ff8861a858b6695f4849fa1399548d8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 30 08:46:52 2016 -0700
+
+    Revert "altos/stm: Run scheduler code on interrupt stack"
+    
+    This reverts commit 6a9546413d6a236c010e806b50506d870961d074.
+    
+    This causes the device to stop reliably handling interrupts.
+
+commit 7db1cba64a2f6c80c5fe6e3073a0ff65be9c04c1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 29 21:49:43 2016 -0700
+
+    doc: Add idle mode info to 1.6.3 release note
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ec20e2f72460010c4f59e6d59775671260e01026
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 28 12:29:16 2016 -0700
+
+    altoslib: Make AltosPreferencesBackend abstract. Add set/put Serializable
+    
+    This lets us add functionality to this directly, such as the new
+    serializable APIs.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3c7b68b8a513b611500dfd734182e1a2e7bdd40c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Apr 27 01:40:47 2016 -0400
+
+    altosdroid: Add configurable frequency set
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 02f47fa98536eb0ecd58cd8f063600ced60e0a8a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Apr 27 01:39:01 2016 -0400
+
+    Fix key in AndroidManifest.xml.in
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d81f94fd5339d513de9bde5a2e19f8eca526344f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 26 21:01:44 2016 -0400
+
+    altosdroid: Split setup functions to separate dialog
+    
+    Remove them from the options menu, handle all preferences through
+    listeners.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 204ae5142702044eb8ad2697a55028e904067958
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 25 23:12:34 2016 -0400
+
+    altosdroid: Add idle mode monitoring, reboot. Start igniters
+    
+    This adds three idle mode operations -- monitor idle, reboot flight
+    computer and test igniters. The igniter test isn't quite wired up.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 565404599fe9edf9ba16aec348eeb19ea31af743
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 25 18:50:58 2016 -0400
+
+    altos: Clear packet queue when starting packet master
+    
+    This avoids overfilling the packet buffer when
+    disconnected. Applications using packet mode shouldn't expect that
+    output be saved across master sessions.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c816bea3536d025568dab313d7c8944a56ba0801
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 25 18:49:45 2016 -0400
+
+    altos/telebt-v3.0: Flip CTS/RTS pins for BT module
+    
+    These are wired backwards, so ask that the right pins be used, which
+    requires switching to software control of the pins.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 27319e4edbc503f193475b437fa5fe2937d47cbe
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 25 18:48:47 2016 -0400
+
+    altos/stm32l: Add support for software-driven HW flow control
+    
+    This allows applications to request that the flow control bits be
+    driven from software rather than hardware, permitting more flexible
+    pin configuration.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7c9a111ac1c88467ce28e03b4a9d3eabc9d7015b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 19 23:53:27 2016 -0800
+
+    altos: Use TXE instead of TC for serial on STM32l
+    
+    Using TXE allows for full-speed communication, rather than waiting for
+    each byte to be transmitted before inserting the next into the queue.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit eee2ca7fa7fd77be8ca5806cad7e250053465048
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 25 11:47:45 2016 -0400
+
+    Debug bits for telebt
+
+commit a995d73838c8e7ec5126e563baa2e59d5e071b28
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 22 19:15:51 2016 -0400
+
+    altoslib: Don't try to drag lines around until map is loaded
+    
+    When the transform is null, it's hard to draw lines.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a5373e2f9d2f1af211aa98029d448aeb518b45ce
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 22 19:15:05 2016 -0400
+
+    altoslib: Report exceptions caught while opening launch sites URL
+    
+    This just dumps them to stdout, which helps debug on Linux at least.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6bca0ed8183b85e5825eb0f4093dcd749592faf3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 22 19:00:46 2016 -0400
+
+    altoslib: Use feet per second for imperial speed
+    
+    This is more useful during descent than miles per hour...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f49fd5d2be68de97ebe65fa4f6484746e91dd677
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 22 18:53:32 2016 -0400
+
+    altosdroid: Run even without Bluetooth
+    
+    This lets us view old state information on USB-only devices, or when
+    the bluetooth device can't be enabled.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ea89feedd4185a5f583fa8ddf33a2ec0906e0dc0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 22 18:52:42 2016 -0400
+
+    altosdroid: Redraw offline map when my location changes
+    
+    Update the map view even if there isn't any current telemetry data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 39af826ce9032e339929eb7917b1d29c87d03f69
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 22 17:32:10 2016 -0400
+
+    altosdroid: Track device location in app, not telemetry service
+    
+    This means we get location even if there isn't a telemetry device
+    connected, making it possible to walk to old device locations
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b3f0c4d5c4ab8288db5fcabb0e848627031c4fd1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Apr 22 17:31:49 2016 -0400
+
+    Bump version to 1.6.3
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 57c1320962ad08d52e89d39bd5852f8d228dd872
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 21 22:37:35 2016 -0400
+
+    altosdroid: Can only use message once
+    
+    And here I thought re-using the message was clever. That generates a
+    nice exception and crashes the program.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4d4a39b569d7982405748b961b93dcd33e59b833
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 21 21:32:50 2016 -0400
+
+    Add preliminary 1.6.3 release notes
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 565d8f22c23c7c6c6817d11ef1ca02e70ba5d2ae
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Apr 20 20:27:47 2016 -0400
+
+    libaltos: Fix for Mac OS X El Capitan
+    
+    USB enumeration for serial devices changed
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f10fbff6758dfcfbeeeb224f8ab02fa107aae5f6
+Author: Justin Vreeland <vreeland.justin@gmail.com>
+Date:   Thu Apr 21 08:30:10 2016 -0400
+
+    Fix java class differing only by case
+    
+    OSX and Windows cannot handle files with names differing only by
+    case.  When these files are present in either there's a constant
+    unfixable change viewable in git status and git diff.
+    
+    Since this code can be run and compiled on both platforms
+    names different only by case should be avoided.
+    
+    Signed-off-by: Justin Vreeland <vreeland.justin@gmail.com>
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c989237366ada094cdc817f50b7f58bbcf5b377a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 21 21:11:29 2016 -0400
+
+    Prepare for new Android release by updating version number
+    
+    10->11
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 18b10ddf0e713431cb3e1065e62b0e6f597ce9d7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 21 21:12:06 2016 -0400
+
+    AltosDroid play store keys have moved, update configure.ac
+    
+    The actual build files were already updated, but the configure.ac bits
+    which detect that they are available were not.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 21d176f161b90f18f236ef887cef9676d712eee3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Apr 21 21:12:40 2016 -0400
+
+    Update java library version numbers
+    
+    Prepare for 1.6.3 release.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4db6074bb15c66bd23c513e1e41b408e5408cff8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 19 23:19:59 2016 -0400
+
+    altos: avoid mixed declarations and code in ao_task.c
+    
+    sdcc can't handle this.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 09acb6821ab490d69f679a195e70acb4a71ba342
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 19 23:18:46 2016 -0400
+
+    altoslib: switch from keySet() to keys() in altos map tiles
+    
+    Android appears to not have the keySet() API in the same way that
+    regular java does, so use the alternate older keys() api instead.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 49c3e3dffe748d0d155d4876efcaf7d39e1cc8e3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 19 23:17:50 2016 -0400
+
+    altoslib: Make AltosGPSSat implement Serializable
+    
+    This is required to save state values in AltosDroid.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 45bcf595d0a6a6001459f7f2055cd15e4839550b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 19 23:17:01 2016 -0400
+
+    altoslib: Add debugging to AltosPreferences.state() etc
+    
+    This let me find why AltosDroid was losing the last state information
+    for each target.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 90ba010aaa84a7d8b93c63543568a16ab0cb5984
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 19 23:15:26 2016 -0400
+
+    altosdroid: Don't set target location if lat/lon is MISSING
+    
+    Otherwise, we get a nice pointer to some random location on the planet.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fd0ca040a5cccae18145bd29b3e4c09f14df3865
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Apr 13 06:14:33 2016 -0700
+
+    altos/telefiretwo-v0.2: Change alarm names in comment
+    
+    The PCB is labeled 'A' and 'B'.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3abc0fc5e4484d862709501133d35563aa0c25fa
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Apr 13 06:11:44 2016 -0700
+
+    altos/stmf0: Fix external interrupts
+    
+    Missing a reserved address in the registers broke everything nicely,
+    but the priority values were also wrong - stm32f0 exposes 8 bits per
+    priority, like the stm32l, but it uses only the top two bits.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 14fecd672807982ce6232fa3b4bdce0aebe132e8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Apr 6 22:32:36 2016 -0700
+
+    Add TeleFireTwo v0.2 project
+    
+    This is much like TeleFireTwo v0.1, with only one pyro channel and
+    added siren and strobe
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 70e46100acf597014ce54cf3b642254ce1cba59b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 5 23:45:52 2016 -0700
+
+    altos/telelcotwo: Add idle timeout
+    
+    Puts TeleLCOTwo in a low power state (drawing about 80µA) after a
+    timeout (default two minutes) to keep from killing the battery if the
+    device is left turned on.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit aef5049cf8311927fada922730f85f31c8ddf177
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Dec 25 20:46:40 2015 -0800
+
+    altos: Use simpler debounce logic for buttons
+    
+    Instead of waiting for a while after the transition to decide if it
+    has stuck, signal the event right away and then ignore other
+    transitions for the debounce interval.
+    
+    This seems to work just as reliably, but has the benefit of
+    eliminating button latency at press time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4c2a7503373c0584de77f9b0e5632a58ab8bbd1f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Dec 25 11:26:34 2015 -0800
+
+    altos: Add ao_lco_two.c; alternate LCO interface code
+    
+    The LCO interface is likely to end up very device specific as the
+    interactions depends on the input devices. Here's a version for
+    TeleLCOTwo, which has two arming switches and a firing button.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 26023cfbf7e117114a4d62b7dbfc0f907efdfb47
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Dec 21 21:52:31 2015 -0800
+
+    altos: Fix telefiretwo .gitignore
+    
+    Was ignoring the wrong built files
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 11f8ab90d2267715010e652d709beec363f74ed5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Dec 21 21:50:43 2015 -0800
+
+    altos: Add TeleLCOTwo firmware
+    
+    The LCO side of a two-channel launch controller setup.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e6bad553009704af69b08b4a22fb5eb8ac6921f8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Dec 21 21:48:37 2015 -0800
+
+    altos: Support pad/lco boxes with fixed box numbers
+    
+    This allows for a configuration without adjustable box numbers on
+    either end of the link, simplifying the UI.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 93100ae8d4c8bd8fd6bdeff2cdc87b613c5d8058
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Dec 21 21:47:10 2015 -0800
+
+    altos: Allow for pad boxes with different sensor configurations
+    
+    This allows for a pad box without a resistor from power to each
+    FET. That resistor is needed to detect welded relays, but in a
+    solid-state system, that's not a possibility.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f2038dd2cfed5bbf049144172e3f7436b6cd3a55
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Dec 17 19:54:23 2015 -0800
+
+    altos: telefiretwo-v0.1 bits
+    
+    Get this board running.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 26ce7a9a213bdd35a13937054988e7b8fa749632
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Dec 17 19:30:35 2015 -0800
+
+    altos: Add pad support for new telefire versions
+    
+    Makes the voltage divider values configurable, and allows for pyro
+    channels that don't have the resistors necessary to check for a stuck
+    relay.
+    
+    Also supports STM32L processors with wider GPIO registers, and uses
+    the new ao_gpio_set/clr_bits functions to fire igniters rather than
+    cc1111-specific code.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 553c89f8c64398cb1a815b1fa248980cd3f62ef8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Dec 17 19:29:36 2015 -0800
+
+    altos: Support telefire products in cc1200 driver
+    
+    Need to disable the pad code while testing the radio.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b8a19e83b7b1b8e2a1fcbdd58e41f9f974ae28ff
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Apr 13 06:16:01 2016 -0700
+
+    altos/detherm: Add servo driver
+    
+    This just provides commands to test the servo with.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cfb91ec7ef6ef485d813af96a0f206bb7a2204dd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Apr 5 22:03:37 2016 -0700
+
+    altos/detherm: Add ms5607 to detherm
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8da29480a2fdf890d553b30eab58fc884210c1a5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Dec 23 23:15:16 2015 -0800
+
+    altos: Add easy mini plotting helper in test code
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e3f0c5eb8e5d57cbd8882587477d1381e2a83226
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Dec 17 19:27:42 2015 -0800
+
+    altos: Add ao_gpi_set/clr_bits functions
+    
+    These set or clear a group of bits in a single GPIO register all together.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 097c156b13ae975c742f294b46429e8ff14c365b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 2 22:41:06 2016 -0700
+
+    altos/stmf0: Add pwm and exti drivers
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0f227683e29062224a612c4a2ab5c8b2fc166059
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 2 22:40:23 2016 -0700
+
+    altos: Add detherm product
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit eeceee3520fae66b35a9a9b39c866c1c2e3b0c9a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 2 19:44:06 2016 -0700
+
+    doc: Note that EasyMega and TeleMega report A-D continuity
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f95c781bc16d332ea5442590521074396d6981ae
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 2 19:43:32 2016 -0700
+
+    altos/stmf0: Support HPE clock source
+    
+    Allows the use of crystals instead of requiring USB.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9f9d77b6d025d8285e362e53a8f728ec47adb234
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 2 19:42:44 2016 -0700
+
+    altos/stmf0: Add SPI driver.
+    
+    This also changes the DMA interface a bit so we can select for
+    interrupts on only the interesting channels.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f5e6caab78f4ca0e5c8a2d96ef53b8752d64f4b3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 2 19:41:21 2016 -0700
+
+    altos: Use mini logging for detherm, just without ADC
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6ead4c570a264afdc4e45eed6e87bf541668be6f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 2 19:40:19 2016 -0700
+
+    altos: Add Detherm log format (easymini without ADC)
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0ee235e1126f34987522fe852ba6ab3ac92d6cfd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Apr 2 19:39:07 2016 -0700
+
+    altos: Allow for flight hardware without any ADC values
+    
+    Detherm has no ADC connections, so we don't need to disable the ADC
+    when going to landed state.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7348cc4736c9a94f9ad299edd78199b544d0e95a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Mar 24 19:25:33 2016 -0600
+
+    altos: Add one-byte SPI output routine for LPC and STM cores
+    
+    This allows for SPI output at interrupt time, one byte at a time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b31c6fd153825ae5ad0fcea7189472af1a9cffff
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Mar 24 19:28:16 2016 -0600
+
+    altos/lpc: Add fast timer
+    
+    This offers a faster timer callback for higher-precision operation
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a86d98b708d84c6e0b85cb950e3f1ee16cfc56f5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 26 15:59:26 2016 -0700
+
+    altos/stm: Allow apps to define different stack size
+    
+    While 512 bytes is a reasonable size, sometimes apps don't have that
+    much stack space.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4fa71ecf168e275b24534a5a20e3dd4e178c7bbd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 26 15:54:24 2016 -0700
+
+    altos/stm: Validate current task SP in interrupt by looking at PSP
+    
+    We use a separate stack pointer for task code, which means we can
+    verify that it is in range in any interrupt handler. This adds checks
+    for the task stack (under #ifdef DEBUG) that run in ao_wakeup as well
+    as at every timer interrupt.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6a9546413d6a236c010e806b50506d870961d074
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 26 15:49:59 2016 -0700
+
+    altos/stm: Run scheduler code on interrupt stack
+    
+    This provides a bit more room for tasks on their stack
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 55db3b3e8addaa2dc0af50470d3bc8c25cb57df3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Mar 21 22:28:39 2016 -0600
+
+    altosui,telegps: Do not allow radio calibration to be edited
+    
+    This leads to sorrow for almost everyone. If you want to edit this,
+    use a terminal program.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c61014914c80ad0dba72224109d9b147bb343562
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 26 15:57:59 2016 -0700
+
+    altosuilib: Control map debugging output with Serial.debug
+    
+    This uses the same debug control as the serial output to monitor map downloading
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4f8a325949ed3cece4b646c808ad68677b16d1b6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 26 15:57:21 2016 -0700
+
+    altoslib: use env var LAUNCH_SITES to override default URL
+    
+    This makes it easier to debug new launch site data before uploading.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2fc47e7052a08de464f08d890e222afd7dec75d8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Mar 20 23:11:49 2016 -0700
+
+    libaltos: Fix warning in linux libaltos code
+    
+    Just returned the wrong name of the value
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4dddf0a9134690d94217ad12bc7372683276f8ba
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Mar 20 22:01:07 2016 -0700
+
+    altosuilib: Note that Windows now supports Bluetooth
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 054f2896b98a14051e0b818090f2de178bb77283
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Mar 20 21:54:08 2016 -0700
+
+    altosui: Delay between polling for igniter status in Fire Igniters
+    
+    This gives a remote like time to report the full status instead of
+    sending another request before the reply has been processed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1594691ea88ca84634eea237ac8137a5bdc19f5c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Mar 20 21:52:53 2016 -0700
+
+    libaltos: Add Windows BT support. Split into separate source files.
+    
+    Add Bluetooth support to Windows. Split libaltos into separate files.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit afba05c41f30c9273668d5ed71e0dc8c1ca53141
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Mar 18 11:17:46 2016 -0700
+
+    ao-bringup: Use dfu-util to install flash loader on chaoskey
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4635203e9be530f53b697ac0349838916e146983
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Mar 18 11:16:59 2016 -0700
+
+    altos/stmf0: Construct .bin files for flash loaders
+    
+    This builds a .bin file which can be used with dfu-util instead of
+    using openocd to load the initial flash loader.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f393482ec47e857db654fa071d4df95e98dab381
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Mar 18 11:15:57 2016 -0700
+
+    ao-tools: Add ao-makebin
+    
+    This constructs a raw binary or DFU format file for use with dfu-util,
+    which can be used with a bare STM processor to load code before the
+    boot loader is available.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1d7f88bf7521fa6d301da072f95f97fa42d9d247
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Mar 18 10:52:03 2016 -0700
+
+    ao-tools/lib: Add ao_hex_image_cat function
+    
+    This takes two images and constructs a third containing the union of
+    the contents along with 0xff bytes for any area between them.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4e738dff6dec4685b8712d3e96742971fa39c8f1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Mar 18 10:51:20 2016 -0700
+
+    ao-tools/lib: Remove trailing whitespace from ao-elf.c
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 45d61b79665197ff99f415cda7bd5907830233e9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Mar 18 10:50:32 2016 -0700
+
+    ao-tools/ao-dump-up: Remove spurious flight state strings
+    
+    MicroPeak doesn't have flight states like this...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 25cdbf15e7284eb963070b28dd886aa299af6487
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Mar 18 10:48:49 2016 -0700
+
+    Change how we detect and install java
+    
+    Detect by finding 'javaw.exe' in the current path and extracting the
+    version from the program itself.
+    
+    Install by simply opening the web browser to java.com and letting the
+    user install it themselves.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a7c7e10b3bbfbdf9667d071634cdd6fdf12a1f85
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Mar 18 10:17:24 2016 -0700
+
+    altos: Expose fast timer API from kernel/
+    
+    This allows multiple SoCs to provide the same driver interface
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d1af180c2d2a2caf1e13f00d83f2b86ba26de27f
+Author: Bart Massey <bart@cs.pdx.edu>
+Date:   Sat Mar 5 17:38:19 2016 -0800
+
+    altos: Fixed timing of panic display LED to be readable
+    
+    When we don't have a beeper, there's no way to signal a 'warble' for
+    panic. So, elide that bit.
+    
+    Second, panic can't use the scheduler and timer because those may not
+    be running (or may have failed), and so it uses a delay loop. Add a
+    configurable scale value to the panic loop so that the LED blinks can
+    be read. For stm32f0 devices, scale that by the sysclk value to
+    automatically make them of reasonable length.
+
+commit 20d9286402b7da74fef9b7c98e79d13671f6c82b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Mar 6 15:05:51 2016 -0800
+
+    libaltos: Add unistd.h to get defines for various syscalls
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ad07578d04926cb4b96c40a446c47ad3f9bad7df
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Mar 6 15:04:23 2016 -0800
+
+    libaltos: jni_md.h moved to linux subdir in Java install
+    
+    Add the linux subdir to CFLAGS to find it.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7cb388a33104fd78c8cb1fa08a6f114e3e1e372d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 5 14:37:40 2016 -0800
+
+    altos/stmf0: Fix build without second USB IN endpoint
+    
+    The code for the second IN endpoint was using the wrong ifdef.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 99d3248a390379cfabf821ea4a195072799861eb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Mar 2 14:36:31 2016 -0800
+
+    ao-tools: Add ao-chaosread
+    
+    This reads from the raw descriptor to help validate the hardware.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 88ee4ac0c91e12a02cc1954ffad0fd8603e24e55
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Mar 2 14:01:00 2016 -0800
+
+    ao-bringup: Switch to v1.0 for chaoskey
+    
+    Not going to build any more v0.1 boards. Also, chaoskey now uses the
+    unique ID for a serial, so we don't need to provide a serial number.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3a355d5c84e9d975897fa69a103952a1f1558947
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Mar 2 14:00:06 2016 -0800
+
+    altos: Add ChaosKey v1.0 product
+    
+    Much like ChaosKey v0.1, just different SoC package and a few wiring changes.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 05fcb717bfc44aba3c1cfd43281e323505a46402
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Mar 2 13:54:58 2016 -0800
+
+    altos/chaoskey: Add another USB endpoint to read raw data
+    
+    This replaces having the single output switch based on a pin value and
+    allows us to box the device and still fetch raw data.
+    
+    For now, this will use a special libusb2 program, ao-chaosread, to
+    pull bits as I haven't figure out how to make linux provide two
+    /dev entries for one USB device.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 05354b8fee6a9af05d66bb7f4761f597da038fdd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 15 15:26:00 2016 -0800
+
+    altos/chaoskey: Use SoC device ID as serial number
+    
+    To make manufacturing these devices tractable, we don't want to
+    require a custom firmware load for each device, but we still want a
+    unique serial number. Fortunately, the SoC provides a 96-bit ID which
+    we can use.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5637c1b2fd7232842245af1437e33b5bb1583c7d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 15 15:24:35 2016 -0800
+
+    altos/stmf0: Use device ID as usb serial number if requested
+    
+    This exposes the hardware device ID (which is unique per-chip) as the
+    USB serial number, avoiding the need to create a custom ROM image for
+    each device.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e4006444d3d7b0c499139f58f13353988d38dbb4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 15 15:23:15 2016 -0800
+
+    altos/chaoskey: Encode both hardware and software versions in product ID
+    
+    We have no other way of reporting the software version, so just encode
+    it in the product ID.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit afef70bb8f31075de364ddf713f3ccf1d9c6361d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 15 14:04:04 2016 -0800
+
+    altos/stmf0: Fix location of device_id register
+    
+    Copied from stm32l and never fixed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0bae4b25882983cd0b7950b3e80b6d93a72f0847
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 8 19:15:31 2016 -0800
+
+    altos: Another fix for non CDC-ACM devices
+    
+    Need to set the bInterfaceNumber for the actual interface to zero when
+    there isn't an INT interface before it.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e36117ccbf7cbe3704c6b44d3ad429e720a1e16c
+Author: Bart Massey <bart.massey@gmail.com>
+Date:   Mon Feb 8 18:55:28 2016 -0800
+
+    Clean up stmf0 adc init.
+    
+    This better matches the documented cal sequence.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5ce26345784459f5864ef59c96c8aa633d2ddf64
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 7 22:30:27 2016 -0800
+
+    altos/stmf0: Add missing ao_gpio.c
+    
+    This contains the code for power managing the GPIO pins
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bab082605e3fca6b6d11447c45cd948ddfe74bb9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 7 22:28:34 2016 -0800
+
+    altos: Add simple stats test to TRNG code
+    
+    This detects broken hardware by making sure the standard deviation in
+    the raw values used to compute each buffer is at least 128.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 147f0df6a29b37fbfb0824ecd276482f0eecb397
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 7 15:33:42 2016 -0800
+
+    altos: Delay TRNG ADC long enough for HV supply to stabilize
+    
+    Looks like it takes about 70ms for the supply to start running right,
+    so delay after powering it up for that long.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1473f9234ffd34d8f37bc489dfc9fc4d7f1b3eed
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 7 00:15:47 2016 +1100
+
+    altos/chaoskey-v0.1: Add power management and change USB classes
+    
+    Enable power management.
+    Expose only a single IN endpoint.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 235198b85f1583d2792c7028decace61d1b4229e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 7 00:14:22 2016 +1100
+
+    altos: Add power management to TRNG driver
+    
+    Support suspend/resume of the TRNG power supply, delaying after resume
+    to wait for it to stabilize.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2ad756bd1b63a2c8450edd7001628b92279fd1b8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 7 00:10:57 2016 +1100
+
+    altos: Allow USB drivers to skip CDC-ACM -specific descriptors
+    
+    For devices not providing the standard CDC-ACM interface, let them
+    skip the various descriptors and interfaces to provide a more limited
+    set of capabilities.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a5607aad694c01c01c48229172b289f005a1b6bb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 6 22:51:32 2016 +1100
+
+    altos/stmf0: Add suspend/resume support
+    
+    Allow USB suspend to suspend USB, GPIOs and master clock.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 36c6d74048283d27c890054814eee2cb39b7cbb7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 6 22:47:23 2016 +1100
+
+    altos: Add power management APIs
+    
+    This provides sequenced suspend/resume functionality, allowing modules
+    to register for power management at configuration time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fbb07cf50ba7fa278d1f8201ef376ec12480e9aa
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 19 23:55:52 2016 -0800
+
+    altos/stmf0: Allow projects to specify non-default stack size
+    
+    512 may not be suitable for everyone.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1d7463befc18f415d8982f04e52729d3bf5b95a9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 19 23:55:32 2016 -0800
+
+    altos: remove blank line in stmf0/ao_timer.c
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 35407e664886bed21dcef7764843aac03be8490c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jan 28 13:58:43 2016 -0800
+
+    altos/chaoskey: Delay ADC reading for 250ms at startup
+    
+    This lets the HV supply stabilize before we start sampling values.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f2d3202de9a5847923f72afe2969eb7ccd7342c7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jan 28 00:14:36 2016 -0800
+
+    altos/chaoskey: Add support for flipping between raw and cooked bits
+    
+    Plug the 'force bootloader' thing onto the board while it's running
+    and it will generate raw bits instead of running them through the CRC
+    to whiten. Useful for validating the raw hardware.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 02fd767ab60a9957faa2bff29c62ed954abc34e7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 19 18:30:57 2016 -0800
+
+    src/chaoskey-v0.1: Add HV enable support
+    
+    Turn on the HV supply when the OS starts.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e5be0be35f724507d7efff48339a297df73d2641
+Author: Robert Garbee <robert@gag.com>
+Date:   Sat Jan 16 10:19:47 2016 -0700
+
+    fix argument to ao-cal-freq so devices other than /dev/ttyACM0 work
+
+commit 6a7644a0d179e1eb7d665123157ad76c956e524a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 21:39:38 2016 -0800
+
+    Releasing: Copy TeleMega v2.0 bits to Binaries
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 64adfbbb80c90dfe244179d81beaef8a84ed8bd6
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Thu Jul 16 14:47:10 2015 -0600
+
+    process updates from 1.6.1 release
+
+commit aebdcaf37eafbc13cce695fe65a455e49c6108c3
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Jan 10 19:06:19 2016 -0700
+
+    one more time, with feeling .. this time, I've updated pdclib
+
+commit 73ce3f73526edfabccd3b98e6e67de6d82a84b63
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Jan 10 18:58:31 2016 -0700
+
+    submodule madness
+
+commit cbec66452ecd01bbd5aebf6f98443d5e0540f5d2
+Merge: 4043e070 81b8f4da
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Jan 10 18:29:07 2016 -0700
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 81b8f4da612b527915f68f632fbd94a46bc1795f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 17:22:35 2016 -0800
+
+    doc: Remove extraneous 'first off' from legal paragraph
+    
+    Not helpful (bdale)
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6a00f186a06f22638882f43f49fa0c03ea387eac
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 17:13:56 2016 -0800
+
+    doc: Remove telemini v2.0. Add telemega v2.0
+    
+    Reflect hardware we've actually shipped.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6cbf93995d90fc4790eb77bcaa233742857fe052
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 17:01:57 2016 -0800
+
+    doc: fix typo in using external active switch circuit section
+    
+    the -> then (bdale)
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3547e65eecbe7bd4e16dc6f2048b7a69f29d05ff
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 16:59:37 2016 -0800
+
+    doc: Update copyright year in altusmetrum doc
+    
+    And note that this need to be checked for each release in RELNOTES
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4043e0707cdc77158f709c19dd134f92b4604270
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Jan 10 17:45:45 2016 -0700
+
+    modify release procedure to reflect Keith setting version in confgure.ac
+
+commit 2f35e0ba52f538ea1061bfff5bbd772b8a241386
+Merge: 86ccbac1 3fdaf745
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Jan 10 17:44:03 2016 -0700
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 86ccbac16f5cd0be4a4c11260816b4799cda46f2
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Jan 10 17:43:34 2016 -0700
+
+    modify bringup scripts to handle TeleMega v2.0
+
+commit 3fdaf745f98f42f1ec4ae7cc682f47be8d8568eb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 14:37:05 2016 -0800
+
+    Bump version to 1.6.2, altosdroid to 10
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ebe009b9c7c2f4de3405479f800a33b449fcbb1e
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Jan 10 17:41:38 2016 -0700
+
+    now building for m4, too
+
+commit ff9c034dc942ec4bc5cc30cc593ea2165e143d55
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Jan 10 17:38:26 2016 -0700
+
+    new build dependency on asciidoc
+
+commit a66e57e0e92cdbd3c6a10b835c50f55647c07351
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 15:56:21 2016 -0800
+
+    altos: Switch PWM constants to end up exposing µsec
+    
+    This changes the constants so the clock runs at 1MHz, making the step
+    1µsec each. Then make the period 20000 steps, or 20ms for a 50Hz
+    frequency as before.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4e29bcd07819415ebe44e22536305e9c51d9ae4c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 15:44:08 2016 -0800
+
+    altos: Set TeleMega v2.0 PWM to support servos
+    
+    Typical servos use a 50Hz signal with less than 10% duty cycle. Set
+    the divider to 10 and the range to 64000 to provide a reasonable level
+    of detail down in the low range.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 54c20f1caf7f2e09284a9839cfa854d71f5634a2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 11:44:17 2016 -0800
+
+    Add release notes for 1.6.2
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7041c386cdf37716f8daf0bc1a9204db620e3de9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 12:30:34 2016 -0800
+
+    Update java library versions
+    
+    altoslib is API incompatible with 1.6.1 release due to altos.state updates.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b560b20cc7d4d5ac219613b29707f7cb8a018273
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 12:30:11 2016 -0800
+
+    altoslib: Remove debug message from AltosMap
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 88671454e931ea5e5946438df3c437493e2356c8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 12:21:24 2016 -0800
+
+    Elide flight computer info from APRS section of TeleGPS manual
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit efd6cd5682be3d0cead71ecfa00f37428b64785f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 10 12:15:50 2016 -0800
+
+    Elide pyro channel information from EasyMini docs
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4344bf3de532f54e0185421975c3c8dff1ac8bc2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jan 9 21:33:23 2016 -0800
+
+    altos: Insert inter telemetry-packet delay
+    
+    The receivers take some time to reset the radio between packets, so
+    make sure we don't send back-to-back telemetry too quickly by delaying
+    after sending each telemetry packet.
+
+commit fe8b7ab9dd1949c53af8f09f08679bdf0280c104
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jan 9 16:28:53 2016 -0800
+
+    Switch TeleMega v2.0 to CC1200 radio chip
+    
+    That's what we're using, after all
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0fd370af8bc8842000415c4d182d84b4bf6f90fa
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Dec 25 23:27:45 2015 -0800
+
+    altos: Set AO_PWM_TIMER_SCALE for telemega-v2.0
+    
+    This is needed to configure the PWM timer correctly
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 742f7c834bb5d651d2bebf2069d4e8facc33390d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Dec 25 23:20:29 2015 -0800
+
+    altos: Get stm32l pwm driver working
+    
+    Fix the CCMR1_OC1PE and CCMR2_OC3PE values.
+    Disable clock when no PWM outputs are running.
+    Fix the apb1enr value for the timer.
+    Set ARR value to PWM_MAX - 1 -- ARR is off by one.
+    Sets the GPIO pins to 40MHz bandwidth for sharper edges.
+    
+    Tested on EasyMega, but that code is not included as it breaks the
+    companion protocol.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8aa0ab9fe9ca41f6d520d388973164bc0c599a06
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Dec 24 00:28:59 2015 -0800
+
+    altos: Add TeleMega v2.0, including PWM driver
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a1b760d0a01e7087bcc214fcd395541fbf268fe8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Dec 23 10:18:24 2015 -0800
+
+    ao-tools/ao-dbg: Stop using sigvec
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f28d59ddf3e1b763ce5757f572e79085963818e9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Nov 14 00:01:05 2015 -0800
+
+    doc: Remove some bogus bits from am.css
+    
+    Just commented out stuff which had a nested comment and was thus invalid
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 19f700f1c99d2f3dcd8775cc629037312d853ee1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 13 23:36:02 2015 -0800
+
+    doc: Construct html index for documentation
+    
+    This gets uploaded to keith's machine as an easy way to see what's available.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 688c5ee98565a25e77c8618e1957ed3b8eff5a56
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 13 23:17:11 2015 -0800
+
+    doc: Try a different trick for asciidoc build issues
+    
+    asciidoc creates temp files in the current directory using basename of
+    the source filename. Doing html and pdf builds in parallel causes
+    chaos as a result. Fix this by having the pdf target build both
+    serially, and then have the html target just depend on the pdf target.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 992c0eab6275cec7d5035b99952537fd7ece2ed4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 13 22:55:35 2015 -0800
+
+    doc: Split out EasyMini into a separate manual
+    
+    EasyMini uses a tiny fraction of the overall system software;
+    splitting the manual out makes it a lot smaller.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b030dfb3df859b3b3cb9c666394f315edcd11f49
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 13 20:59:25 2015 -0800
+
+    doc: Reformat html versions a bit
+    
+    Color more text black, including toc. Add a bit of space around the
+    toc. Make paragraph labels bold.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6260ee1419ba5c122939b28e3e8fc6f8ecf48928
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 13 20:58:58 2015 -0800
+
+    doc: Move pad beeps table to usage chapter
+    
+    This places all of the sound information in one place.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2133c235af9511a42b65b239c6fcbeafa0e6d272
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 13 20:58:08 2015 -0800
+
+    doc: Provide more actual links instead of just chapter names
+    
+    Replace 'see chapter "foo"' with 'see <<foo>>' so that a link is
+    created to directly go to the relevant text.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 87cb41dfa07153b4dc44f723c65888945b3a11b1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 13 20:56:45 2015 -0800
+
+    doc: Reformat 'Using MicroPeak' section
+    
+    Use labeled paragraphs to make the steps stand out.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4c1206a47431c7d873228fdd7328e1b9ac93a390
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Nov 13 19:45:02 2015 -0800
+
+    Break out common pieces from TeleGPS and AltusMetrum
+    
+    This creates shared files for portions of the TeleGPS and AltusMetrum
+    manual to avoid duplicating text between the two.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ef2ba847ca53a8ddfcddd4e51a0dd43c45161c85
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 1 21:05:20 2015 -0800
+
+    doc: Add product logos to books
+    
+    This places the product logo on the title verso in pdf form, and above
+    the TOC in html form.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8642690da76a86736b97026e2a259d8cbad26262
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 1 06:20:27 2015 -0800
+
+    altosui: telemini outline pdf changed name
+    
+    It's now telemini-outline.pdf, just like the other outline files.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c877ecce7b67272eb6dcba50a58b59cd1cbfa5ab
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 1 05:43:59 2015 -0800
+
+    doc: verbose mode for a2x
+
+commit 13d03ee8ba3a300ef2a3a380b60f08dbe37793b0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 1 05:08:27 2015 -0800
+
+    doc: Make pdf titles less ridiculously large
+    
+    Instead of having them grow at 20% per nesting level, use 10% instead.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 553d9041b52cbb88662fcc5e6a277ce43bd151cd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 1 04:23:56 2015 -0800
+
+    doc: Get images and tables all centered and labeled
+    
+    A bunch of images were using image: instead of image:: and some images
+    and tables were missing titles.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit edcb80f25875200a73269045db71c1579b0c2c82
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 1 04:22:27 2015 -0800
+
+    doc: Split revhistory to separate file for html docs
+    
+    This avoids having the revhistory clutter the top of the document.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1c0f2cd7cbd8fa1360d6b18a1bf8ac0707634aa4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 1 04:20:18 2015 -0800
+
+    doc: Place html book contents on left side of page with separate scrollbar
+    
+    This lets the user see the toc while browsing the document
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f2816b305fc9e18a1190e392d43ff489936f10f0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 1 04:18:34 2015 -0800
+
+    doc: Switch to free fonts. Publish fonts with docs.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5b782c8f45ed6c34ed0e7f1aff6ac298c9a879ff
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 31 23:54:26 2015 -0700
+
+    doc: Minor makefile cleanups
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 22f399b13fbbc980315a1f6a9f5616586b680d77
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 31 23:36:03 2015 -0700
+
+    doc: Convert telemetry and companion docs to asciidoc
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 14ad137fd14707bc7b45a3512a4a6f81915ca1c1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 31 22:40:13 2015 -0700
+
+    doc: Convert AltOS doc to asciidoc
+    
+    It's still pretty stale, but at least it isn't in docbook?
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ce297f14ff54d230d01fb6dedaafca571e8b836b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 31 21:34:42 2015 -0700
+
+    doc: Finish converting docs to asciidoc format
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9aed128dc0aab5d49e1b3264c864a6c3e929bffe
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 31 14:54:20 2015 -0700
+
+    doc: Add titles to all figures
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7ef958cbb51a04079e2a4833917ccef57ae5a2ee
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Oct 29 20:32:58 2015 -0700
+
+    doc: Add updating firmware and using am products asciidoc bits
+    
+    This finishes the asciidoc transition
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 41aca78e3f7c17433e3c77cd3c596bbf8acab7cb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Oct 29 18:38:46 2015 -0700
+
+    doc: Add asciidoc version of Altos Droid manual
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5ddf9525f94f38c20327d1f2b43917e43519b949
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Oct 29 18:14:38 2015 -0700
+
+    doc: Add asciidoc version of altosui chapter.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit adfbccfeb551c9d0315116912e7255a173fc3103
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Oct 29 16:49:00 2015 +0900
+
+    doc: Lots more conversion from docbook to asciidoc
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c5fd0eaa786a122580ba9a3ef7bfc0f2cfd8263b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Oct 29 15:50:31 2015 +0900
+
+    doc: Add asciidoc telemini v1.0
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8cf466d7a767a20387a8d9d6ec81ee00af3fe4a7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Oct 29 12:12:15 2015 +0900
+
+    doc: Start doc transition to asciidoc
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c1ca80318102af122cb7b5380331e37795280761
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Oct 13 13:52:32 2015 -0700
+
+    doc: Force FOP to read images from doc directory
+    
+    Looks like something changed and fop is now reading from the directory
+    containing the source file. xmlto places that source in /tmp, making
+    all relative URIs fail. Fix this by creating a fop configuration file
+    directing it to load relative to the doc directory and then pass that
+    through xmlto.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0ae116dd8779fd0594d443a735e7b6834ea9b713
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 10 14:10:59 2015 -0700
+
+    telelco: Fix pad reset to one on radio signal loss
+    
+    The pad number was getting reset back to one when signal was lost,
+    causing pad one to get fired in this case even when already set to arm mode.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6659d08c41d89e4aa3d5e849c066a91bb09f2dd7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 21 07:03:30 2015 +0100
+
+    Create directory on keithp.com when uploading devel version
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 926522c6791c2a5529ea24ebd67eea45350e3526
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 21 07:01:19 2015 +0100
+
+    altoslib: Keep downloading when a parse error occurs
+    
+    Eventually, we'll hit a block with no valid data and give up. Until
+    then, keep going in case the flight computer glitched and wrote bad data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 431c713389dc819d2433d893c898ff82c7941722
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 21 06:32:52 2015 +0100
+
+    altoslib: Clean up remaining direct AltosState.state users
+    
+    This value has been hidden to avoid having it written accidentally;
+    there were a few more bits of code using it though.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c1dec3bec0789e8934a6e13fd117931ba468b318
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 21 06:27:26 2015 +0100
+
+    Bump release number to 1.6.1.1
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0f8272852b12cf7a349cd9fd07f17c55cdb335a1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 21 06:25:49 2015 +0100
+
+    altoslib: Make sure .eeprom download file is flushed on exception
+    
+    Flush and close the eeprom file even if an exception occurs to make
+    sure that contents of the file aren't lost.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a81d028dc62a0a624051fc3c9debb9687fda931e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 21 06:00:36 2015 +0100
+
+    altosuilib: In display thread, set new state synchronously
+    
+    When replaying telemetry, received_time gets set by both the
+    telemetry reader (when the file is initially read) and by the replay
+    reader (as the telemetry is processed). Because these two events are
+    separated by the time it takes to play the file, the second time is
+    the one we want for figuring out how long since the last telemetry
+    packet. However, if we set the global state when pulling the state out
+    of the telemetry reader, and then the replay reader pauses for a long
+    time, then the voice output thread sees the intermediate time value
+    and thinks that it has been a long time since the last packet was
+    received and reports that the rocket may have crashed.
+    
+    Fix this by just holding the read state until it has been passed by
+    the replay reader and had the received_time set to current time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f61c2b73f3b63aa9c3f0fbccede89c71580089ba
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Sep 13 22:27:10 2015 -0700
+
+    altosdroid: Add minus sign and decimal point to lat/lon input fields
+    
+    Some android devices always have change-sign and decimal-point keys
+    visible, but some do not. Make sure they're available for lat/lon input.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9dae5f76c5691dc94c02839eb1321426f96f2134
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Sep 13 22:24:47 2015 -0700
+
+    altos/telelco: Adjust drag race UI
+    
+    Enter/leave drag race is done by rotating the box selector knob
+    to a new 'dr' position and then holding down the firing button; this
+    avoids a potential accidental firing if you somehow don't realize
+    you've armed the box before selecting drag race mode.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 618f7ac8f31941fcbb3ed91829de69c0f0be8e0b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 12 20:41:37 2015 -0700
+
+    altoslib: Rotation off by factor of two
+    
+    The rotation computation was off by a factor of two when converting
+    the rates to a quaternion (the quaternion needs to be half of the
+    actual rotation amount). This ended up presenting a tilt angle of
+    twice what it should be.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0afa07d3c1dcb5e301fcb8b4edfecdd961662478
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 12 19:20:49 2015 -0700
+
+    altoslib: Hide 'state' member and use accessor function
+    
+    Someone was smashing the state to 'landed' when no packets had been
+    received for a while. Found that by making it impossible for anyone
+    outside of AltosState to change the value.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7064bc685aebeef07711e525dea4d5fbe33d235b
+Merge: ea1d2415 dda3f459
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Sep 29 00:46:42 2015 -0600
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit ea1d24151cf76ae8f2368673317b66958e2508c4
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Sep 29 00:45:27 2015 -0600
+
+    add automatic Bluetooth functionality check to turnon_telebt
+
+commit dda3f459eaff8d4e41cb44584c8ef77b8e2b3b1c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Aug 29 17:29:00 2015 -0700
+
+    altos/telelco: Add drag race UI
+    
+    With the unit disarmed, press and hold the fire button for five
+    seconds to enable drag race mode.
+    
+    The display will show 'dr' for five seconds and beep five times to
+    indicate that drag race mode is enabled. The decimal points in the
+    display will all be displayed as an additional visual aid. Once every
+    five seconds, it will beep.
+    
+    With drag race mode enabled, you can select a box/pad pair and press
+    the 'fire' button to add it to the drag race group. For the current
+    box, all members of the drag race group will have their continuity
+    LEDs blink slowly. There will be no indication of continuity in this
+    mode; you'll want to check that before enabling drag race mode. If you
+    want to de-select a member of the group, just press the fire button
+    again. Each time you push the fire button, it will beep out the pad
+    number added or removed.
+    
+    Arm the box and you will not be able to add or remove members from the
+    drag race group. Firing will simultaneously fire all members of the
+    drag race group.
+    
+    To disable drag race mode, press and hold the fire button for two
+    seconds. It will beep twice and turn off the decimal points in the display.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 55c1be449ef7ce389a3d94686051d272c858bee4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Aug 29 13:21:19 2015 -0700
+
+    altos/telelco: Infrastructure changes for drag racing
+    
+    This makes the lco management code support arming multiple pads and
+    firing all of them at once. The UI code does not expose this yet.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2839796ca5ace5f0c79643afc1a868893246b621
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Aug 29 13:20:16 2015 -0700
+
+    altos: Provide direct segment driving interface for LCD displays
+    
+    This exposes a simple bit-mask for setting the seven segments instead
+    of just allowing hex-decimal values.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 368f87918547f89e7eb2a92990621e75e07a3b25
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Aug 29 13:18:46 2015 -0700
+
+    altos/telefire: No reply for ARMED. Ignore time for FIRE.
+    
+    This will let us do drag races by letting the LCO arm multiple boxes
+    and fire them all with a single command.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f491eec1b950e4ad35a535db254a27a3dd2ad430
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Aug 20 23:02:04 2015 -0700
+
+    altos: Add HAS_COMPANION to new boards with companion connectors
+    
+    Thanks much to Rob Derstadt for discovering this bug!
+    
+    TeleMetrum v2.0, TeleMega, EasyMega, TeleBalloon v2.0 all have
+    companion connectors and yet HAS_COMPANION was not defined. This
+    disabled companion telemetry packets on these products, but otherwise
+    didn't have any effect.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b4064bf63bb95c58d74869f4ff3e440370d64692
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Aug 20 10:51:11 2015 -0700
+
+    ao-telem: Add companion packet telemetry data printing
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 73dd2e2c73c42f6ce949b4aa7992f63610962c37
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Aug 20 10:50:30 2015 -0700
+
+    altoslib: Add companion telemetry data support
+    
+    This got lost in the great telemetry rewrite
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit eaab49ab1859ebe236a201f93b5352e67aa7ed2b
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Aug 16 17:43:32 2015 +0200
+
+    apply wrap-and-sort to control files
+
+commit 909b048a4797b2477279750a77a82c6f5f2776d0
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Fri Aug 7 20:52:48 2015 -0600
+
+    turnon script for TeleBT v3.0
+
+commit 9e40f97b013256650364a2a7be96d7d2216ed778
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Fri Jul 31 10:47:08 2015 -0600
+
+    add a paragraph about TeleBT battery charging to AltosDroid chapter in documentation
+
+commit 773b23c48f67564eec83fc3ee085862c547ad160
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Jul 28 01:34:25 2015 -0600
+
+    move turnon_teledongle to new cal-freq code
+
+commit 87c8bb3956897830da1f7aaca2990a9571767b73
+Merge: 643c2fb0 d6445b37
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Thu Jul 16 07:54:35 2015 -0600
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit d6445b3739ac2c5dd040efdb97317a6b2a48044a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jul 15 18:31:05 2015 -0700
+
+    Bump Java library versions
+    
+    Avoid problems if you have an old version of the library installed
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 643c2fb03833d658320f476ef731bbb06fe3cc31
+Merge: e41786fb 271f56a4
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Wed Jul 15 16:43:50 2015 -0600
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 271f56a41c7e785b0fab7e572325df842d104277
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jul 15 11:41:03 2015 -0700
+
+    Bump configure.ac versions to 1.6.1
+    
+    And set android version to 9
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3cb5b31a534ab0c987667f37c976a5cd589d42a5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jul 15 11:40:24 2015 -0700
+
+    doc: Update for 1.6.1
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7338719414ec2c34235c368a55934be0765661c1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 22:33:07 2015 -0700
+
+    Bump version to 1.6.0.4 (android version 8)
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 52dc7dc5a791f3e7e307ae11f5c6a20b5bf71ba6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 22:31:47 2015 -0700
+
+    altosdroid: Cleanup Makefile.am
+    
+    Avoid re-creating library symlinks.
+    Make builds depend on resource files too.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c4af5cb233013b35d6763f5adf8d11b47f847111
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 22:17:16 2015 -0700
+
+    altosdroid: Clean up tab layout
+    
+    Fuss with weights and gravitys, then add some wrapping layouts to get
+    things looking reasonable on small and larger screens.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e41786fb384892961a6547e17812a24314ce9623
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Jul 11 22:59:34 2015 -0600
+
+    add debian branch spec to vcs-git: line in control so Debian tools work right
+
+commit 251263f72a1c189aac709d3d0410eb916a9f66d6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 20:37:16 2015 -0700
+
+    altosdroid: Add 'Auto' to map tracker list
+    
+    Add an 'auto' menu entry when selecting trackers from the map.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2997c9720f58b2955925e4e99c11a6ec302114a9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 20:36:18 2015 -0700
+
+    altosdroid: Note time at startup to avoid flipping trackers
+    
+    Need to set the initial 'switch' time in onStart to avoid flipping
+    between trackers before we've done any other 'switching' action.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2a85f273e33a316bd044c4c8dce17c19633cffe6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 20:21:34 2015 -0700
+
+    Generate Android version info from configure.ac
+    
+    This avoids having version data in two places.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ed682ca39496849b6c0d6bdf81bee6263864895f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 19:55:43 2015 -0700
+
+    altosdroid: Add other igniter status, various other layout changes
+    
+    Show the first four igniters (A-D) in the pad tab. Make pad and flight
+    layouts look a bit better
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 84021b8e0ab9262262345ce47671c3c0c6c43566
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 19:54:36 2015 -0700
+
+    altosdroid: Don't disconnect from bluetooth onStartCommand
+    
+    If we've already got a bluetooth connection running, don't slam it
+    shut when the UI starts up again.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bdc953e26ac2dd67021f905807324c6a02e49690
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 19:54:07 2015 -0700
+
+    altosdroid: Remove a debug line in AltosVoice
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 51bf46248ca7ee3c817e62274b7366258c9f87cf
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 19:53:06 2015 -0700
+
+    altosdroid: Pop up menu of nearby trackers on map click
+    
+    This lets the user select one of potentially many overlapping
+    trackers, and also makes it clear when the current tracker is being
+    changed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b64ab2a8a25b0c22443bc77829c7f35b4f1c2455
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 19:17:40 2015 -0700
+
+    altosdroid: Keep speaking even when screen is off
+    
+    Move the voice and telemetry disabling calls from onStop to onDestroy
+    so that a stopped application only leaves off updating the screen, and
+    not the voice bits as well.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d015cfc1499a263549f52d46e9e5b934fcb94f53
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 19:15:08 2015 -0700
+
+    altoslib: Preload maps based on distance rather than number of tiles
+    
+    This lets you get the specific area requested at all zoom levels,
+    rather than having further detail only at lower resolution zooms.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit afa37e4667ace42c1f43b01b613e639772cfeb75
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 19:13:37 2015 -0700
+
+    altoslib: Convert longitude from distance in AltosMapTransform
+    
+    This computes the longitude cooresponding to a specific distance at a
+    specific latitude.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1b6f3de0a547fa452d5c40775bcf59c49b229e5e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 19:11:48 2015 -0700
+
+    altoslib: Limit simultanous map tile downloads to 128
+    
+    Before this change, every tile requested would get downloaded at the
+    same time. With moving to distance-based offline map loading radius
+    values, the number of tiles at closer zooms was in the thousands,
+    overwhelming the network.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b313a5a3d5aba89330c0e20eeac00cc571828953
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 19:10:44 2015 -0700
+
+    altoslib: Make earth size constants public
+    
+    This lets other code share the values.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a9bc364ecc69d9085146a39198f0671de164eb2e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jul 11 19:09:28 2015 -0700
+
+    altoslib: Make AltosMap floor/ceil static. Check transform in paint
+    
+    This avoids crashing in paint when no transform has been set yet.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 002c523fae9369f0261c28f33152289d965d406b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 25 18:40:21 2015 -0700
+
+    telegps: Add receiver battery to Status display
+    
+    Makes it a bit cramped, but it's useful to have if you're using TeleBT.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3d508b66c2a15286bb9af88e4d92209463e0725d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 25 18:35:07 2015 -0700
+
+    altosui: Correctly show/hide receiver battery value
+    
+    Override the hide() test function which has the listener_state
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f76d5e4fc2ed1e0d79c096cc89793d671ecb78c3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 25 18:33:46 2015 -0700
+
+    altosuilib: Receiver battery voltage lives in listener_state
+    
+    The code to detect whether to show or hide this entry was using
+    functions that weren't given the listener_state and hence returned
+    MISSING all of the time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7c0f66bf64f410415afaff1b5c8e1443512b7a57
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 25 18:31:29 2015 -0700
+
+    altoslib: Support TeleBT v3.0 battery voltage conversion
+    
+    TeleBT v3.0 uses an STM32 instead of a cc1111, so it needs a different
+    voltage computation from the raw ADC value.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ee1b0bd05bedb8a5a631cc79c77fde8fd920ac38
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 25 18:42:29 2015 -0700
+
+    altos/telebt-v3.0: Report battery voltage correctly
+    
+    There was an extra %d, and an extra ':' in the output, making the UI
+    not parse the voltage correctly
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6ecd75a7abb5fcee440f7672082013088634680b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 25 12:23:04 2015 -0700
+
+    altoslib: Don't crash if dragging a map view without any tiles
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 06908e377b7b932bfe3f6dfc840a0a13340f32ce
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 25 12:22:04 2015 -0700
+
+    altosdroid: Class of offline map view widget changed
+    
+    Switch around AltosViewPager to match.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 71d924288d45b09ae655d06df9780ba286e3f3be
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 24 12:02:22 2015 -0700
+
+    altosdroid: Display direction in map view
+    
+    Use direction in map view when available, otherwise use bearing
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c7067f14359d25a8275f2b09e7b30c06c0424dbb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 23 22:40:11 2015 -0700
+
+    altoslib: Fix replay to run in realtime again
+    
+    At some point, this got sped up to 10x normal speedx
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3e7588e382c70e467b1f328fcfb6bc38a6b79ac7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 23 22:22:06 2015 -0700
+
+    Bump version to 1.6.0.3
+    
+    Mark the release of 1.6.0.3 altosdroid
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3ce5e24fefaddaa74eadba4722e904354c871387
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 23 22:21:45 2015 -0700
+
+    altosdroid: Update version numbers in manifest
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d9f96c45d0a3099e9e5fd3c75cc27f9415fcaf55
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 23 22:21:30 2015 -0700
+
+    altosdroid: Mark tab-dependent voice output as done
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit aed8d3ee2561bbec59b9684fb2042186191302ca
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 23 22:04:47 2015 -0700
+
+    altosdroid: Make sure flight voice output always starts with 'speed'
+    
+    This resets the flight-mode voice output state back to start again
+    each time the flight tab is selected
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b1b41e0823a60769e7d2d806f4d97ae043d7dae3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 23 22:00:33 2015 -0700
+
+    altosdroid: Make sure whole flight state is spoken even when no-one is moving
+    
+    This eliminates the case where much of the flight state wasn't
+    reported if the tracker or receiver weren't moving.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f275e73f42e0aaf1760da99fb93c394320aafb84
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 23 21:47:06 2015 -0700
+
+    altoslib: Typo slipped into AltosState.java
+    
+    Oops.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bfa6cd8934b993bd4a67cfc7a4eeecf9b11915ef
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 23 21:39:09 2015 -0700
+
+    altosdroid: Change voice output around
+    
+    This makes the voice output depend on the current displayed tab; where
+    the 'recovery' and 'map' tabs get the same value.
+    
+    Pad
+    
+            Reports igniter and GPS status changes
+    
+    Flight
+    
+            Report flight state changes and max height after apogee
+            Report current speed, height and bearing/elevation/range once
+            every 10 seconds while the rocket is in motion.
+    
+    Recovery
+    
+            Report distance and bearing when the location of either the
+            tracker or the receiver changes by more than 10m, but not more
+            than once every 10 seconds.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a761b34ed8fc64435f5a49623f4a5c55e2dda33a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 23 21:37:25 2015 -0700
+
+    altosdroid: Define strings for the tab names
+    
+    Use these everywhere instead of replicating the same name; might
+    reduce errors.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 56146cd379e1319b7adcf8e22cdda55f771e11be
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 23 21:35:43 2015 -0700
+
+    altosdroid: Show direction to target in recover tab
+    
+    This takes the bearing to target and current direction of motion (from
+    the Android API) and computes a turn amount and displays that so you
+    don't have to know which way is north when walking towards the rocket.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 60b8bea12edb954e6140a92c8412364c9581e3c2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 23 21:38:37 2015 -0700
+
+    altoslib: Use a longer filter for descent values
+    
+    This makes descent speeds almost useful, a huge improvement
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1513693602c2a4cab0783833d1844c066edabb71
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 22 23:21:05 2015 -0700
+
+    altosdroid: Fix line drawing to old tracker location
+    
+    Selecting an old tracker would often fail to switch the bearing line
+    as it was using the map data instead of just using the local data for
+    the relavant tracker.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 87d2ab135b493486162d33ff172eba1f44dc0ce5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 22 21:04:01 2015 -0700
+
+    altosdroid: Mark four-tab change done
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fb0bd0ec18088ef01549cdb96243d591f618e32b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 22 20:59:17 2015 -0700
+
+    altosdroid: Allow tracker selection from online map widget
+    
+    Need separate tracker selection code for online maps
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2b6768ed32d7be444c49caa40d30b520177bb22a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 22 20:43:23 2015 -0700
+
+    altosdroid: Switch to four tabs (pad/flight/recover/map)
+    
+    Ascent and descent were almost the same; no reason to have both.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0f56903774d9e8bb033dfc0af6945e8ddc1d3065
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 22 20:08:05 2015 -0700
+
+    altosdroid: Select tracker by clicking on map
+    
+    This lets you pick a  tracker from the map, rather than having to use
+    the menu.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a959c1926048d1b96a06aa291131afd7c8e771c7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 22 18:41:01 2015 -0700
+
+    altosdroid: Get rid of on-line only maps tab
+    
+    The offline tab did both, so delete the online one and replace it with
+    the offline one.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 18fe64cf2648568dd0bde5acd7b627f1ddb6917e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jun 22 18:26:34 2015 -0700
+
+    altosdroid: Display online/offline maps in same tab
+    
+    Make the map portion switchable between online and offline maps,
+    leaving the rest of the tab alone.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ee656c9d41238ab2c56859a03fe6b8ce8ff2df4e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 21 10:34:00 2015 -0700
+
+    altosdroid: Add map source preference
+    
+    Not hooked up yet.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9af72a2e629779833ff1787bbfc2ddc8b9d88bba
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 21 09:37:05 2015 -0700
+
+    altosdroid: Show receiver battery voltage in the 'pad' view
+    
+    Helpful to determine when the receiver battery is getting low
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4fbe9d5a1f56178a737ede6b31e8d01a02a7543f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 21 09:36:20 2015 -0700
+
+    altosdroid: Use AltosMap set_zoom_centre
+    
+    This keeps the center of the zoom gesture pinned to the screen.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 08e4e291d32bdb3ac3271a85190d277b1874d277
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 21 09:35:28 2015 -0700
+
+    altosuilib: Use AltosMap set_zoom_centre instead of in-line version
+    
+    Shares the same function with altosdroid this way.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e0c318cdd32b3c3fed5099c754aea3ebc6186a0f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jun 21 09:34:29 2015 -0700
+
+    altoslib: Add set_zoom_centre to AltosMap
+    
+    This zooms around a specific point, keeping it at the same place on
+    the screen.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b8bdb432aacc1a273ee484a29a24b3768c274db6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 20 11:58:08 2015 -0700
+
+    altosdroid: Multiple tracker support for google maps
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c72e18fa1713b6e1aa7906210e79dd6354d2390f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 20 11:57:29 2015 -0700
+
+    altosdroid: Stack map markers with newest rocket on top
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0f40284c554aaadc71a598de8f1c5fe64ea387e1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 20 11:58:45 2015 -0700
+
+    altosdroid: Support for sorting rockets by age
+    
+    Now we can just sort rockets so that the top-most shown is the newest
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit de785b409e404a5296a7ff2037f52f3029536f28
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 20 11:57:10 2015 -0700
+
+    altosdroid: Remove debug
+    
+    Just noise at this point.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b2ad3b1ef59fe6e51c8c544f215c33f3b48c3aeb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 20 11:55:44 2015 -0700
+
+    altosdroid: Switch trackers automatically when changing freq or baud
+    
+    This works by switching trackers when we receive telemetry newer than
+    the last time we changed the frequency configuration.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4a33336b8f468c5b0f2e14c0ee0242c9a24a8b90
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 20 11:54:20 2015 -0700
+
+    altosuilib: Allow for no transform in map mouse wheel function
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3882e358b6f2970cb1afebcf2a71da34a57002df
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 20 11:53:24 2015 -0700
+
+    altoslib: Clean up map tile removal
+    
+    Remove them while walking the hash table, rather than creating a list
+    to remove.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0cc03210d5d53d12604688f294b6ca39e3a025de
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 20 09:35:26 2015 -0700
+
+    altoslib/altosuilib: Fix equals methods, add hashCode
+    
+    Whenever we use a class as a HashMap key, that class needs to override
+    the equals(Object) and hashCode() methods. Otherwise, the hash table
+    won't work right.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5568c30f0a4fe346b8ed58934c23653064427d65
+Author: Keith Packard <keithp@aimi.keithp.com>
+Date:   Thu Jun 18 17:37:35 2015 -0700
+
+    ao-bringup: Make turnon_easymega run without 'make install'
+    
+    Use relative paths for all altos tools
+    
+    Signed-off-by: Keith Packard <keithp@aimi.keithp.com>
+
+commit 6cf27ddd5e84824610d6a0bcbb81ba4626b71409
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 18 17:12:41 2015 -0700
+
+    ao-bringup: Use local versions of tools instead of /usr/bin for turnon_easymega
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3e5521070564e9a184f3b781dad9d39cdd963510
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 18 16:56:19 2015 -0700
+
+    ao-bringup: Fail turnon_easymega if accel cal fails
+    
+    This prevents a failing board from being reported as good
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6683146168216aacdc0842934cec1fb48ea03518
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Jun 17 00:12:06 2015 -0700
+
+    telegps: use new AltosUIFrame constraint helper
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c71abc5c29025eb57fc78968a4ccf8c34cb3a6f2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 16 23:49:45 2015 -0700
+
+    micropeak: Update mac/windows FTDI drivers
+    
+    Use latest FTDI drivers.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1098f7502a603a9cf80ad950f53a2c2abdf7ec93
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 16 23:43:53 2015 -0700
+
+    altosuilib: Create grid-bag helper functions in AltosUIFrame
+    
+    This eases the burden of creating suitable GridBagConstraints values
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cdeefaba7d5ef69f28e5dfb152c5f185f8b85f2e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 16 23:42:59 2015 -0700
+
+    altosuilib: Show state.product if state.device_type isn't set
+    
+    MonitorIdle doesn't get the device type, only the product.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 469be0a57dc9932c26f9c38986d22f6e8b2fd6ed
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 16 23:42:22 2015 -0700
+
+    altoslib: Remove debug output from AltosMap
+    
+    It's just annoying now.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 76532162d63239b00a51dd0ff6b1356b07b62d2d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 16 23:41:51 2015 -0700
+
+    altoslib: Expose public function to set state.product
+    
+    Just adds a setter function for this value.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5cacce8099bfc4fa4019538ac88be00bd2023865
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 16 23:40:34 2015 -0700
+
+    altoslib: Let the application disable the link cancel dialog
+    
+    This lets the application control whether to pop up the cancel dialog
+    when the link isn't working.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 75682a5a18f28acf8f4a61a0d45dad461218186e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 16 23:38:07 2015 -0700
+
+    altoslib: Set product for idle monitor
+    
+    This lets the UI show the product name
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c46c2c5767c6e909fa58587e6c864a4fbaa9fa20
+Merge: 39f43616 6cb7d76c
+Author: Robert Garbee <robert@gag.com>
+Date:   Sat Jun 13 17:40:59 2015 -0600
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 39f4361675aa13899864f427a33d4aa48be56cd2
+Author: Robert Garbee <robert@gag.com>
+Date:   Sat Jun 13 17:40:16 2015 -0600
+
+    add beep when test completes
+
+commit 6cb7d76c3fbe32b442713e358654d07b2506897e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 6 20:37:53 2015 -0700
+
+    altosdroid: Resource changes needed for multi-tracker mode
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 78df1d5213c402780fa2ce7e062c64cf5a01c45f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 6 20:37:27 2015 -0700
+
+    altosdroid: Note recent changes
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c813c2c8f71017a686128e06b5178fc99ece251c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 6 20:36:18 2015 -0700
+
+    altosdroid: Add multi-tracker support
+    
+    This lets you view multiple trackers in the offline maps tab (online
+    maps not done yet), saves state of each tracker to preferences.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f79d569dfe333621d63a1d4001c85a88f736ad58
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 6 20:35:32 2015 -0700
+
+    altoslib: Add preferences for saving/restoring multiple flight states
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 64ca3d2e7d2b23aedfdf98ef8ebd760bd3291534
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jun 6 06:00:43 2015 -0700
+
+    ao-tools: Add missing ao-cal-freq man page
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 55753ac8b4b73ec58cb6ef874acc8d606193c5e7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 5 22:52:51 2015 -0700
+
+    ao-bringup: Do telegps freq cal before testing GPS
+    
+    This lets the GPS get some time to see sats while we're messing with
+    the radio frequency calibration.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 527700623cc369cc58e15c29dc1ee374fa4efeb7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 5 22:52:21 2015 -0700
+
+    ao-bringup: Use new ao-cal-freq program for cal-freq script
+    
+    Remove shell script bits that were unreliable.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b9797aa9b6ca38db79c22e4dcefc6efc8a148599
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jun 5 22:17:02 2015 -0700
+
+    ao-tools: Create ao-cal-freq
+    
+    Create C-based frequency calibration program to replace shell script
+    which isn't reliable.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7c75ec6e11a9287b2360bb62ef4ddb4f0e2083c7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jun 2 12:48:42 2015 -0700
+
+    altosdroid: Highlight age in red when older than 10 seconds
+    
+    This lets you quickly identify stale data
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a533ea525620f194fd89fedad043659bb433d71b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 31 23:09:18 2015 -0700
+
+    altosdroid: Switch from custom title to standard Holo theme
+    
+    This gives us the menu button, which is awfully useful on devices
+    without a hardware version...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0beb02f1848e34892cca6e34ba83d6ca836d6df2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 29 09:49:30 2015 -0700
+
+    altoslib: Require 'debug' hook in AltosMapInterface
+    
+    This lets the map users redirect debug messages as appropriate
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4f1c4dddbce7b4e8673173f1690f79ba60e72ba2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 29 09:43:58 2015 -0700
+
+    altosdroid: use 'show' to set new tab contents in onResume
+    
+    Hook onResume so that newly created/recreated tabs get current
+    contents. The set_visible hook isn't sufficient for that.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 625c496987c2d320a51f3d27f8f00bde17b46a78
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri May 29 09:42:58 2015 -0700
+
+    altosdroid: Missing call to super.onDetach from TabMapOffline
+    
+    Causes an exception when you shut down the application.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 50e709a4088f3d6846fd66cbe9b8c437b3f9c88b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 28 22:13:39 2015 -0700
+
+    altosdroid: Split out AltosMapView into separate file
+    
+    This lets us use the regular layout configuration bits in the .xml
+    file instead of needing to patch the map object into the display. That
+    was causing problems when re-entering the map tab as the map view
+    would somehow end up with a zero width.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2e424f8dc2886aa475e6ddb21457eba08f768b16
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 28 22:12:26 2015 -0700
+
+    altosdroid: Add 'Current Location' as an option when preloading maps
+    
+    This lets you load maps around your current location, in case your
+    favorite launch site isn't in the list.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4315b91d7afc2391e3f7444906ac226500bf1345
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 28 22:08:51 2015 -0700
+
+    altosdroid: Save selected map type in AltosDroid object
+    
+    The map tabs may not have been created when the map type was selected,
+    so save the desired type in the main application object.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 41028472fd2e7e0209125e76b94e551f9d10f89c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 28 22:06:55 2015 -0700
+
+    altosdroid: Disable debug output on release builds
+    
+    We generate an awful lot of debug spew to the log; presumably that's
+    not helping performance, so lose that for release builds.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e2d54de24df37baa5ff3837334d97f726934ec25
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 28 22:05:36 2015 -0700
+
+    altosdroid: Look for zipalign in the new place too
+    
+    This build tool moved for some reason...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 85013045ca505096064aaf45c312b158d0263d2a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 28 01:05:18 2015 -0700
+
+    altosdroid: Add map types and map preloading UIs
+    
+    This adds an ugly dialog to select which maps to preload, and also
+    adds the ability to display other map types.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ba698c2cc48677735046d0881df9c180674e4082
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 28 01:01:23 2015 -0700
+
+    altoslib: Pass all map loader params to set_load_params
+    
+    Add zoom and map type to the param list so we don't call set_zoom and
+    set_maptype separately, which only causes lots of extra image loads to
+    get started unnecessarily.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c63617415553d97f9be2f19b94365b53d4480c68
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 28 01:00:47 2015 -0700
+
+    altosuilib: Eliminate extra MapCache in AltosUIMapPreloadNew
+    
+    Use the cache from the map.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ff01fb7275973cdbfd976d3b4e638c6235108121
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 28 01:00:22 2015 -0700
+
+    altosuilib: Get rid of AltosUIMapNew.set_load_params
+    
+    This isn't needed anywhere.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b49b74847ad55e14d1dbf2872ebbe313147e9fd3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 27 23:14:09 2015 -0700
+
+    altosuilib: Switch to altoslib map loading code
+    
+    Remove the map loading code from the UI bits and use the new altoslib
+    version instead.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3b4e6da65158a434905dc652e46c69d2c38cea7f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 27 23:12:34 2015 -0700
+
+    altoslib: Add map loading helper class
+    
+    This adds the AltosMapLoader class, which iterates over a sequence of
+    zoom levels and formats to get local copies of a desired launch site.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ccd557c846eed37328d6799f36e61308bcbb678a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 27 23:11:58 2015 -0700
+
+    altoslib: Provide toString method for AltosLatLon
+    
+    Makes printing them easier.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 756f501593365b80cfa6f7ca871da3291bbde67a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 27 22:43:53 2015 -0700
+
+    altoslib: Start with map empty
+    
+    Don't load images from 0,0 for no good reason; wait until someone sets
+    a desired lat/lon
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ccba2bb2f193ffd6c3a3d934a46bc06466b4b258
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 27 15:31:25 2015 -0700
+
+    altosuilib: Use altoslib site list loader
+    
+    Removes the custom version and uses the shared code
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 519d477cb752d9cdba78a4daa32b1f547bf889b4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed May 27 15:30:29 2015 -0700
+
+    altoslib: Add AltosLaunchSite bits
+    
+    This asynchronously fetches the list of available launch sites from
+    the standard location and notifies the caller when finished.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 103a50db50be55c2293468d273dd94472dd89d94
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 26 23:05:49 2015 -0700
+
+    altosdroid: Place icons on screen instead of drawing path
+    
+    This makes drawing a bunch faster, and locating stuff on the screen easier.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2509b664df6a13e6ae9e6753dc9fa0d696a4f6c7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 26 23:05:11 2015 -0700
+
+    altosdroid: Centralize debug printf code
+    
+    Create AltosDebug to hold the debug code, use it everywhere.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bca342577740a9d04b8419ecadcff582e77f1e61
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 26 23:02:43 2015 -0700
+
+    altosdroid: Move pause before reopening bluetooth into connec thread
+    
+    This avoids stalling the UI while waiting for TBT to boot.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7975d088a4ac44c0943134fa41d0e3b88f50b98f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 26 19:47:04 2015 -0700
+
+    altosdroid: Add offline map tab
+    
+    It's not very fancy yet, but it does zoom and pan, and show the path
+    of the rocket with a line.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f822b84d8c25159ff113fef6a419b6e18e87a87a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 26 01:04:00 2015 -0700
+
+    altosuilib: Get rid of AltosUIVersion.java
+    
+    It's been moved to altoslib/AltosVersion.java
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4895f443e4a748de2677e51869f20c05d265c944
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 26 00:56:17 2015 -0700
+
+    altosuilib: Remove old map bits
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f41fe2291891b28327c332098bdc601bc75fc4c0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 26 00:46:21 2015 -0700
+
+    altosuilib: Use new map code for map preload UI
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cd0f4de98ea709e5f070d5f1337658590d2004a1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 26 00:33:02 2015 -0700
+
+    altosuilib: Add AltosUIImage.java
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 501fa41111b93cc213a1114a33612858e1e93ab5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 26 00:29:53 2015 -0700
+
+    altoslib/altosuilib: Get new Map display code running in altosui and telegps
+    
+    Looks like the display is all hooked up. Still need to replace the
+    preload UIs.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cb23b992be8ba40c97d8988c134a814a13ccd58c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 25 20:34:05 2015 -0700
+
+    altoslib/altosuilib: Update library version to 7
+    
+    So many ABI/API changes
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 68effc6e39f731a2d7bbe2963999c1e785118897
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 25 20:33:28 2015 -0700
+
+    altoslib: More frobbing with new map bits
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 00aca369c4070901e0400f291d5f269b5fb8015c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 25 20:10:37 2015 -0700
+
+    altoslib: Get new abstract mapping code compiling
+    
+    Not useful yet, but at least it compiles now?
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6ca2c42061b3c0160bf0137c9cd65989c522b826
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 25 16:35:23 2015 -0700
+
+    altoslib: Build AltosVersion.java in configure.ac
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit dcbd87bc685924a6587a5f4dae47d34f417601b0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 25 16:26:01 2015 -0700
+
+    altos/telelco: Show box voltage with pad knob instead of firing button
+    
+    Turn left past '1' and see the firing box battery voltage instead of
+    pushing the firing button with the box disarmed. This seems like a
+    safer UI.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 91f617d450c187500593d1ae785958187f68ca14
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 25 15:49:21 2015 -0700
+
+    altos/telelco: Display telefire battery voltage
+    
+    When the firing button is pressed while unarmed, show the telefire
+    battery voltage in the display.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a54aac3361b7bd18f111e5ba06fb89015504b8a4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 25 15:47:46 2015 -0700
+
+    altos: Add telelco v0.3 (v0.2 with cc1200 instead of cc1120)
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9b268351aee44de959dcc4c792189c10a00428fe
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 25 13:23:54 2015 -0700
+
+    telefire: Report telefire battery voltage over telemetry link
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0e76cb2a7d5db24b6cecdccb6fb8d5bf5527fadf
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 24 17:28:07 2015 -0700
+
+    altos: Only set CMAC RSSI value on valid packet received
+    
+    This ignores spurious packets for the purpose of showing the RSSI
+    value in telelco/telefire, avoiding warning about 'low RSSI' when the
+    radio receives noise.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e7c25e3ba04b1e9f8e6fa31e2d464fe96a074dad
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun May 24 17:25:25 2015 -0700
+
+    telefire: Make 'good' RSSI value configurable
+    
+    Different radios will have different 'good' RSSI values, so let each
+    product configure it, leaving the default set to -90dBm, which is
+    a solid signal value for the CC1111.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 29edc37a8de56cb6eb028e3bf3f56aa70f109eba
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu May 21 13:49:28 2015 -0700
+
+    altoslib: Create display-independent map support code
+    
+    This takes the swing-specific map code and creates a generic version.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 59a28811cb19d315b483df296145a2769c445f80
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 19 10:25:05 2015 -0700
+
+    Flip version to 1.6.0.2
+    
+    Tag a version for development builds
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f3ddaae82215e365726f2a62a3dc46bfb29eb1b5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 19 10:23:09 2015 -0700
+
+    micropeak: Use fast load mode by default in -load script
+    
+    Speed up flashing in default config
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit eac71f2b871357ff69581c713059a3741a82a932
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 19 10:22:10 2015 -0700
+
+    microsplash: Add 'publish' target to Makefile
+    
+    This dumps the resulting binary and -load script into the Binaries
+    directory of the altusmetrumllc repo
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit dba00b3d9102db99592f5822a703e64d98ace8bb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 19 10:17:01 2015 -0700
+
+    altos: Support 32MHz xtal on cc1200
+    
+    I ended up building some cc1200-based boards with 32MHz xtals, so just
+    make this an option when building the driver.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fcb523cd083503591fa1277648e5deb258bbbaf4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 19 10:16:10 2015 -0700
+
+    doc: Clarify what 'after motor' means
+    
+    Note that this means after motor burn-out, not after motor start.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b67e6ae8ce34ef119da96b442776bb3d78b4f874
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 19 10:14:43 2015 -0700
+
+    ao-dump-up: Add --wait option to make testing µPusb easier
+    
+    The --wait option hangs around until a suitable device appears, so
+    that you can test a pile of µPusb devices without needing to
+    constantly interact with the command line.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2b57158737f85c7009658b3e923c66794f01bbdf
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 19 10:12:52 2015 -0700
+
+    altosui: Remove un-implemented --fetchmaps argument
+    
+    This has been stubbed out for a while, so just remove it.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3e5e9333420ede74d998556c1bbd5888e8ff75ae
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue May 19 10:09:22 2015 -0700
+
+    altoslib: Expose locale and non-locale floating point parsing functions
+    
+    UI bits use locale-specific floating point formats, so parsing those
+    needs to use the locale. Network-based data, like .kml bits need to
+    use non-locale-specific parsing code, so now we've got both APIs
+    available, and each used as appropriate.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3fbf0a29a1b8a67b90ef965ee3e2e972c0ec33a1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon May 18 10:52:24 2015 -0700
+
+    altoslib: Use Locale.ROOT for KML export
+    
+    This avoids locale-specific number formatting, which breaks
+    googleearth when importing the resulting file.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1cc1900e13d79e0451587439c23bbb062d86cee3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 27 22:29:45 2015 -0700
+
+    altosdroid: Fix tab label height problems
+    
+    With a newer android API versions, we can set the indicator to a View
+    instead of just a string. This lets us wrap the desired string in a
+    TextView and show just that for the indicator, making it exactly the
+    right size.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7bfa8841b65707d629b425b306ec4cc3acfc156c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Apr 27 21:20:22 2015 -0700
+
+    altosdroid: Add USB support for TeleDongle/TeleBT
+    
+    This lets AltosDroid use a USB-connected receiver as well as Bluetooth devices.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 356617a3476e237311b8bbcefd6beda8271b120d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Mar 29 12:10:47 2015 -0700
+
+    windows: Use new windows stub to launch applications
+    
+    This avoids needing to locate javaw on the system while also making
+    the registry entries less fragile.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fe76229618643f0af7eae965e7a8fc6c70410d27
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Mar 29 12:08:42 2015 -0700
+
+    icon: Convert windows stub into launcher program
+    
+    Instead of an empty windows stub that exists only to hold icons, add
+    useful code that allows it to find and run the related java
+    application. This also adds more resources to that application to
+    provide more information to Windows too.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b1b69c8b73cbffb56c688f6a968d144b642cdff2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Mar 20 15:09:20 2015 -0700
+
+    altos/stmf0: Have fast ADC ring buffer code use wrap-around
+    
+    Instead of requiring that the whole set of returned values fit
+    precisely in the ring, allow for wrap-around so that we can fetch an
+    odd number of ADC values. The previous version required that the fetch
+    amount always be a factor of the ADC buffer size.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 43b4044dc71d44cb25be6397b4d66fd792580eed
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Mar 19 01:12:24 2015 -0700
+
+    altos/chaoskey: Set USB VID/PID to 0x1d50/0x60c6
+    
+    These are allocated from the OpenMoko USB vendor ID page and offer a
+    more 'official' number than from using the 0xfffe space.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c3321bd9f73c89686fe983a8d99f4e54fa91550e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Mar 19 01:11:33 2015 -0700
+
+    altos: Add the ability to configure a different USB vendor ID
+    
+    ChaosKey will use an OpenMoko vid/pid, so we need the ability to
+    configure a different USB vendor ID for each product.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fce4e6926de7cb5ef6ea64a8db134c442b86153b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Mar 10 09:35:02 2015 -0600
+
+    ao-tools/ao-list: Show devices that have no TTY
+    
+    chaoskey doesn't advertise itself as a modem, so the kernel doesn't
+    allocate a tty device.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ce99807ef942de54a3f934d321baf3c3d26442bb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Mar 10 09:34:01 2015 -0600
+
+    altos/test: Support old telemega eeprom file formats in ao_flight_test
+    
+    The old eeprom format used different stoarge for the accel calibration
+    data, which doesn't matter to this code, but the change in the format
+    value does.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f92be7e22150b2de4c899e687d3bbfc1eb842f9e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Mar 10 09:32:20 2015 -0600
+
+    altos/test: Make aprs test code compile again
+    
+    Adding the compressed/uncompressed config option broke the APRS test harness.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 46f2a759dc21ebf3a7bf7e0566903fc1e7364719
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Mar 10 09:30:53 2015 -0600
+
+    ao-tools/ao-mega: Clean up formatting of pyro status messages
+    
+    There was an extra newline and missing space.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2c4ebe9b4b392531cd1a5bbafc4ddc38a9391af5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Mar 10 09:29:52 2015 -0600
+
+    altosui: Add map to MonitorIdle display
+    
+    Nice to be able to verify that maps are working by using this mode,
+    instead of needing to use flight monitoring.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit dec8de9c642fea1df924a667a4779a6c6c8c3453
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 7 16:53:58 2015 -0800
+
+    altos/stmf0: Need ao_exti.h for pin configuration
+    
+    Flash loader uses pin configuration to set up GPIOs for boot selection
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4e53a5da5a8921829a3bb290e7c051950a66ab75
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 7 16:40:30 2015 -0800
+
+    altos: Add makefile for chaoskey flash loader
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 601f33f5e2f833fed9ab10b24a9df91905d7f766
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 7 12:38:08 2015 -0800
+
+    altos: Build chaoskey by default
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f3406f38d71d0c9b55c9a3ae2356a778328509a9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 7 12:36:57 2015 -0800
+
+    altos: Add .gitignore for chaoskey
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4862bec43b29264c361950700f935604f41b840b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 7 12:33:36 2015 -0800
+
+    doc: Update telemetry docs to include new packet formats
+    
+    Add TeleMega TeleMetrum v2 and companion data packet formats.
+    
+    List which radio parts each product uses.
+    
+    Document modulation parameters for new data rates.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cdd7ad469728fde178c69b9c99d70d6e0ab3f12d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Mar 7 10:18:57 2015 -0800
+
+    altosdroid: Deal with bluetooth connection failures better
+    
+    Remember when we've closed the bluetooth connection so that we stop
+    operations, including reporting connection status messages or even
+    starting a connection attempt.
+    
+    Pass the AltosBluetooth object back in connection status messages so
+    that TelemetryService can tell when messages from closed objects get
+    delivered. There's a queue between the two, so the above fix catches
+    most of these instances, but not all of them.
+    
+    Stick a delay during reconnect -- if the TeleBT device is getting
+    power-cycled, it will need a few seconds to reconfigure the device at
+    startup, if AltosDroid manages to connect during that time, the
+    configuration commands will be ignored.
+    
+    Unlock the AltosBluetooth device while we connect so that cancel
+    calls will actually work.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d446c90dab0aca7e501a0228f24c210758d84a1d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Mar 2 22:23:22 2015 -0800
+
+    altosui/telegps: Change from variable-units snuck into master
+    
+    show_units_name(double) only exists on the variable-units branch...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bef7c89dac68956a94ae386fa6b87165ab6cb484
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Mar 2 21:16:06 2015 -0800
+
+    altos: Missing pad field in TMv2 data packet
+    
+    The normal ARM padding would have filled this in correctly, but it's
+    best to be explicit about the structure.
+    
+    This also adds a test to make sure the resulting telemetry declaration
+    is exactly 32 bytes,
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3b133656df4698ceb7af5902711edf9253a29227
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Mar 2 21:11:33 2015 -0800
+
+    altos: Wait for BT disconnect before sending command
+    
+    If AltosDroid manages to connect to the BT module before we've
+    configured it, we won't be able to talk to it as we can't force the
+    module to ignore connection attempts. Wait for AltosDroid to give up
+    and let us configure the device. Eventually, we'll manage, if
+    AltosDroid's delay interval is longer than the time it takes to
+    configure the unit.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 112f528755b6c8a2f6eef3bfec21fac981ffb44f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Mar 2 21:08:44 2015 -0800
+
+    ao-tools: Add ao-flash-stm32f0x
+    
+    This new script uses openocd to flash stm32f0x parts
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ff3c27e3b842107680dc48084f71eb8c63f1bcab
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Mar 2 21:06:51 2015 -0800
+
+    altoslib: Round frequency when configuring radio
+    
+    This makes sure we set the right frequency, instead of being off by
+    1kHz on a regular basis...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e637367e8b940e1642a07b3b7c99147561de9cf1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Mar 2 21:06:02 2015 -0800
+
+    altosui/telegps: Add config option for APRS format
+    
+    Allow configuration of APRS compressed/uncompressed
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2614d20b324ab215ef22f178e3635d48e757fa9b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Mar 2 21:02:31 2015 -0800
+
+    altos: Make APRS format (compressed/uncompressed) configurable
+    
+    This provides a choice of compressed vs uncompressed when sending APRS
+    packets to deal with receivers that still do not have support for the
+    more useful compressed format.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0724cc334a3bd8d81bbd4641d90a7e4040330efe
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 28 16:06:23 2015 -0800
+
+    altos/usbtrng: Split out random number generating code to separate driver
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bd18bc5a42fcecfb710477371b9f62610a1ea640
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 28 16:04:00 2015 -0800
+
+    altos: Add chaoskey flash loader
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a4c436a1c39da971b72d4302623f27af9d56cc38
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 28 16:02:17 2015 -0800
+
+    altos: Create chaoskey product
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 476c5b87ea0901f70fe98b581ecca9afaf957607
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 28 16:00:45 2015 -0800
+
+    altos/stmf0: Allocate USB buffers at startup
+    
+    This lets the extra allocations used from ao_usb_alloc_buffers be
+    allocated before the first USB connection happens.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e4b415cc8f839ceae48916b5e9d78f78589186cf
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 28 16:00:17 2015 -0800
+
+    altos/stmf0: Typo in ao_crc_stm.c
+    
+    Extra semicolon
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 27aef593fb4c037fdb65c9fb397829b42d72d0f2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 28 15:59:30 2015 -0800
+
+    altos/stmf0: Fix fast ADC interface
+    
+    This was configuring the hardware wrong, and wasn't keeping the output
+    ring full.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ec2d758844202108b446e6b12ec1da8812ceb265
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 28 15:07:16 2015 -0800
+
+    altos: Allow software to offer other USB interface classes than CDC
+    
+    This lets some boards offer non-CDC class USB interfaces so that the
+    modem driver doesn't pick them up.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4af4e36cda96d053458eeb040e35886890917385
+Merge: 91b1a806 106b16b4
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Feb 22 14:55:40 2015 -0700
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 91b1a80650a7dcd7c5bf819618a8cea0fceb37d9
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sun Feb 8 09:29:01 2015 -0700
+
+    swap names so v3.0 is the default TeleDongle version to turn on
+
+commit 106b16b4d5d024543d7ad8c4b4762151e253f3c4
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 16 22:22:37 2015 -0800
+
+    altosdroid: Ignore automatic tab changing while activity is saved
+    
+    When the activity state is saved (after onSaveInstanceState()), we
+    can't update the UI until the activity is restarted or restored; that
+    means any UI changes we make, like switching tabs, must deal with this
+    by allowing those changes to be ignored, using commitAllowingStateLoss
+    instead of commit.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e6630ac41ca0d8563cf9a0df5d4acba8192e9624
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 16 21:35:34 2015 -0800
+
+    altosdroid: Missing file: DeviceAddress.java
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8f2d82461f3cf5da157b23ea45a2fa60d56b196b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 16 21:32:54 2015 -0800
+
+    altosdroid: Only speak when GUI is running
+    
+    Create voice in onStart, stop it in onStop. This way, if some other
+    application is in use, the voice won't be annoying you.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 877609a60a9f2c61c1efad8285b2a3c22f59be28
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 16 21:19:09 2015 -0800
+
+    altosdroid: Explicitly disconnect BT on termination or 'disconnect'
+    
+    This adds an explicit message to the telemetry service telling it when
+    to stop trying to talk to the bluetooth device. Until this message is
+    received, the service will reconnect to the specified BT device.
+    
+    That message is sent when you 'quit' the application, or when you 'disconnect'.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c51d39c7ea1153cd2d0dc02c47824a9f35b22fb9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 16 20:57:11 2015 -0800
+
+    altosdroid: Lots of bluetooth connection changes
+    
+    Appears to more reliably abort in-progress connection attempts so you
+    can switch TBT devices without having the previous device in
+    operation.
+    
+    Shows which device the connection is being attempted for.
+    
+    Eliminate the 10-second timer and just disable the service when the GUI
+    shuts down while no BT connection is running.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b13a78e4f457f67605fc6dafc7f9733746a4f70c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 16 20:49:39 2015 -0800
+
+    ao-bringup: Changes for telebt for keith's hacking
+    
+    Make the programming device auto-detect by username.
+    Load binary from ~/altusmetrumllc
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2ebb4dff758058ae9512cf36518416eb69b928f0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 15 08:57:55 2015 -0800
+
+    altos: Remove some accidental debug printfs from ao_packet.c
+    
+    While fixing the cc1200 configuration, I added some debug printfs to
+    this code. They were accidentally committed with the fix...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 135abf0e7c5ceb5738a0b5f68fe2be4b7abdae5e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 14 23:18:38 2015 -0800
+
+    altos/cc1200: Adjust bit-sync configuration
+    
+    The default bit timing adjustment mechanism allows for only a 0.2%
+    deviation from the programmed bit timing. I found one TeleMini device
+    which is beyond that tolerance as it was built with an older crystal
+    with more error.
+    
+    Switch to the more expensive synchronization mechanism which allows up
+    to 2% timing error, but requires a multi-byte preamble (which we
+    have). This fixes packet mode nicely.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9c75faf1ec51eb2f9a8dc9402653490143a784d9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 14 08:35:47 2015 -0800
+
+    altos: embed ao_alarm and ao_clear_alarm in ao_sleep_for
+    
+    sdcc won't embed these itself, and thus consumes too much flash for
+    telemetrum-v1.0
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cc64e0e9d35e01b349680159a5bbd68d059134cd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 14 01:16:42 2015 -0800
+
+    ao-bringup/turnon_telemini: Detect which programmer to use by $USER
+    
+    Bdale uses TD 100, keithp uses TD 186.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c4f9d96bdea192486f0e3f2d80b846c39a05c0ab
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 14 01:13:21 2015 -0800
+
+    altosuilib: Detect pair programming by product name, not USB id
+    
+    With TeleDongle, TeleBT and TeleMetrum coming in both pair- and self-
+    programmable versions, we can't use the USB id to tell them
+    apart. Instead, fetch the device name and use that instead.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0e929ee2d0a3d1b1bacd36c2c3723ab860eb40b6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 14 01:11:30 2015 -0800
+
+    altosui: Run all igniter status requests from non-GUI thread
+    
+    Anything run from the UI thread blocks the UI entirely; the Fire
+    Igniters startup code to collect the number of pyro channels when
+    building the UI was doing that from the UI thread. Switch that around
+    so that the UI doesn't get built until that reply comes back, allowing
+    the user to see the 'connecting' dialog, and cancel it if required.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f4c812bef76a2cd95f675cb27ea89059561ceec7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 13 23:51:10 2015 -0800
+
+    altos: Replace ao_alarm/ao_clear_alarm with ao_sleep_for
+    
+    Having arbitrary alarms firing in the middle of complicated device
+    logic makes no sense at all. Therefore only correct use of ao_alarm
+    and ao_clear_alarm was around a specific ao_sleep call, with correct
+    recovery in case the alarm fires.
+    
+    This patch replaces all uses of ao_alarm/ao_sleep/ao_clear_alarm with
+    ao_sleep_for, a new function which takes the alarm timeout directly.
+    
+    A few cases which weren't simply calling ao_sleep have been reworked
+    to pass the timeout value down to the place where sleep *is* being
+    called, and having that code deal with the return correctly.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1445725b983134d5a967dee88ef997bf15d4a422
+Author: Tom Marble <tmarble@info9.net>
+Date:   Wed Feb 11 08:21:27 2015 -0600
+
+    Added continuous output option to ao-usbtrng
+
+commit 65837616a6d073da8e3e2bf9da524a48cffb77c2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Feb 9 07:28:18 2015 -0800
+
+    altos/stmf0: Add ao_crc_stm.c
+    
+    Tom discovered that this was missing
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fa813bcb6afc851cf4029b56c19ba46a3ae578f5
+Author: Tom Marble <tmarble@info9.net>
+Date:   Mon Feb 9 08:35:24 2015 -0600
+
+    Minor typo in man page
+
+commit 26f61380ce6b4df80fa0b5a8a242cef79d5ae339
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Feb 7 22:23:38 2015 -0700
+
+    document addition of TeleDongle to the set of ARM targets to save binaries for
+
+commit 4231d68bae69d9a7d1f52205002db452cd5f986d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 20:42:15 2015 -0800
+
+    Bump java library versions
+    
+    Lots of minor API/ABI changes; make sure people can install both 1.5
+    and 1.6 at the same time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c72d83ccd207b5300a90f2e84de6c5c96642478c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 20:36:10 2015 -0800
+
+    altosuilib: Don't offer to graph some GPS details that TM doesn't log
+    
+    When using a TM eeprom file, various minor GPS details are logged
+    (course, ground speed, climb rate, etc). Make sure these aren't
+    offered up for graphing.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 426bacbbd6e0573b143e7c48d71db977e53181fc
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 20:22:19 2015 -0800
+
+    altosuilib: Get the Eeprom download progress bar working again
+    
+    The eeprom download code wasn't computing the start of each state
+    transition correctly, so the progress bar was snapping to the end of
+    the chunk for each state.
+    
+    Invalid state values would snap the bar to the right side.
+    
+    Landed state wasn't ever seen, so the bar would not ever fill.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit aea188e4227993c508c7045d02f2bc87abd4e428
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 18:10:34 2015 -0800
+
+    doc: update 1.6 release notes with recent bug fixes
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0dd733efdbb66535889aafecbba45f49266ed886
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 17:49:39 2015 -0800
+
+    altosuilib: Set the icon and title of the telemetry scanning dialog
+    
+    Just need to call 'super' to get the window configured correctly.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9d5a6914982a29d22103e0202735c9e01ee9e831
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 17:35:15 2015 -0800
+
+    altoslib: Clear saved TelemetryReader state instead of resetting in ScanUI
+    
+    Instead of attempting to mash the saved state from AltosScanUI, just
+    throw it away in AltosTelemetryReader.reset. Much cleaner, and more reliable.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cbc9ecd960d0dd27a2275b4550c30c5c88ccf5bb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 17:09:40 2015 -0800
+
+    altosuilib: Reset telemetry state after processing it
+    
+    This avoids re-using stale state after switching telemetry reception
+    parameters around, which otherwise generates spurious entries for the
+    wrong frequencies in the scan results list.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c0ce45100dd205f59cd84465138c74d9b31df0bb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 17:08:03 2015 -0800
+
+    altoslib: Drop telemetry packets processed while monitoring is disabled
+    
+    A lag between the thread queuing telemetry packets and one pulling
+    them out can result in stale telemetry data being returned to the
+    reader. Fix this by dropping telemetry read while monitoring is disabled.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8a2be4d36a3b116d82529805430c5fb665688267
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 15:09:57 2015 -0800
+
+    altosuilib: Wait for product data while scanning
+    
+    Now that Altos only sends config information once every 5 seconds, we
+    want to keep waiting for that if we're receiving packets successfully.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e70f3dca01b15b75b0b8795eb71bd12817af4800
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 14:43:11 2015 -0800
+
+    altoslib: Mark listener as 'not running' on EOF.
+    
+    This adds a 'running' member to the AltosListenerState class, and when
+    the replay reader reaches EOF, marks the listener as no longer
+    running.
+    
+    AltosUI and TeleGPS now display 'done' in the 'Age' field when this
+    occurs, to let the user know that the replay is over.
+    
+    Also make sure that the display timers are stopped when this happens,
+    or when the window is closed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 08f07d0af123e1c307bc4c0c973da07fae8246b1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 14:40:17 2015 -0800
+
+    altosui: Remove the dregs of AltosDroid load-old-telem code
+    
+    AltosDroid used to scan the old .telem file to return to the previous
+    flight state on restart. Now it just loads the old state object
+    instead, a vast improvement in performance.
+    
+    To do that, there were some changes in the altoslib code
+    required. This patch just removes those, fixing replay bugs in TeleGPS
+    along the way.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0d08c427188f7b748d9ea7651143bc843e9c2691
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 13:09:18 2015 -0800
+
+    altos: ao_packet_getchar needs to return 'int' so AO_READ_AGAIN works
+    
+    With ao_packet_getchar returning 'char', AO_READ_AGAIN would get
+    converted to 0xff instead of -1 on return, making ao_packet_echo
+    either produce a bogus character on output, breaking command
+    responses, or wedge and never exit when the link was dropped.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4a5c64bef6952f25cadebc3e1f9909a5f513e015
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 02:37:36 2015 -0800
+
+    Update version 1.6 release notes with more bug fixes
+    
+    A few bugs found during release testing are notable enough to be
+    included in the release notes.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 211cb482e4da04dc032432abc236ef8b5a5e732f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 01:30:21 2015 -0800
+
+    altos: Separate out ao_tracker force from dbg
+    
+    Allow enabling telemetry when USB is connected without also enabling
+    the motion debugging output.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f9f235bce84df3a6c0261e9d256aac544f87f70f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 01:05:57 2015 -0800
+
+    altos/lpc: Give up on interrupt-driven SPI driver
+    
+    There are just too many limitations in when interrupts are delivered
+    to make them useful. Instead, just drive the SPI directly with the
+    CPU. At higher spi speeds (6Mhz or more), it's probably faster to do
+    it this way anyways.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4b52f67abd0f9ed6d8208556007d75e7ee735cf0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Feb 7 01:05:03 2015 -0800
+
+    altos/drivers: Increase SPI speed of CC115L to 6MHz
+    
+    The datasheet says that the maximum for back-to-back data is 6.5MHz.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ba22e2dbf87b139f0349f4dd8a7e6046514f5bad
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 23:50:49 2015 -0800
+
+    altoslib: Initialize GPS data to MISSING for Monitor Idle mode
+    
+    Make sure any un-set values are flagged correctly for the Monitor Idle
+    UI by using the init() method.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 31fd32cd75f4f22458f0dc82823934672e16b988
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 21:50:47 2015 -0800
+
+    altoslib: Use 'stateless' for Monitor Idle
+    
+    This reflects the lack of flight state progression during Monitor Idle
+    and ensures that the GPS 'ready' indicator will light after 10 solid
+    GPS fixes.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 449c6731b1977c7623dd006ec2db56f383f8d85a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 20:45:28 2015 -0800
+
+    altoslib: Support TeleGPS for Monitor Idle
+    
+    TeleGPS has ADC and GPS values, so build the necessary ADC parser and
+    then hook up GPS parsing.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 58f06706383418ebfa56d88ba51411e6185e09df
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 20:40:05 2015 -0800
+
+    altosuilib: Don't show 'Sats in view' for TeleGPS eeprom graphing
+    
+    We don't log the visible sats from TeleGPS, only the basic GPS
+    info. Have AltosFlightStats track whether sat info is present, then
+    use that to elide the Sats In View graph entry as needed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 35ad1833b10595564de84c88f44a214b1c134ccf
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 20:36:44 2015 -0800
+
+    altosuilib: EEProm download from TeleGPS doesn't have states
+    
+    As TeleGPS doesn't have flight states, the EEProm download progress
+    bar shouldn't show 'state invalid', and it should use a different
+    scale for each block.
+    
+    Fix this by having AltosConfigData know which devices have state based
+    on their log format, then mark the progress bar state limits as
+    'invalid/invalid' instead of 'boost/landed'. Then have the progress
+    bar use that to set a more reasonable scale for each block.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 66e7a8081c07d0d96a31ae34963d430f06dccdfb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 04:45:17 2015 -0800
+
+    altoslib: Store MS5607 data in AltosConfigData for use by AltosMs5607
+    
+    When doing 'Monitor Idle', we fetch new config data each iteration and
+    pass that to each of the readers, including ms5607. Instead of
+    re-fetching the config data there, just store the ms5607 parameters
+    when we fetch it the first time and copy it over.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 14d524782af4f06d7f3722dcc852772ec493c2cc
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 03:36:10 2015 -0800
+
+    Package TeleDongle-v3.0 firmware with TeleGPS and AltosUI apps
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit df47839824dd4e708c22fbf8f4a3054b9c45b9c3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 03:34:30 2015 -0800
+
+    altosuilib: New teledongle and telebt devices are not pair-programmed
+    
+    Only list telebt-v1 and teledongle-v0 as pair-programmed devices so
+    that newer versions go through the self-programming process
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 21ff52befb27decc4b23458315620c47d7a07b21
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 03:33:28 2015 -0800
+
+    micropeak: Install Windows AltusMetrum driver bits
+    
+    Make AltOS-based µPUSB devices work with MicroPeak
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a3f26f6d0c7574b8cdaecbccd7cfe89aaeb736b0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 03:32:27 2015 -0800
+
+    micropeak: Support both FTDI and Altus Metrum USB IDs
+    
+    The windows driver only returns FTDI devices when
+    altos_ftdi_list_start is invoked, so we need to call both that and the
+    regular altos_list_start to get all of the devices.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cc707432c6eaedb9587bb63ac570146b356b6bfd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 03:31:07 2015 -0800
+
+    micropeak: Fix file association registry install on Windows
+    
+    Need to invoke DisableX64FSRedirection before setting file association
+    registry entries or Windows won't find our application.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1fc5c8625f649b43d93f23a5fa1ba16773f2d0db
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 03:03:58 2015 -0800
+
+    windows: Look for current Java version in \SOFTWARE\Wow6432Node
+    
+    I have no idea what this is, but I found the Java version down in
+    there...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 83d3d967f576a57285d40e77c4a17303edeef4f1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 03:03:00 2015 -0800
+
+    Add 'keithp-fat' target for uploading temporary builds to keithp's machine
+    
+    This lets me quickly prepare a new test version for Windows/Mac in a
+    single command.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7a7d60d72e2e742fbc364489721f356806966c03
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Feb 6 01:29:56 2015 -0800
+
+    libaltos: Use more SetupDi API to get Windows 7 listing devices
+    
+    My Windows 7 box doesn't include 'SymbolicName' in the registry, but
+    SetupDiGetDeviceInstanceId *does* return something that includes
+    vid/pid/serial, so use that in preference.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 98db372758470cdaf7b517d670a7ce9186c787bc
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Feb 5 22:25:35 2015 -0800
+
+    Update docs for 1.6
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9fac8b639d2142c90eb95771cda1f6559e987db2
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jan 16 22:09:26 2015 +1300
+
+    altos/lpc: Double buffer USB data transfers
+    
+    This allocates twice the space in the USB memory so that transactions
+    can be double buffered without using separate CPU memory.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+    
+    Conflicts:
+            src/lpc/ao_usb_lpc.c
+
+commit 0671b3c8c24c9f33be77a10315c4669f33c516d7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Feb 5 16:08:44 2015 -0800
+
+    altos/lpc: Clean up USB endpoint access functions
+    
+    The USB device endpoints can have two pointers in them, but we use
+    only the first. Fix the access functions to take an index as to which
+    we want so that we can disable the other address registers with them
+    instead of requiring open-coded access.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a01ce949611b0c18df54c3f3877a43d27699c258
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Feb 5 15:34:05 2015 -0800
+
+    altos/easymini-v1.0: Shrink stack to deal with USB changes
+    
+    Reverting the USB double buffering means using more RAM, need to
+    shrink the EasyMini stack to accomodate that.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2bde76fe852d7908a968168580be4cd4dc0333d6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Feb 5 15:01:03 2015 -0800
+
+    altos/teledongle-v3.0: Shrink stacks to 320 bytes to fit in ram
+    
+    The old USB code had static in/out buffers in ram
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5bf39f674b3d5ee98b55f42562a5ba1a9328ff07
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Feb 5 14:56:13 2015 -0800
+
+    Revert LPC usb performance improvements
+    
+    There's something screwy going on, sticking garbage in the input
+    buffer at boot time
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ef69872c824668146a3876f1f3d0d2e51d3e4c8d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Feb 5 14:54:27 2015 -0800
+
+    Revert "altos/lpc: Fix double-buffered USB changes"
+    
+    This reverts commit 41a0604ad1ea1a03e2db7d41731dbadf466b45db.
+
+commit aeca3b46bc1726a06952cc2ff86f50c6d80ed1e1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Feb 4 22:55:24 2015 -0800
+
+    ao-bringup: Add turnon_teledonglev3
+    
+    TeleDongle v3 uses the LPC11U14 processor which has no on-chip eeprom,
+    so we must reflash the device to set the default radio calibration value.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bc41ab47b928b837724f8bc6b84d0b5b47c25df3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Feb 4 20:33:04 2015 -0800
+
+    altos: Rename teledongle-v1.9 as teledongle-v3.0
+    
+    No hardware changes from the 1.9 prototypes to the 3.0 final version.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit dbafa16cfa897b2a5c6cf455cf8675e83eb0d7d6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Feb 4 20:30:15 2015 -0800
+
+    altos/telebt-v3.0: Set initial radio cal to a sensible value
+    
+    CC1200 uses a different xtal than CC1120, so the default calibration
+    needs to change. This value hit 434.550 on SN 2407, so it seems like a
+    reasonable place to start.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit be443d8d50ad8f59a74bf2f4e810a7359ff72132
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 1 16:57:14 2015 +0100
+
+    altos/telebt-v3.0: Add monitor bits
+    
+    Will be useful to actually be able to receive telemetry
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6eb145d48cfcabf757093433bd2314a80e490a17
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 1 16:46:40 2015 +0100
+
+    altos/usbtrng-v2.0: Select PA11/PA12 mapping config value
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8f9e192e9d1c6fab9843939ff9117f6bb3725943
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 1 16:44:52 2015 +0100
+
+    altos/stmf0: Support PA11/PA12 remapping
+    
+    Small pin-count versions of the STMF0 can remap PA11/PA12 on the same
+    pins as PA9/PA10. These are used by USB, so have the USB driver deal
+    with remapping them.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 466d3e977ca279f97944141fcc12c04f4f58212e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 1 16:44:07 2015 +0100
+
+    altos/telebt-v3.0: Turn red LED off after initialization
+    
+    This lets the user know the device successfully initialized.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 845ae016d700c37948e053ead5f7e2778356fda3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 1 16:43:06 2015 +0100
+
+    altos/telebt-v3.0: Fix stdio setup for BTM
+    
+    Make sure the BTM module is allowed to be included in stdio, but delay
+    adding that until the BT link is running.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a138e05ae6241a6743ca9f64528124f5f6c8e0ee
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 1 16:42:01 2015 +0100
+
+    altos: Always include a check for stdio overflow
+    
+    For some reason, the check for running out of space to record stdio
+    devices was disabled when only one device was expected.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 870428a909025988a8cd834755ea166e2d1e34ca
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 1 16:39:17 2015 +0100
+
+    altos/btm: Add fancier debug. Pull serial reset port low.
+    
+    Adds an interactive debugging mode to help diagnose BTM issues.
+    
+    Discovered that the serial reset pin on the BTM needs to be pulled low
+    for the device to work correctly.
+    
+    Leave the bt link interrupt disabled until things are initialized.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 44a503a8cf3778cad5469c592e8ccbae58e44b97
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Feb 1 16:36:51 2015 +0100
+
+    altos/stm: Add ability to delay STDIO usage for serial ports
+    
+    Bluetooth needs to delay adding the serial port to stdio until the
+    link is up and running. The cc1111 serial driver had
+    DELAY_SERIAL_*_STDIN bits which have been added to the STM serial driver.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 252211e9e54a1e6f4efe2df6382ce60c909de70c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jan 30 14:04:50 2015 +0100
+
+    And, also add the TeleBT v3.0 flash loader Makefile
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bfa5c70a827ac8be23ca48797edc14e13461d6ac
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jan 30 14:03:55 2015 +0100
+
+    Oops, forgot the TeleBT-v3.0 Makefile
+    
+    git doesn't warn about files named 'Makefile' because they're supposed
+    to be generated...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8ca1f234586225caea1040bc229b63491dadc1cb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 27 20:41:15 2015 -0800
+
+    altos/stmf0: Re-implement fast ADC code for stmf0
+    
+    This creates a ring buffer for ADC data so that ADC fetching can run
+    in parallel with other activities.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3749426af1e900a1b3354922fdd7e8b3bfa38084
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 27 17:18:42 2015 -0800
+
+    altos/usbtrng-v2.0: Use stmf042 hardware CRC unit
+    
+    Switch from software to hardware for CRC computation. I think this
+    must be faster, right?
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a95d6776dea86cdc4bdc3512505ba7e75365c127
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 27 16:55:27 2015 -0800
+
+    altos/stmf0: Add CRC driver
+    
+    Sets up the stm32f0 CRC hardware, exposing inline functions to access
+    it. DMA access is possible, but usbtrng can't use that.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 79f3434013650fe4e3d76e5eb56a10000ee34249
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Jan 27 09:36:19 2015 -0800
+
+    altos/stmf0: Remove remaining stm32l bits from stm32f0 code
+    
+    These were left over from the stm32f0 initial implementation work; now
+    it's more useful to list only the bits which are valid.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bf08397202860a73417cd1711012eb3e33f308c3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jan 26 22:23:19 2015 -0800
+
+    ao-tools: Add ao-usbtrng to dump RNG data for testing
+    
+    ao-usbtrng reads a specified number of kilobytes of random data from
+    a random number generator.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ee91e1da606c8a8fade278a3aeae9c1cc9014b84
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jan 26 22:22:00 2015 -0800
+
+    altos/stm: Fix typo in stm32l.h
+    
+    This crept in while working on the stmf0 bits. oops.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ac1a58af4d281a9bc3572dc503982a94e439a4c1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jan 26 22:16:18 2015 -0800
+
+    altos/usbtrng-v2.0: Add random output command
+    
+    Read chunks of random ADC data, do some CRC16 computations to de-bias
+    and merge 4 bytes of input data into 2 bytes of output data, then dump
+    that out over USB.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 729bb7a405460db8d44c9ff6ee903b28c7499a02
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jan 26 22:14:57 2015 -0800
+
+    altos/stmf0: Add ADC and DMA APIs
+    
+    The ADC api is what USBtrng wants; a way to repeatedly read a single
+    ADC input as fast as possible.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a01effc2f64c757c907e0f4937b4d3710b97bde0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jan 26 22:12:40 2015 -0800
+
+    altos/stmf0: Add faster USB path
+    
+    This adds a way to allocate private USB buffers for sending data
+    without needing to copy it again. It requires ensuring that all
+    accesses are 16 bits aligned to 16 bit boundaries.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e1d5bcb1968e280b8ebdf6c8b12e8a87167fd890
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Jan 26 22:10:47 2015 -0800
+
+    altos/stmf0: Fix linker scripts to make ao_boot work
+    
+    The flash loader ended up assuming ao_boot was at the start of ram,
+    while the application stuck it after the interrupt table (where it
+    needs to go).
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 32c68670af9f8aa690c64d64502e559c0df0c1db
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 25 19:58:38 2015 -0800
+
+    ao-tools: Add --wait option to ao-usbload
+    
+    This waits forever for USB writes to complete, instead of timing out
+    after five seconds. Useful when debugging the device.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 02b07a202839d6e68b3f0db7f8965478661db140
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 25 19:37:05 2015 -0800
+
+    altos: Add flash-loader to usbtrng-v2.0
+    
+    Uses the new STM32F042 flash loading bits.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit df881bce8576f091b2d8cb53b8ce8a43aeedecde
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 25 19:35:19 2015 -0800
+
+    altos: Add self-flash support for STM32F042 processor
+    
+    Also moves the usual address for applications out of the way of the
+    flash loader.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 02e1058fa52ee7c867ea6c9031ebb9e21d14889c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 25 16:43:48 2015 -0800
+
+    altos: USBtrng v2.0 hardware bringup
+    
+    Gets the USB connection running and blinks the LEDs.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 02f03df6d089cafae99f8ce15dcbd87f6e78d749
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Jan 25 16:42:39 2015 -0800
+
+    altos: Initial STMF04x support
+    
+    Basic clock configuration, OS support, LED and USB drivers.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0e7d1c89fea98eabca738f10cbfebec631be3bb7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Jan 24 11:18:59 2015 -0800
+
+    altos: Add support for TeleBT v3.0
+    
+    Add support to the BTM driver for non-CC1111 interrupts
+    Add HW flow control to STM serial driver
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 41a0604ad1ea1a03e2db7d41731dbadf466b45db
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jan 22 21:31:45 2015 -0800
+
+    altos/lpc: Fix double-buffered USB changes
+    
+    These got merged when we were down in Auckland, but before they'd been
+    finished. Transmitting worked fine, but receiving was mis-configuring
+    the OUT buffer size in the hardware.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 291eec859606b73b43072cd2debfbb92659e0d95
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jan 22 20:34:43 2015 -0800
+
+    altos: Get rid of some accidental debug code
+    
+    I was debugging the accelerometer calibration code and left some
+    printfs in it, which made TM run out of flash space.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e05e0c6b71a1df65f188e00622e9632eb27510fd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Jan 16 22:09:26 2015 +1300
+
+    Set version to 1.5.9.1
+
+commit 2a053d3d157e00b6a6406f4f78ddb8e298b6c4b7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Dec 22 17:27:09 2014 -0800
+
+    altos/lpc: Switch LPC SPI driver to interrupt-driven
+    
+    This improves performance for SPI transfers, while allowing other
+    tasks to get work done during longer SPI transfers.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 213a6604ec225e843f30244e6f94d0ebb3d27e46
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Dec 22 17:11:51 2014 -0800
+
+    altos: Adjust CC1200 RSSI reporting value
+    
+    On the test setup, we were about 13dB off, so tweak the settings to
+    suit. This result wasn't tested; it's just a rough offset until we get
+    a production run of TeleDongle boards back to do more systematic
+    measurements.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 014dcc1f179237dc247fafa4a2cff91809260681
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Dec 22 17:10:33 2014 -0800
+
+    altos: Document cc115l power measured at RF setting 0x03 as -31.75dBm
+    
+    We built a custom TeleGPS load for radio sensitivity measurements with
+    the lowest documented power level setting (0x03), and measured the
+    power out at that value of -31.75dBm on the test board.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cf09ee2a4b093c56b64260c3db3f5e07143aa888
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Dec 9 21:44:53 2014 -0800
+
+    ao-bringup: Clear pending output before setting frequency.
+    
+    Maybe this will unwedge things
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5b7ec0c69343db3793c0317939b5eff1f2d04752
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Dec 6 15:08:53 2014 -0800
+
+    micropeak: Support µPUSB with our own USB ids
+    
+    This matches the new µPUSB id as well as the FTDI USB id.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7e52ef59082cb2afdba498233c429321c37a6ac3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Dec 6 15:08:29 2014 -0800
+
+    altoslib: Add usbtrng, usbrelay and mpusb USB ids
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7339d2379713b5b7e4c4fe6bad89ed93f9d39e82
+Merge: d1f91215 b6462ca3
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Dec 6 15:39:53 2014 -0700
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit d1f9121593fe30b924223e89ef4d596b5bec2b25
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Dec 6 15:39:35 2014 -0700
+
+    improve test procedures for TeleMega
+
+commit b6462ca3a7e99fe390ec97f94c23d36fab8c294d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 23 18:56:40 2014 -0800
+
+    altos/cc1200: With PQT wide open, we can't use PQT_REACHED for start
+    
+    Because we're allowing even signals only weakly correlated with the
+    preamble through to sync detection, we can't use the PQT_REACHED
+    symbol to tell when a packet header has been seen. Instead, just look
+    for SYNC_FOUND.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0e3eeaf59688dac92eb3a27d589923126cb34e00
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 23 18:50:57 2014 -0800
+
+    altos/cc1200: Open up preamble detect to improve sensitivity
+    
+    Increase soft decision PQT value to max (15) to ensure that we detect
+    even weak packets.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit eabeb76a2a9acb624ae364c4f0f315bfc3549d98
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 23 18:31:15 2014 -0800
+
+    altos/cc1200: Wait for packet to be placed in FIFO during receive
+    
+    This changes the receive code to use MCU_STATUS, waiting for
+    MARC_STATUS1 to indicate that the packet is in the fifo before reading
+    it out.
+    
+    It also fixes the receive timeout code to keep receiving if the
+    preamble or sync have been seen when the timeout fires. This makes
+    TeleLCO able to use short timeouts during scanning while still
+    successfully receiving packets.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2163f6e6b341b7840f03e89d568699b8ea186435
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 16 16:39:18 2014 -0800
+
+    altos/teledongle-v1.8: Make this the same as teledongle v1.9
+    
+    Remove RSSI LED blinking, add CRC error LED
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 54f7ab842a8cba3003cd5a9deb2515151263ca2e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 16 16:38:12 2014 -0800
+
+    altos: Allow TeleMega to be built without MPU6000
+    
+    Robert Braibish's board has a dead MPU6000; this fix lets the TeleMega
+    firmware build without that driver so the rest of the board could be verified.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f16ea9abfaac9eee3b0935c586e383ae046d6cf5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 16 16:37:15 2014 -0800
+
+    altosui: Remove duplicate AltosUIPreferencesBackend.java
+    
+    There's a copy in altosuilib
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit abdf3177293c57e659017b64819c13f11c126011
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 16 13:41:27 2014 -0800
+
+    altos/microsplash: fix .gitignore to ignore resulting binary
+
+commit 97a321692c2e41a1d3f77fb541780ada945eff52
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 16 13:40:15 2014 -0800
+
+    Add AltosDroid release note for version 1.5
+
+commit 47956ac01397c0a7fafc6b0a4840113186924b2e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Nov 16 13:17:55 2014 -0800
+
+    altosdroid: East and West were flipped in all GPS output
+    
+    East is positive, West is negative
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5aae1446026a08bf8f09c56b960545eff30a8bd1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Nov 15 22:52:42 2014 -0800
+
+    altosdroid: Save AltosState and restore at startup
+    
+    Instead of re-parsing the old logfile, save the current state in the
+    preferences database and restore at restart of the
+    TelemetryService. This makes the state get restored even before the BT
+    connection is recovered.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 52ce23327bd81e2d40a1817442e75bd6b60ffe95
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Nov 15 22:50:31 2014 -0800
+
+    altoslib: add AltosPreferences state save/restore interfaces
+    
+    This serializes an entire AltosState object and stores it in the
+    preferences database for later retrieval. AltosDroid uses this to
+    recover the old state data when restarting.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a488da3ca72fe0778b2d79a8cac935621d1d789d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Nov 15 22:49:06 2014 -0800
+
+    altosdroid: TabMap needs to expose () constructor
+    
+    Otherwise we get an exception at startup time for some reason.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit deda23963586eb07a32f9a3c83a0355178e19340
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Nov 15 22:48:15 2014 -0800
+
+    altoslib: Add getBytes/putBytes interface to AltosPreferencesBackend
+    
+    This lets us store arbitrary binary data in the preferences database
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e5dd00ef0014364fc059970cc020f209b3b16cf8
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Nov 15 22:46:01 2014 -0800
+
+    altosdroid: Don't display MISSING flight number
+    
+    Just check and clear the entry if we end up seeing that value
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 60edcfe410e7fa848813d6c1ed8dc9808887d041
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Nov 15 16:03:32 2014 -0800
+
+    altoslib: Make AltosState serializable
+    
+    This involved making every class it references serializable as well
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4d4fee0b0091a1b6257a06f62b1078778cdb417f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Nov 10 14:41:17 2014 -0800
+
+    altoslib: Missing headers for mag sensor in CSV output
+    
+    Kelsey Black <nmonic@gmail.com> reported that the TeleMega CSV output
+    was missing the header labels for the mag sensor data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 437eba2ff27b2b7dfd0f363819b9a43ab8b28ead
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 6 20:04:47 2014 -0800
+
+    altos: Reset interrupt flags before TX in CC1200 driver
+    
+    Failing to reset the flags set during interrupt leads to
+    short-circuiting transmission and not a lot of packets going out.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7f742824673e5e6034defdb09b66d4d56eb8d4fe
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 6 16:05:49 2014 -0800
+
+    altos/teledongle-v1.9: Switch to NXP processor as on prototype boards
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6a082d9b5ed169b9d4153885f3535987e5ae5d84
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 6 16:04:56 2014 -0800
+
+    altos/lpc: Disable JTAG when using pins for GPIO
+    
+    JTAG is enabled by default, making those pins not support GPIO unless
+    specifically configured.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 58db263cc835be0abb972654c2d7369718c88b37
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 6 16:04:14 2014 -0800
+
+    altos/lpc: Declare SPI send parameters as const
+    
+    This matches STM
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d3dd45b060c996153ff8195bd371e9e1f3b15efb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 6 16:02:47 2014 -0800
+
+    altos: Use other TeleDongle LED for CRC-invalid packet reporting
+    
+    Instead of blinking out some fake-o RSSI indication, just blink the
+    red LED when a packet with a bad CRC is received.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2313cdacefb2139bc68cd98e782c54d706af0704
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 6 16:02:07 2014 -0800
+
+    altosuilib: GPS errors are recorded in floating point, not integers
+    
+    Fix the format used to present them in the info table.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2f0ff9675017655846a8abc617b4dc9a3666d0b9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 6 16:01:24 2014 -0800
+
+    altos: Use AO_SPO_SPEED_FAST for CC1200
+    
+    This asks for the fastest available SPI speed, instead of fixing it to
+    8MHz, which may not be supported on every architecture.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 80a0397dde2f787fb20fd2520b274b826c68ed5a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 6 16:00:06 2014 -0800
+
+    altos: Stop attempting to ramp power on CC115L
+    
+    The PA register on the 115L isn't in any way monotonic, making the old
+    code broken. Just rempve it instead of fixing it; we don't ramp
+    anywhere else...
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f2e5ffd839fe5be99359e4c86a96f03148bac698
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 6 15:58:42 2014 -0800
+
+    altos: Declare port register type only in arch header
+    
+    Instead of defaulting to 8 bits, explicitly require declaration of the
+    type of the port register for each architecture.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f2060d6ca222a04608e598baf59757f12ea2ec70
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Nov 6 13:27:29 2014 -0800
+
+    Move teledongle 1.9 to 1.8; there's a new 1.9
+    
+    1.9 is now the lpc11u14-based form-factor prototype board.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b67556949aa080fc5e70771e972de880e44eca12
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Nov 5 22:11:44 2014 -0800
+
+    altos: Rename microwater to microsplash
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b0e903a76276e33f531eade42ac721c9490c6758
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Oct 30 21:59:45 2014 -0700
+
+    altosui: Pop up 'Connecting' dialog during Monitor Idle
+    
+    This was a bit harder than expected as I had to wire up a way to shut
+    down the whole monitor idle window when you clicked on the cancel button.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ef00182c79bd7a56fbc5d782cb8f4aa0079bb86f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 25 21:14:25 2014 -0700
+
+    altos: Increase CC1200 SPI data rate to 8MHz
+    
+    This got set to 125kHz to make debugging with a logic analyzer easier
+    and never changed back to a reasonable speed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4d51570ed8776461d084726149923c5be43d622e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 25 19:56:25 2014 -0700
+
+    altos: Fix up telemetry delay computations
+    
+    With RDF, APRS and telemetry all being sent at varying rates,
+    computing when to send the next radio data is not as simple as sending
+    telemetry and then figuring out whether to send RDF and/or APRS.
+    
+    Fix this by computing times for the next telemetry/rdf/aprs packet,
+    and only sending each when that time has passed. Compute the delay
+    until the next radio activity as the minimum time to any transmission.
+    
+    This also adds code to the config bits to reset the radio times
+    whenever something changes that might affect which radio data to send
+    next.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c831f1ffb378c20b7513d209d60cdd5dee9db85b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 25 17:44:48 2014 -0700
+
+    altos: Perform cc1200 calibration less often. Tweak radio params
+    
+    This performs calibration after every 4 operations, or when the
+    frequency changes. This reduces the time it takes to get to receive
+    mode.
+    
+    This also makes the sync and preamble qualifiers more strict to reject
+    bad packets.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3f7263f57b1b697d92ed6c3d62956e5bdfc11f24
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 25 11:20:44 2014 -0700
+
+    altos: Remove old AO_SEND_ALL_BARO bits
+    
+    This was used for testing the original TeleMini which couldn't log
+    data at full speed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ae4be19f8ab0899a879a10aec28dc381f44dd2c7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 25 10:21:30 2014 -0700
+
+    altos: Build TeleDongle v1.9 by default
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 51ef3fad6435c0b21945d48fbbaa5a4c092c4960
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 25 10:20:07 2014 -0700
+
+    altos: Increase PQT value for cc1200 improving sensitivity
+    
+    The PQT value indicates how 'good' the preamble is; higher values
+    allow a lower quality of preamble to pass the test, permitting more
+    packets to be decoded.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9102183b40f0b32d4fb6d24502b79a6431184310
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 25 10:17:48 2014 -0700
+
+    altos: Sort out ao_gps_print altitude fetching
+    
+    ao_gps_print is used by both teledongle/telebt and the host-based GPS
+    test code. The first instance uses the old internal GPS structure,
+    containing just a 16-bit altitude while the second uses an
+    ao_telemetry structure, which contains 32 bits split into two
+    members.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cb83b5432e1320726ad496ded78cced7274618b0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Oct 7 05:36:18 2014 +0200
+
+    altos/teledongle-v1.9: Add remaining code to complete the project
+    
+    This turns the prototype board into a full teledongle
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 4a3fe79266a77f8fc001117f49db1d2f14f9e6b6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Oct 7 05:34:06 2014 +0200
+
+    altos: Complete cc1200 driver
+    
+    Deal with differences between cc1120 and cc1200, including built-in
+    packet support and various register changes.
+    
+    This now works to send and receive telemetry, as well as send APRS and
+    RDF.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7fea8b245cdccc1ec77aa559433952f339676473
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Oct 7 05:35:10 2014 +0200
+
+    altos: Expose telemetry altitude macros even without GPS
+    
+    This allows for APRS testing in the new teledongle code
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 484b530a16a54ca8fde412c3f466bfe7eed978cd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Oct 7 05:32:00 2014 +0200
+
+    altos: Mark STM ao_spi_send as taking const pointer
+    
+    We don't write to this, so let it be const for type checking
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit c17dff05b70d98e3193e8e68cc9599f3a30270b5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Oct 24 19:10:45 2014 -0700
+
+    ao-tools/ao-send-telem: Add verbose, fake and rate options
+    
+    Verbose dumps some data while sending packets.
+    Fake sends constructed packets, once every 500ms.
+    Rate sets the transmit bit rate.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e2562ee43b8558df0836217ea3a187b36e2669b3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Oct 15 16:10:11 2014 -0700
+
+    altosuilib: Try to detect the architecture when loading JNI lib
+    
+    Look at sun.arch.data.model and os.arch to try and load the right
+    libaltos file the first time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 88df7cd314269fa1debe226b49b7e4e9dc238d8e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Oct 24 21:21:19 2014 -0700
+
+    altoslib: synchronize access to serial debug output list
+    
+    This list is access by both the receiver and the monitor task, so it
+    needs to be locked to prevent collisions.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 221824b038bf18ca43a38c82d18b0ae9586ba565
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Thu Oct 9 13:11:16 2014 -0600
+
+    document pyro current limits in an appendix
+
+commit ffda6989e856e66a1bea253e82cb70f51ada3e7a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Oct 5 00:07:10 2014 -0700
+
+    altos: Add prototype TeleDongle v1.9 code
+    
+    Lights up the hardware, sends carrier and RDF tones. A bit more cc1200
+    work to be done still.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 27a467d802a80a33ea20eb5cda2558d03caa2c00
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Oct 5 00:03:28 2014 -0700
+
+    altos: Copy cc1120 driver to cc1200 driver and hack a bit
+    
+    The cc1200 is similar to the cc1120, although many registers have
+    changed.
+    
+    This driver can send a bare carrier and an RDF tone, but does not yet
+    receive or transmit telemetry data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 62628c8b429d06ee834f0b6511c430cbeaab9303
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 4 00:30:54 2014 -0700
+
+    altos: Fix syntax error with ao_log_mega change.
+    
+    Missed a semi-colon.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 00ae706dab6e8fddef4c5730a17c433a022228b7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 4 00:11:13 2014 -0700
+
+    altoslib: Compute tilt angle from eeprom data
+    
+    This copies the computation of tilt angle from the firmware so that
+    post-flight analysis can also show the data.
+    
+    This change also renames all of the imu values to make them easier to
+    understand:
+    
+            accel   gyro    axis
+    
+            along   roll    length of the board
+            across  pitch   across the board
+            through yaw     through the board.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a757fd5af53f5721a949181372548afa4757d6c9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 4 00:10:03 2014 -0700
+
+    altosui: Update 'Imperial Units' checkbox when units change
+    
+    If you have two graphs running, make sure the imperial units
+    checkboxes agree.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 656d8fe17532ca6c7d1d43996f187df2f14f5395
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 4 00:07:39 2014 -0700
+
+    altoslib: Deal with new Mega log format that has 32-bit gyro cal
+    
+    This adds parsing for the new log format type to get all 32 bits of
+    the gyro calibration data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9521dc63671b69065d27fc1ccba6d20cc90643cb
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Oct 4 00:04:39 2014 -0700
+
+    altos: Record 32-bits for gyro calibration values
+    
+    The gyro ground calibration values are scaled by 512 to provide a bit
+    more precision for the computations. This means they don't fit in 16
+    bits, so change the format of the flight log record. Also change the
+    reported format so that AltosUI has a chance of figuring it out.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 95d9248da78f86240dbe77e2c206420dc509c9cf
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 29 12:57:27 2014 -0700
+
+    altosui: Check for map and stats table when changing units/fonts in graph
+    
+    AltosGraphUI wasn't making sure the map and stats tables were present
+    before attempting to adjust font size and units.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 40c5535b65a75374fb1dbbd994c29324db814f5b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 29 12:56:04 2014 -0700
+
+    altos: Handle antenna down in ao_flight_test
+    
+    Parse the Pad orientation config value and flip the accelerometer
+    value back around in antenna down configuration.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b97a125a9f8bd9619833647a9b6aa6329103e136
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 26 22:58:13 2014 -0700
+
+    ao-bringup: Auto-select programmer for teledongle turnon
+    
+    Bdale's programmer is SN 100, Keith's is SN 186. Use the username to
+    figure out which one to use.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b4eba3f3a58a9c35e3699ff14405b997c1318d91
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 26 22:53:39 2014 -0700
+
+    altos: Make sure we drop the SPI mutex when aborting cc1120 recv
+    
+    The cc1120 receive code is 'twisty', in that it acquires the SPI mutex
+    in the middle of an interrupt handler so that it can quickly start the
+    radio when the signal comes in. This means we have to be careful to
+    drop that mutex in all paths which leave the receive code, including
+    when the packet receive is aborted mid-way through the process.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 22661ba69b8919116092382f1f5aa0dc79d02cc9
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Sep 13 17:56:51 2014 -0600
+
+    store cal value correctly even when we didn't need to change it
+
+commit b0eb63205223e2982d0ded08503c3f128420270f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 13 15:59:18 2014 -0700
+
+    altosdroid: Update notebook to reflect current status
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9dc426756742fb967fdd21e1fcec54edeb4b12ac
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 13 15:52:56 2014 -0700
+
+    altosui: Bring up main window when doing --replay or --graph
+    
+    This shows the main window when replaying or graphing files so that
+    you can interact with that, changing the global configuration or doing
+    other stuff.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 75d5368cb2a95f3f7385952669a14765460f549d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 13 15:51:50 2014 -0700
+
+    altosui: Fix --replay to run in realtime after boost
+    
+    I added the ability to rapidly replay files for AltosDroid to recover
+    from a crash, but didn't change AltosUI to use realtime mode again.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 04b5cc37659b1b3d6b62f1ef17b17c0492434cba
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Sep 13 16:37:42 2014 -0600
+
+    reflect filename changes in LLC repo
+
+commit 93d1cedc94358ebf5c2af537a25a242f6c19954c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 13 15:23:40 2014 -0700
+
+    altosdroid: Automatically sign the released version if the key is available
+    
+    Look in ~/altusmetrumllc for release.keystore and Passphrase and
+    enable building and signing of the release binary.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2731486c12678a7d3bd7ec79e74a2fcaf20845bd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 13 13:38:31 2014 -0700
+
+    altosdroid: Update version code and name for 1.5
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e151c144fcdb1da96e715f29c049dc4869e1d53d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 13 13:00:58 2014 -0700
+
+    Mark master branch as past the 1.5 point
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit ff7c006e50515040d43399899fac26a3fe26d8a7
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Sep 13 12:31:08 2014 -0600
+
+    updated to reflect changes from 1.5 release
+
+commit 20d640ec504afbfdb69dba1b241d84af1e62abed
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 12 20:58:26 2014 -0700
+
+    ao-bringup: Improve igniter testing. Add TeleMega and TeleMetrum testing.
+    
+    The script lets you re-try each one when they fail, which is nice if
+    you're hand-holding the setup.
+    
+    The TeleMetrum and TeleMega tests are adapted from the EasyMega tests
+    and are hooked up to the turnon scripts.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e0077866138a1e29ede7181e39f04860b866543a
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 12 20:57:05 2014 -0700
+
+    ao-tools/ao-test-igniter: Remove bogus printf
+    
+    This must have been left over from testing; it prints "device (null)",
+    which isn't very useful.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6681d31929266fec9711b3d89a4f074cd2afcc6e
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 12 20:56:29 2014 -0700
+
+    ao-tools/ao-test-gps: Improve output formatting
+    
+    Add a newline before printing out the flags and sats at exit time
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f2d045570d2cda0abde67a68506cb3fc2e119ec3
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 12 17:22:37 2014 -0700
+
+    ao-bringup: Use C version of ao-test-gps in test-telegps
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d0e597789ac298b108ea04cc1a2c999bcf14bc9c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 12 17:22:03 2014 -0700
+
+    ao-tools: Add ao-test-gps program
+    
+    This waits for GPS to report lock
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit def036794f1460a5457e6b86350712c336e296d6
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 12 16:38:59 2014 -0700
+
+    ao-bringup: Use C version of test-flash for telegps
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1630a8e458f174d6df1aa30ff30e3f02a10bdbf7
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Sep 11 19:59:58 2014 -0700
+
+    altosui: Ignore built .desktop file
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 807e62ccebc83eb6427a63431d06effa074e5e76
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Sep 11 19:56:13 2014 -0700
+
+    altos: Make sure we don't beep out continuity twice in idle mode
+    
+    If the battery voltage report takes longer than the initialiation
+    sequence, we could get to the state reporting after the state had
+    switched from startup to idle. This would result in continuity being
+    reported the first time through the loop. Then, as the state had
+    already changed, we'd pass through the while test and go back to
+    report continuity a second time.
+    
+    Fixed by using the state remembered before beeping out the voltage to
+    decide whether to report the continuity.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d7ad490a33900a788b15d1600ebaa2a71e6f35ff
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Sep 11 15:57:21 2014 -0700
+
+    altos: Add smaller altitude table file to .gitignore
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7ad8921b164103629b246c25860297454aa7ec6b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Sep 11 15:56:14 2014 -0700
+
+    altos/test: Add TMv2 test program to .gitignore
+
+commit 0cedc27e22a9fbc9ccfe1b403c84d728bb23220d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Sep 11 15:00:25 2014 -0700
+
+    altos: Fix ability to disable telemetry by setting interval to 0
+    
+    For non-zero telemetry intervals, the radio code limits the value
+    based on the data rate. However, a zero interval means that telemetry
+    should be entirely disabled, so that value should be left alone when
+    checking.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 6dafd7bf947d892e430cd565eb92a3366abb3604
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Sep 11 14:23:29 2014 -0700
+
+    telegps: Was mis-configuring the 'Configure Device' dialog
+    
+    Make sure we show 'rate_label' instead of showing 'radio_enable_label'
+    twice.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 368c7d583380b4453f432d5a965a1e4c45a92f92
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Sep 11 14:14:07 2014 -0700
+
+    altoslib: Stop re-loading previous flight when starting telemetry monitoring
+    
+    This feature is necessary on AltosDroid because there's no other UI
+    for reloading an old flight. It's not useful on the desktop where you
+    really just want to see new telemetry; old telemetry is availbale
+    through the 'graph flight' or 'replay' mechanisms.
+    
+    AltosDroid uses a different class for reading telemetry data, so we
+    can just remove this feature from altoslib at this point.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2ee937b603b181bb24768eb4d0e2f918a5377fd3
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Wed Sep 10 01:29:56 2014 -0600
+
+    use dh_installmime, which requires telling configure to stay out of the way
+
+commit 22e68da2cb3b0b42708876f1dde52dbfd0ce4bf7
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Wed Sep 10 00:26:10 2014 -0600
+
+    another build dep
+
+commit 615b69b19557a9683eeb0475b30a053a35ca51ac
+Merge: a72b7683 03654934
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Wed Sep 10 01:30:37 2014 -0600
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 036549343416183f973d00a86d897d4a368c1d6f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Sep 10 00:03:53 2014 -0700
+
+    configure: Add --disable-install-shared-mime-info option
+    
+    This inhibits the installation of the shared mime info data file and
+    updating of the shared mime database. Necessary if you want to use a
+    distribution-specific shared mime installation hook, like dh_installmime
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 1992a1e3046a5414ce8d394e1cd8e5e6f6338d29
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Sep 9 23:43:10 2014 -0700
+
+    .desktop: Use %F instead of %f in .desktop files
+    
+    %F is a list of files, %f is a single file. All of our tools can
+    handle lists of files, so make the .desktop file reflect that.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a72b7683606d3e741043011c929482a0a168a5c9
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Tue Sep 9 23:44:45 2014 -0600
+
+    more build dependencies for processing icons
+
+commit 1fb200d18cc385230b3af574816ec354682cc5c9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Sep 9 23:00:14 2014 -0700
+
+    icons: Use DESTDIR when updating mime/icon caches
+    
+    This is done in install-data-hook and needs to explicitly use DESTDIR
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a8c799c48a52bf13466536db627b66bfe2a435cd
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Sep 9 09:38:03 2014 -0700
+
+    altoslib/altosuilib: clean all versions of the .jar file
+    
+    When we switch libary versions, we want to remove the old ones; just
+    have 'make clean' remove all versions of the libaries.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit cef3be371cb3a9e481c2bd6abdf22c51953773f1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Sep 9 09:37:13 2014 -0700
+
+    altoslib/altosuilib: Add EasyMega support
+    
+    This makes flashing find the right files, and Monitor Idle show all of
+    the state data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 08a82617c53718055d97df4fa60f3e5051d65383
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Sep 9 09:09:22 2014 -0700
+
+    altos/easymega: Set USB PID for EasyMega to 0x0028
+    
+    It was using 0x0023, which is for TeleMega. 0x0028 is what's listed in
+    usbvidpid.h.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 9d3ab4c78f79d659ce800def77bc441c95fa15be
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Sep 9 09:02:51 2014 -0700
+
+    altoslib: Fix idle monitor parsing of MMA655x state
+    
+    There's no ':' after 'MMA655X value' in the output, and the parser
+    returns 'true' on success, not false.
+    
+    With this, 'Monitor Idle' now reports correct accelerometer readings.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2b7ba0a5be70ae1d661afb2592ce8a6bf660c793
+Author: Keith Packard <keithp@keithp.com>
+Date:   Tue Sep 9 09:01:42 2014 -0700
+
+    Tag version 1.4.9.3
+    
+    This should be the final firmware version for 1.5
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 445d61c3810154193aebbf0f08f075ac8e107baf
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 6 22:56:25 2014 -0700
+
+    altosui: Include EasyMega firmware in fat release
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f0d2d34f84980ab45ecedae17546f4d71e020c5e
+Merge: 8c212cd5 6c812f10
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Sep 6 23:42:47 2014 -0600
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+
+commit 6c812f10761ec4ebf13e29ccef1d6c2c864f1158
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 6 22:28:13 2014 -0700
+
+    doc: Update for version 1.5 release
+    
+    Add stuff about EasyMega and telemetry rate configuration. Update
+    screen shots as needed.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit d83afa9320c24056469984873af0a3c70bee0962
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 6 20:44:30 2014 -0700
+
+    altos: Scale packet master receive delay by baud rate
+    
+    Increase the time we wait for return packets based on the remote
+    protocol baud rate.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit e7515e3a88d53c50dd9b962cc8f43ce5376ccd0b
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 6 20:43:32 2014 -0700
+
+    altoslib: Increase timeouts when using low baud rate remote protocol
+    
+    When using 2400 or 9600 baud remote link rates, we need to increase
+    the packet timeout from 500ms to much longer values to avoid annoying
+    the user with timeout warnings.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 46f08f8709c538f3fee8e166598f0bb930df6e3c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 6 20:41:58 2014 -0700
+
+    altoslib: Update local callsign/baud rate when using remote protocol
+    
+    We've had code to synchronously update the local and remote radio
+    frequencies when doing configuration over the remote link. This patch
+    adds the same code when changing the call sign and baud rate.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit f395bcaa620490954d4a42de9b4870bc12bedc91
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 6 20:39:37 2014 -0700
+
+    altos: Reduce deviation at 2400/9600 baud
+    
+    There's no reason to use 20.5kHz deviation at 2400 and 9600 baud, and
+    if we get a better receiver, we'll want to use narrower deviation to
+    have less bandwidth sucking noise into the radio. The new values are
+    (nominally) 5.125kHz deviation for 9600 baud and 1.5kHz deviation for
+    2400 baud.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 8c212cd5bfa03f71a31d84bd0051314e77d88461
+Merge: e9714e34 dd26ec2e
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Sep 6 13:41:36 2014 -0600
+
+    Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
+    
+    Conflicts:
+            ao-bringup/turnon_telemega
+
+commit e9714e34091abe657aa1b30aeda9466331aa39c1
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Sat Sep 6 13:40:59 2014 -0600
+
+    tweaking test scripts
+
+commit dd26ec2e706bdd29090759deeb90090a0e3b74f0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 6 00:39:41 2014 -0700
+
+    altosdroid: Mark completed items as 'done'
+    
+    Frequency display
+    Re-load data on restart
+    Auto re-connect to TBT at correct freq
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 18671803d078aa798b603c67b741c3ba4374f41d
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sat Sep 6 00:14:26 2014 -0700
+
+    altosdroid: Add imperial unit support
+    
+    Provides a menu entry to switch units, changes all value displays to
+    use the AltosLib units conversion code.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2b2ebd2fee46158abd1ae050cd6d1040ead849a0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 5 23:10:07 2014 -0700
+
+    altosdroid: Update tab contents before switching
+    
+    Make sure the new tab contents are updated before switching tabs so
+    that the user doesn't see old stuff.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 08bbb1c3de73c9aaf920b11247eae544df6eac0c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Sep 5 22:06:21 2014 -0700
+
+    altosdroid: Ignore TelemetryService messages after service shutdown
+    
+    Messages may get delivered after the service has been shut down;
+    ignore those.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 101ac21f05a69bdeb07d423aa18017eca04fc47f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Sep 4 11:28:40 2014 -0700
+
+    altosdroid: add new TelemetryState.java
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 2b03aca995b0151d7e820775f6a9d4afec462633
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Sep 3 22:59:09 2014 -0700
+
+    altosui: Don't mark altimeter dirty when opening pyro panel
+    
+    Skip setting the UI dirty when filling in the pyro firing time value.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit be38fb88d11bda1ba1caca38220773d3abcede19
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Sep 3 22:58:22 2014 -0700
+
+    altos: Allow negative values for pyro configuration data
+    
+    All of the integer pyro configuration parameters may be negative, so
+    parse that correctly.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 3842735e303f0bf6f46ed8cb659c92d8bb9bd137
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Sep 3 22:32:49 2014 -0700
+
+    altosdroid: Use single object to pass data to UI
+    
+    Instead of having separate messages for each piece of telemetry state,
+    package the whole mess up in one object and send it for any
+    change. This simplifies tracking within the UI by avoiding corner
+    cases during reconnect.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit adc46e2f1346d98ef4f6c2351fef95fbc8ddf831
+Author: Keith Packard <keithp@keithp.com>
+Date:   Wed Sep 3 22:12:15 2014 -0700
+
+    altos/telefire: Add firing length to manual pad command
+    
+    This adds an optional length of time (in 1/10s of a second) to the
+    ao_pad_manual function to enable testing of igniters without needing
+    to use TeleLCO.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b838a974d0dad43ff02060d8d913d9369eb20e96
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 1 18:25:00 2014 -0500
+
+    altosui: Fix 'pad' screen for TeleGPS
+    
+    Don't report pad position for TeleGPS
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 7735cee871d02215517cb9d91cd552f003ca6a50
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 1 18:23:42 2014 -0500
+
+    altoslib: Catch a couple null pointers in AltosConfigTD
+    
+    When messing with TD, I hit a couple of paths that could try to
+    dereference null pointers. Check for those.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 57f0ae384f3c206ea777dc7c93b594ae3901f354
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 1 18:21:49 2014 -0500
+
+    altoslib: Ignore extra AO_LOG_FLIGHT records from TeleGPS
+    
+    TeleGPS was inserting a spurious AO_LOG_FLIGHT record each time it
+    turned on, which confused altoslib quite a bit.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a4202b4180e77e2a39ca071d3b8b8256ff0fc7b5
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Sep 1 18:12:29 2014 -0500
+
+    altos: Don't add AO_LOG_FLIGHT to existing GPS logs
+    
+    When appending to a TeleGPS log, don't stick another flight value into
+    the log. That just confuses the ground station software.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit aa7dd289ee72f7a49a08ce0229c4e0e0404499d0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Aug 31 00:28:15 2014 -0500
+
+    altosdroid: reload previous log file at connect time
+    
+    Use the saved logfile to re-load the previous state at startup time.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 00a3eace5ea885205270137f190538b010fd679f
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Aug 31 00:27:54 2014 -0500
+
+    altosdroid: Add missing preferences backend file
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit a5e348905a510bb2dcf6d7734f5681fb8338cd87
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Aug 31 00:11:28 2014 -0500
+
+    altoslib: create logfiles preference object. check link in existing_data
+    
+    The logfiles preference hash wasn't getting created, resulting in
+    crashes.
+    
+    When there was no link, don't try to load existing data.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit bc3fbcb35090be3856284ccf4d908ebf39d02bec
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Aug 31 00:08:33 2014 -0500
+
+    altosdroid: Add quit. Restart. Show freq in title.
+    
+    Add a quit button to menu.
+    When restarting, reconnect to previous device.
+    When connecting, set the freq/rate to previous values.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0b70ea04e807c69a987d5976ab217f9f65fb1e09
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Aug 29 22:33:36 2014 -0500
+
+    altosdroid: fixup fetching active device address
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 0014addf3356bad1eff76cffc396fb120308646c
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Aug 29 22:08:43 2014 -0500
+
+    altoslib: TeleMega telemetry pyro voltages are uint8
+    
+    Using int8 means that voltages over about 6V are reported incorrectly.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 810f9a4f79b0480973d84595140d3f8948ce26d9
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Aug 29 15:22:43 2014 -0500
+
+    altosdroid: start restoring from log data on startup
+    
+    Remember which flight was last being received and reload that file
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5872bd10df14b47de0e541bff16d9220af0558aa
+Author: Keith Packard <keithp@keithp.com>
+Date:   Fri Aug 29 15:12:38 2014 -0500
+
+    altos: Make sure pyro remains valid during delay
+    
+    Keep checking pyro status while waiting for delay to expire to make
+    sure nothing changes. Disable pyro channel if something does.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 54994d02a5ca5bb91512f31748a48a0140d3a640
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Aug 28 19:52:30 2014 -0700
+
+    ao-bringup: Test EasyMega boards
+
+commit 3c9cb4836edd4811fcdbb6ebbd25eb507a2ef5b1
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Aug 18 10:57:26 2014 -0700
+
+    ao-bringup: Use ao-cal-accel instead of cal-accel in turnon scripts
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit fac03ae9762f2af95b1ce5d99894173f9d9146f0
+Author: Keith Packard <keithp@keithp.com>
+Date:   Mon Aug 18 10:53:04 2014 -0700
+
+    Add ao-tools/ao-cal-accel
+    
+    This C version may be more reliable than the nickle version
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit b357544dd64f5b0f209c6cc6cb4fa392a2c3e1fa
+Author: Bdale Garbee <bdale@gag.com>
+Date:   Mon Aug 18 11:25:32 2014 -0600
+
+    turn echo back on after accel cal in turnon_telemetrum so rest is easier
+
+commit 44e389c31e5958c1a050fbe0dce5d7971a9d6a86
+Author: Keith Packard <keithp@keithp.com>
+Date:   Sun Aug 17 21:03:12 2014 -0700
+
+    altos: Add telerepeat-v1.0
+    
+    This uses TeleBT hardware to provide a telemetry repeater, receiving
+    packets on one frequency and re-transmitting them on another.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+
+commit 5a51efd7f9b49ffadc91ccaf7a0d69566301c009
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Jun 26 16:29:37 2014 -0700
+
+    altosui: Make Windows&n